Reviewed by Geoff.
[WebKit-https.git] / WebCore / ChangeLog
1 2006-12-04  Beth Dakin  <bdakin@apple.com>
2
3         Reviewed by Geoff.
4
5         With the new changes to ContextMenuItems, WebCore context menus 
6         stopped appearing at all. And then when I got them to appear, they 
7         crashed. This fixes both of these problems.
8
9         * platform/mac/ContextMenuItemMac.mm:
10         (WebCore::ContextMenuItem::ContextMenuItem): keyEquivalent cannot 
11         be nil. This was causing Obj-C to throw an exception preventing the 
12         menus from popping up at all. 
13         * platform/mac/ContextMenuMac.mm:
14         (+[WebCoreMenuTarget sharedMenuTarget]): Re-name our static 
15         MenuTarget so that it is more clear that it is a static and shared 
16         WebCoreMenuTarget.
17         (WebCore::ContextMenu::ContextMenu): Initialize the 
18         WebCoreMenuTarget's controller in the ContextMenu constructor 
19         instead of in getNSMenuItem since the controller will only possibly 
20         change when a new ContextMenu has been created.
21         (WebCore::ContextMenu::~ContextMenu): Set the target's controller 
22         to 0.
23         (WebCore::getNSMenuItem): A lot of this work is being done other 
24         places now. Call new class method on WebCoreMenuTarget to get the 
25         shared target.
26         (WebCore::ContextMenu::appendItem): We should not be releasing the 
27         menuItem here! This caused the crashes I saw.
28         (WebCore::ContextMenu::insertItem): Same.
29
30 2006-12-04  Anders Carlsson  <acarlsson@apple.com>
31
32         Fix the build.
33         
34         * loader/mac/SubresourceLoaderMac.mm:
35         (WebCore::SubresourceLoader::~SubresourceLoader):
36         Add back the destructor.
37
38 2006-12-04  Anders Carlsson  <acarlsson@apple.com>
39
40         Reviewed by Darin.
41         
42         Change all ResourceHandleClients to be SubresourceLoaderClients instead. Also,
43         make SubresourceLoader a ResourceHandleClient. This is a first step towards turning ResourceHandle into a 
44         standalone class which doesn't need to know about SubresourceLoader.
45
46         * WebCore.xcodeproj/project.pbxproj:
47         * loader/ResourceLoader.cpp:
48         (WebCore::ResourceLoader::~ResourceLoader):
49         (WebCore::ResourceLoader::ResourceLoader):
50         (WebCore::ResourceLoader::setDefersLoading):
51         * loader/SubresourceLoader.cpp:
52         (WebCore::SubresourceLoader::SubresourceLoader):
53         (WebCore::SubresourceLoader::~SubresourceLoader):
54         (WebCore::SubresourceLoader::create):
55         (WebCore::SubresourceLoader::willSendRequest):
56         (WebCore::SubresourceLoader::didReceiveResponse):
57         (WebCore::SubresourceLoader::didReceiveData):
58         (WebCore::SubresourceLoader::didFinishLoading):
59         (WebCore::SubresourceLoader::didFailWithError):
60         (WebCore::SubresourceLoader::receivedAllData):
61         * loader/SubresourceLoader.h:
62         (WebCore::SubresourceLoader::loaderAsResourceHandleClient):
63         (WebCore::SubresourceLoader::handle):
64         * loader/SubresourceLoaderClient.h: Added.
65         (WebCore::SubresourceLoaderClient::~SubresourceLoaderClient):
66         (WebCore::SubresourceLoaderClient::willSendRequest):
67         (WebCore::SubresourceLoaderClient::didReceiveResponse):
68         (WebCore::SubresourceLoaderClient::didReceiveData):
69         (WebCore::SubresourceLoaderClient::didFinishLoading):
70         (WebCore::SubresourceLoaderClient::didFailWithError):
71         (WebCore::SubresourceLoaderClient::receivedAllData):
72         * loader/icon/IconLoader.cpp:
73         (WebCore::IconLoader::startLoading):
74         (WebCore::IconLoader::stopLoading):
75         (WebCore::IconLoader::didReceiveResponse):
76         (WebCore::IconLoader::didReceiveData):
77         (WebCore::IconLoader::didFailWithError):
78         (WebCore::IconLoader::didFinishLoading):
79         (WebCore::IconLoader::clearLoadingState):
80         * loader/icon/IconLoader.h:
81         * loader/loader.cpp:
82         (WebCore::Loader::servePendingRequests):
83         (WebCore::Loader::receivedAllData):
84         (WebCore::Loader::didFailWithError):
85         (WebCore::Loader::didReceiveResponse):
86         (WebCore::Loader::didReceiveData):
87         (WebCore::Loader::cancelRequests):
88         * loader/loader.h:
89         * loader/mac/SubresourceLoaderMac.mm:
90         (WebCore::SubresourceLoader::SubresourceLoader):
91         (WebCore::SubresourceLoader::create):
92         (WebCore::SubresourceLoader::willSendRequest):
93         (WebCore::SubresourceLoader::didReceiveResponse):
94         (WebCore::SubresourceLoader::didReceiveData):
95         (WebCore::SubresourceLoader::didFinishLoading):
96         (WebCore::SubresourceLoader::didFail):
97         (WebCore::SubresourceLoader::didCancel):
98         * platform/network/ResourceHandle.cpp:
99         (WebCore::ResourceHandle::ResourceHandle):
100         (WebCore::ResourceHandle::create):
101         * platform/network/ResourceHandle.h:
102         * platform/network/ResourceHandleClient.h:
103         * platform/network/ResourceHandleInternal.h:
104         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
105         * platform/network/mac/ResourceHandleMac.mm:
106         (WebCore::ResourceHandle::start):
107         (WebCore::ResourceHandle::finishJobAndHandle):
108         (WebCore::ResourceHandle::loader):
109         * xml/xmlhttprequest.cpp:
110         (WebCore::XMLHttpRequest::send):
111         (WebCore::XMLHttpRequest::didFailWithError):
112         (WebCore::XMLHttpRequest::didFinishLoading):
113         (WebCore::XMLHttpRequest::willSendRequest):
114         (WebCore::XMLHttpRequest::didReceiveResponse):
115         (WebCore::XMLHttpRequest::didReceiveData):
116         * xml/xmlhttprequest.h:
117
118 2006-12-04  Darin Adler  <darin@apple.com>
119
120         Reviewed by Adele.
121
122         - fix another part of http://bugs.webkit.org/show_bug.cgi?id=11628
123           REGRESSION (r17597): Command-return in text fields doesn't open a new tab or window
124
125         This fixes command-return when the focus is on a link.
126         Despite the title of the bug, Mitz wanted me to fix both, and I will not
127         say no to him!
128
129         Test: fast/events/simulated-key-state.html
130
131         * dom/EventTargetNode.cpp:
132         (WebCore::EventTargetNode::dispatchSimulatedMouseEvent): Instead of always passing
133         false for all the key state in simulated mouse events, pass the state from the
134         first underlying event in the chain that has key state; in the case in the bug,
135         the keyboard event will be the underlying event itself and we'll propagate the
136         alt key modifier to the mouse event, resulting in the effect we want. It's nice
137         that JavaScript also gets to see the proper modifiers in the mouse event.
138
139         * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler):
140         Added code to pass in an underlying event to dispatchSimulatedClick. After looking
141         at all the other callers, this seems to be the only one that needs to pass an
142         event that is currently passing 0. Also removed the code that only simulated a
143         click when the event has a PlatformKeyboardEvent -- no reason for that and it
144         prevented me from writing a layout test for the fix. 
145
146         * dom/UIEventWithKeyState.h: Added findEventWithKeyState function that walks the
147         underlyingEvent chain to find the first event that has key state. This already
148         existed in WebKit, but I wanted to use it in dispatchSimulatedMouseEvent.
149         * dom/UIEventWithKeyState.cpp: Added.
150
151         * CMakeLists.txt: Added UIEventWithKeyState.cpp.
152         * WebCore.vcproj/WebCore/WebCore.vcproj: Added UIEventWithKeyState.cpp.
153         * WebCore.xcodeproj/project.pbxproj: Added UIEventWithKeyState.cpp.
154         * WebCoreSources.bkl: Added UIEventWithKeyState.cpp.
155
156         * WebCore.exp: Added findEventWithKeyState, used by WebKit.
157
158 2006-12-04  Kevin McCullough  <KMcCullough@apple.com>
159
160         Reviewed by Darin.
161
162         - removed the guards for the "multiple forms submission" issue, which may not be
163           an issue anymore and the guards prevent perfectly legitimate websites from
164           working correctly.
165
166         * bridge/mac/FrameMac.mm:
167         (WebCore::FrameMac::setView):
168         * bridge/mac/WebCoreAXObject.mm:
169         (-[WebCoreAXObject accessibilityPerformAction:]):
170         * bridge/win/FrameWin.cpp:
171         (WebCore::FrameWin::keyPress):
172         * config.h:
173         * loader/FrameLoader.cpp:
174         (WebCore::FrameLoader::submitForm):
175         * loader/FrameLoader.h:
176         * loader/mac/FrameLoaderMac.mm:
177         (WebCore::FrameLoader::receivedMainResourceError):
178         * loader/qt/FrameLoaderQt.cpp:
179         (WebCore::FrameLoader::submitForm):
180         * page/Frame.cpp:
181         (WebCore::Frame::setView):
182         * page/mac/EventHandlerMac.mm:
183         (WebCore::EventHandler::keyEvent):
184         (WebCore::EventHandler::mouseDown):
185         * platform/qt/FrameQt.cpp:
186         (WebCore::FrameQt::keyEvent):
187
188 2006-12-02  Geoffrey Garen  <ggaren@apple.com>
189
190         Reviewed by Darin Adler.
191         
192         Added support for Dashboard backward compatibility mode.
193         
194         * html/CanvasRenderingContext2D.cpp:
195         (WebCore::CanvasRenderingContext2D::stroke): Added support for old behavior
196         of automatically clearing the stroke path buffer after a call to stroke().
197         * html/HTMLCanvasElement.cpp: Added supoprt for old behavior of the canvas
198         tag being self-closing.
199         (WebCore::HTMLCanvasElement::endTagRequirement):
200         (WebCore::HTMLCanvasElement::tagPriority):
201         * html/HTMLCanvasElement.h:
202         * html/HTMLParser.cpp: Ditto.
203         (WebCore::HTMLParser::canvasCreateErrorCheck):
204         * xml/xmlhttprequest.cpp: Added support for old behavior of silently ignoring
205         a call to setRequestHeader() if it preceded a call to open() or followed a call
206         to send().
207         (WebCore::XMLHttpRequest::setRequestHeader):
208
209 2006-12-04  Darin Adler  <darin@apple.com>
210
211         Reviewed by Alice.
212
213         * bridge/EditorClient.h: Removed "_web_" prefix from
214         C++ userVisibleString member function. Alice will probably change
215         this so it's not on the editor client any more later.
216
217         * editing/Editor.h: Removed "_web_" prefix from
218         C++ userVisibleString member function.
219         * editing/Editor.cpp: Tweaked formatting a bit. Removed Mac-specific
220         code from this file.
221
222         * editing/mac/EditorMac.mm:
223         (WebCore::Editor::newGeneralClipboard): Removed unnneded local variable.
224         (WebCore::Editor::userVisibleString): Moved this function here.
225
226         * platform/Pasteboard.h: Added some FIXMEs. Removed unneeded includes.
227         Made Pasteboard noncopyable. Removed use of "protected" where we should
228         be using "private". Removed s_generalPasteboard.
229         * platform/mac/PasteboardMac.mm: Added some FIXMEs. Removed the
230         s_generalPasteboard global. Removed the unused destructor. Updated call
231         to userVisibleString for name change. Tweaked formatting.
232
233 2006-12-04  Alice Liu  <alice.liu@apple.com>
234
235         Reviewed by Oliver.
236
237         Moved some constants from EventHandlerMac.mm to EventHandler.cpp
238         Added some platform-specific data members and functions.
239
240         * page/EventHandler.cpp:
241         * page/EventHandler.h:
242         * page/mac/EventHandlerMac.mm:
243         * platform/PlatformMouseEvent.h:
244         (WebCore::):
245         (WebCore::PlatformMouseEvent::timestamp):
246         (WebCore::PlatformMouseEvent::activatedWebView):
247         (WebCore::PlatformMouseEvent::type):
248
249 2006-12-04  Anders Carlsson  <acarlsson@apple.com>
250
251         Reviewed by Darin, Geoff.
252
253         Get rid of ResourceHandle::kill(), all it did was to balance out a ref() in ResourceHandle::start().
254         We use RefPtrs to ResourceHandle instead.
255
256         * loader/icon/IconLoader.cpp:
257         (WebCore::IconLoader::~IconLoader):
258         (WebCore::IconLoader::stopLoading):
259         (WebCore::IconLoader::didReceiveResponse):
260         * loader/loader.cpp:
261         (WebCore::Loader::servePendingRequests):
262         (WebCore::Loader::cancelRequests):
263         (WebCore::Loader::jobForRequest):
264         * loader/loader.h:
265         * platform/network/ResourceHandle.cpp:
266         * platform/network/ResourceHandle.h:
267         * platform/network/mac/ResourceHandleMac.mm:
268         (WebCore::ResourceHandle::start):
269         (WebCore::ResourceHandle::finishJobAndHandle):
270         (WebCore::ResourceHandle::reportError):
271         * xml/xmlhttprequest.cpp:
272         (WebCore::XMLHttpRequest::abort):
273         (WebCore::XMLHttpRequest::didFinishLoading):
274
275 2006-12-04  Oliver Hunt  <oliver@apple.com>
276
277         Build fix for non-SVG builds
278
279         * bindings/js/JSSVGPoint.cpp:
280         (WebCore::JSSVGPointProtoFunc::callAsFunction):
281
282 2006-12-04  Darin Adler  <darin@apple.com>
283
284         Reviewed by Beth.
285
286         - fix http://bugs.webkit.org/show_bug.cgi?id=11632
287           AKA <rdar://problem/4858866> REGRESSION (r17770): Overflow areas' scrollbars don't work
288
289         No test case added at the moment, but Beth said she'd investigate
290         adding one after the fact.
291
292         * page/mac/EventHandlerMac.mm:
293         (WebCore::EventHandler::passMousePressEventToScrollbar):
294         Fix obvious-in-retrospect copy and paste error -- call
295         passMouseDownEventToWidget instead of passWheelEventToWidget.
296
297 2006-12-04  Don Gibson  <dgibson77@gmail.com>
298
299         Reviewed and landed by Alexey.
300
301         http://bugs.webkit.org/show_bug.cgi?id=11738:
302         Make link clicking work again on Windows.
303
304         This re-implements a few functions that used to be part of FrameWin in
305         their new loader-based locations, and copies a few things from the Mac
306         and Qt event handling code that aren't strictly necessary but are
307         pretty simple.
308
309         * WebCore.vcproj/WebCore/WebCore.vcproj:
310         * bridge/win/ChromeClientWin.h:
311         * bridge/win/ContextMenuClientWin.h:
312         * bridge/win/EditorClientWin.h:
313         * bridge/win/FrameWin.cpp:
314         (WebCore::FrameWin::client):
315         * bridge/win/FrameWin.h:
316         * loader/win/DocumentLoaderWin.cpp: Added.
317         (WebCore::DocumentLoader::setTitle):
318         * loader/win/FrameLoaderClientWin.cpp: Added.
319         (WebCore::FrameLoaderClientWin::userAgent):
320         * loader/win/FrameLoaderClientWin.h:
321         * loader/win/FrameLoaderWin.cpp: Added.
322         (WebCore::FrameLoader::urlSelected):
323         (WebCore::FrameLoader::submitForm):
324         (WebCore::FrameLoader::setTitle):
325         * page/win/EventHandlerWin.cpp: Added.
326         (WebCore::EventHandler::passMousePressEventToSubframe):
327         (WebCore::EventHandler::passMouseMoveEventToSubframe):
328         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
329         (WebCore::EventHandler::passWheelEventToSubframe):
330         (WebCore::EventHandler::passMousePressEventToScrollbar):
331         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
332         * platform/win/TemporaryLinkStubs.cpp:
333         (WebCore::EventHandler::tabsToLinks):
334         (WebCore::EventHandler::tabsToAllControls):
335         (WebCore::EventHandler::lastEventIsMouseUp):
336         (WebCore::EventHandler::passSubframeEventToSubframe):
337         (WebCore::EventHandler::passMouseDownEventToWidget):
338         (WebCore::EventHandler::passWheelEventToWidget):
339         (WebCore::FrameLoader::getHistoryLength):
340         (WebCore::FrameLoader::historyURL):
341         (WebCore::FrameLoader::createFrame):
342         (WebCore::FrameLoaderClientWin::setTitle):
343
344 2006-12-04  Don Gibson  <dgibson77@gmail.com>
345
346         Reviewed by Mitz.
347
348         http://bugs.webkit.org/show_bug.cgi?id=11748:
349         Windows build bustage.
350
351         * WebCore.vcproj/WebCore/WebCore.vcproj:
352         * platform/ContextMenuItem.h:
353         * platform/win/TemporaryLinkStubs.cpp:
354         (WebCore::ContextMenuItem::ContextMenuItem):
355         (WebCore::ContextMenuItem::platformDescription):
356         (WebCore::ContextMenuItem::action):
357         (WebCore::ContextMenuItem::setAction):
358         (WebCore::ContextMenuItem::title):
359         (WebCore::ContextMenuItem::setTitle):
360         (WebCore::ContextMenuItem::platformSubMenu):
361         (WebCore::ContextMenuItem::setSubMenu):
362
363 2006-12-04  John Sullivan  <sullivan@apple.com>
364
365         Reviewed by Anders
366
367         Moved EditorMac.mm to its appropriate location
368
369         * platform/mac/EditorMac.mm: Removed.
370         * editing/mac/EditorMac.mm: Added
371
372         * WebCore.xcodeproj/project.pbxproj:
373         updated for this change
374
375 2006-12-04  Rob Buis  <buis@kde.org>
376
377         Reviewed by dhyatt.
378
379         Patch by pmax.
380
381         http://bugs.webkit.org/show_bug.cgi?id=3280
382         With LEGEND element, align=right value is not supported
383         http://bugs.webkit.org/show_bug.cgi?id=11544
384         <legend> rendering doesn't take align into account
385
386         Allow aligning for legends in both RTL and LTR mode.
387
388         * rendering/RenderFieldset.cpp:
389         (WebCore::RenderFieldset::layoutLegend):
390
391 2006-12-03  Mark Rowe  <bdash@webkit.org>
392
393         Reviewed by Alexey.
394
395         http://bugs.webkit.org/show_bug.cgi?id=11730
396         Bug 11730: Meta HTTP Refresh that contains a fraction / decimal get ignored.
397
398         * dom/Document.cpp:
399         (WebCore::Document::processHttpEquiv): Parse the refresh interval as a double rather than an integer.
400
401 2006-12-03  Nikolas Zimmermann  <zimmermann@kde.org>
402
403         Reviewed by Oliver.
404
405         Fix following bugs:
406         http://bugs.webkit.org/show_bug.cgi?id=11734
407         http://bugs.webkit.org/show_bug.cgi?id=11685
408
409         SVGPoint/SVGRect/SVGNumber were missing put() support.
410         SVGPoint.matrixTransform() was missing.
411
412         In SVG DOM there are no cases where a readwrite property
413         exists of type SVGRect/SVGNumber/SVGPoint. Only function
414         calls returns instances of these objects. It would make
415         no sense to be able to write "someObj.getBbox().x = 100", and
416         modify the actual stored internal value of "someObj".
417
418         The only cases where these modification makes sense, is
419         when these SVGPoint/SVGRect/SVGNumber objects are created
420         via document.rootElement.createSVGPoint/Rect/Number (SVGSVGElement interface).
421
422         Result: The current implementation, where we just modify the stored FloatPoint/FloatRect/double
423         values in the JSSVGPoint/Rect/Number wrappers directly, is sufficient.
424
425         Patch created by Rob & me - co production.
426         Long live the great carto.next examples! :-)
427
428         * CMakeLists.txt:
429         * DerivedSources.make:
430         * bindings/js/JSSVGNumber.cpp:
431         (WebCore::):
432         (WebCore::JSSVGNumber::getOwnPropertySlot):
433         (WebCore::JSSVGNumber::getValueProperty):
434         (WebCore::JSSVGNumber::put):
435         (WebCore::JSSVGNumber::putValueProperty):
436         * bindings/js/JSSVGNumber.h:
437         (WebCore::JSSVGNumber::):
438         (WebCore::JSSVGNumber::impl):
439         * bindings/js/JSSVGPoint.cpp:
440         (WebCore::JSSVGPoint::JSSVGPoint):
441         (WebCore::JSSVGPoint::put):
442         (WebCore::JSSVGPoint::putValueProperty):
443         (WebCore::JSSVGPointProtoFunc::callAsFunction):
444         * bindings/js/JSSVGPoint.h:
445         (WebCore::JSSVGPoint::):
446         * bindings/js/JSSVGRect.cpp:
447         (WebCore::JSSVGRect::put):
448         (WebCore::JSSVGRect::putValueProperty):
449         * bindings/js/JSSVGRect.h:
450         * bindings/objc/DOMSVGPoint.mm:
451         (-[DOMSVGPoint matrixTransform:]):
452         * platform/graphics/FloatPoint.cpp:
453         (WebCore::FloatPoint::matrixTransform):
454         * platform/graphics/FloatPoint.h:
455
456 2006-12-03  Nikolas Zimmermann  <zimmermann@kde.org>
457
458         Reviewed by Dave.
459
460         Another missing piece in the platform/graphics move.
461
462         * WebCore.xcodeproj/project.pbxproj:
463         * platform/ImageAnimationObserver.h: Moved to platform/graphics.
464
465 2006-12-03  Rob Buis  <buis@kde.org>
466
467         Reviewed by Oliver.
468
469         http://bugs.webkit.org/show_bug.cgi?id=11667
470         SVG: method .getTransformToElement(elt) in SVGLocatable not implemented
471
472         Implement getTransformToElement functionality. Introduce virtual
473         baseclass SVGLocatable to allow one implementation of the functionality.
474         Finally cleanup some code.
475
476         * ksvg2/svg/SVGLocatable.cpp:
477         (WebCore::SVGLocatable::getTransformToElement):
478         * ksvg2/svg/SVGLocatable.h:
479         * ksvg2/svg/SVGStyledLocatableElement.cpp:
480         (WebCore::SVGStyledLocatableElement::SVGStyledLocatableElement):
481         (WebCore::SVGStyledLocatableElement::nearestViewportElement):
482         (WebCore::SVGStyledLocatableElement::farthestViewportElement):
483         (WebCore::SVGStyledLocatableElement::getCTM):
484         (WebCore::SVGStyledLocatableElement::getScreenCTM):
485         * ksvg2/svg/SVGStyledLocatableElement.h:
486         * ksvg2/svg/SVGStyledTransformableElement.cpp:
487         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
488         (WebCore::SVGStyledTransformableElement::localMatrix):
489         (WebCore::SVGStyledTransformableElement::getCTM):
490         (WebCore::SVGStyledTransformableElement::getScreenCTM):
491         (WebCore::SVGStyledTransformableElement::updateLocalTransform):
492         (WebCore::SVGStyledTransformableElement::parseMappedAttribute):
493         (WebCore::SVGStyledTransformableElement::nearestViewportElement):
494         (WebCore::SVGStyledTransformableElement::farthestViewportElement):
495         * ksvg2/svg/SVGStyledTransformableElement.h:
496         * ksvg2/svg/SVGTextElement.h:
497         * ksvg2/svg/SVGTransformable.h:
498
499 2006-12-03  Nikolas Zimmermann  <zimmermann@kde.org>
500
501         Reviewed by Rob.
502
503         Move some files around, which have been forgotton in the platform/graphics move.
504
505         * CMakeLists.txt:
506         * WebCore.xcodeproj/project.pbxproj:
507         * platform/mac/GraphicsContextMac.mm: Moved to platform/graphics/mac.
508         * platform/qt/GraphicsContextQt.cpp: Moved to platform/grahpics/qt.
509
510 2006-12-03  Nikolas Zimmermann  <zimmermann@kde.org>
511
512         Reviewed by Mitz.
513
514         Fix non-svg build.
515
516         * platform/graphics/GraphicsContext.h:
517         * platform/mac/GraphicsContextMac.mm:
518
519 2006-12-02  John Sullivan  <sullivan@apple.com>
520
521         Reviewed by Tim Omernick
522
523         Removed a couple of big chunks of duplicated code from the spelling and grammar stuff by merging
524         the find-next-instance functions with the mark-all-instances functions.
525
526         * bridge/mac/FrameMac.mm:
527         (WebCore::findFirstMisspellingInRange):
528         added markAll parameter, and reworked loop so that if markAll parameter is true, this function loops
529         through the entire range and marks each misspelling
530         (WebCore::findFirstGrammarDetailInRange):
531         extracted from findFirstBadGrammarInRange; loops through the potentially-multiple details in a given
532         ungrammatical phrase (e.g., multiple grammar errors in one sentence). Has a markAll parameter akin
533         to the one in findFirstMisspellingInRange.
534         (WebCore::findFirstBadGrammarInRange):
535         added markAll parameter like the one in findFirstMisspellingInRange, and extracted findFirstGrammarDetailInRange
536         (WebCore::FrameMac::advanceToNextMisspelling):
537         pass "false" for new markAll parameters
538         (WebCore::markAllMisspellingsInRange):
539         now just calls findFirstMisspellingInRange with markAll = true, thus removing a big hunk of duplicated code
540         (WebCore::markAllBadGrammarInRange):
541         now just calls findFirstBadGrammarInRange with markAll = true, thus removing a big hunk of duplicated code
542
543 2006-12-02  Mitz Pettel  <mitz@webkit.org>
544
545         Reviewed by Hyatt.
546
547         - fix http://bugs.webkit.org/show_bug.cgi?id=11672
548           REGRESSION (r17068): Repro crash due to painting without layout
549
550         Test: fast/dynamic/containing-block-change.html
551
552         * rendering/RenderObject.cpp:
553         (WebCore::RenderObject::setStyle): Changed the logic used
554         to find absolutely positioned descendant's current containing block to
555         match the changes made to containingBlock() in the fix for bug 9347.
556
557 2006-12-02  MorganL  <morganl.webkit@yahoo.com>
558
559         Reviewed by Darin.
560
561         http://bugs.webkit.org/show_bug.cgi?id=11709
562         DeprecatedString::format is broken on Windows
563
564         Use _vscprintf on Windows to compute the length of the buffer that
565         vsnprintf would need.
566
567         * platform/DeprecatedString.cpp:
568         (WebCore::DeprecatedString::format):
569         * platform/String.cpp:
570         (WebCore::String::format):
571
572 2006-12-01  Beth Dakin  <bdakin@apple.com>
573
574         Reviewed by Adam.
575
576         Support for sub-menus in WebCore context menus. This also re-
577         architects the ContextMenuItem class so that it is more like
578         ContextMenu in that the class is now really just a wrapper for the
579         platformDescription
580
581         * WebCore.exp:
582         * WebCore.xcodeproj/project.pbxproj:
583         * page/ContextMenuController.cpp:
584         (WebCore::ContextMenuController::contextMenuItemSelected): Add
585         place-holders for new tags for the sub-menu items. I will flesh
586         these out in a separate check-in.
587         * platform/ContextMenu.cpp:
588         (WebCore::createFontSubMenu):
589         (WebCore::createSpellingAndGrammarSubMenu):
590         (WebCore::createSpellingSubMenu):
591         (WebCore::createSpeechSubMenu):
592         (WebCore::createWritingDirectionSubMenu):
593         (WebCore::ContextMenu::populate): Call the above functions to add
594         the appropriate sub-menus to editing context menus.
595         * platform/ContextMenu.h:
596         * platform/ContextMenuItem.h:
597         (WebCore::): New tags in the ContextMenuAction enumeration.
598         (WebCore::ContextMenuItem::parentMenu):
599         (WebCore::ContextMenuItem::setType):
600         * platform/PlatformMenuDescription.h: Added. This defines
601         PlatformMenuDesciption. It needs to be its own header because we
602        have to include it from ContextMenu.h and ContextMenuItem.h
603         * platform/mac/ContextMenuItemMac.mm: Lots of adjustments here to
604         make this class basically just be a wrapper for NSMenuItem.
605         (WebCore::ContextMenuItem::ContextMenuItem):
606         (WebCore::ContextMenuItem::~ContextMenuItem):
607         (WebCore::ContextMenuItem::platformDescription):
608         (WebCore::ContextMenuItem::action):
609         (WebCore::ContextMenuItem::title):
610         (WebCore::ContextMenuItem::platformSubMenu):
611         (WebCore::ContextMenuItem::setAction):
612         (WebCore::ContextMenuItem::setTitle):
613         (WebCore::ContextMenuItem::setSubMenu):
614         * platform/mac/ContextMenuMac.mm:
615         (WebCore::ContextMenu::ContextMenu):
616         (WebCore::getNSMenuItem): Now we only have to get the
617         platformDescription of the ContextMenuItem and then set its target
618         and action.
619         (WebCore::ContextMenu::itemCount):
620
621 2006-12-01  Kevin McCullough  <KMcCullough@apple.com>
622
623         Reviewed by .
624
625         - accidentally checked in with previous checkin
626
627         * platform/qt/FrameQt.cpp:
628         (WebCore::FrameQt::keyEvent):
629
630 2006-12-01  Kevin McCullough  <KMcCullough@apple.com>
631
632         Reviewed by Adam.
633
634         - better solution to the ambiguous reference
635
636         * platform/Widget.h:
637         (WebCore::Widget::handleMouseMoveEvent):
638         (WebCore::Widget::handleMouseReleaseEvent):
639         * platform/qt/FrameQt.cpp:
640         (WebCore::FrameQt::keyEvent):
641         * platform/win/PlatformScrollBar.h:
642         * platform/win/TemporaryLinkStubs.cpp:
643         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
644         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
645
646 2006-12-01  Justin Garcia  <justin.garcia@apple.com>
647
648         Reviewed by john
649         
650         <rdar://problem/4826940>
651         Selection change performed even when delete delegate replies NO (11415)
652
653         No layout test for the bug fix, because there's no way to register a custom
654         editing delegate from a layout test.  Layout tests are effected by the change
655         to avoid sending unnecessary shouldChangeSelections, however. 
656
657         * editing/Editor.cpp:
658         (WebCore::Editor::appliedEditing): Don't bother sending shouldChangeSelection
659         if the editing operation didn't change the selection.  Still call
660         setSelection though, because it does work in this case that's necessary,
661         like clearing the typing style.
662         (WebCore::Editor::unappliedEditing): Ditto.
663         (WebCore::Editor::reappliedEditing): Ditto.
664         * editing/TypingCommand.cpp:
665         (WebCore::TypingCommand::deleteKeyPressed): Don't set the starting
666         selection if the editing delegate returns NO from shouldDeleteRange.
667         Notice we now call setStartingSelection in the case where
668         the current selection was a range selection.  This is fine because
669         it's a no-op (the starting selection is already the current selection).
670         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
671
672 2006-12-01  John Sullivan  <sullivan@apple.com>
673
674         Reviewed by Darin
675         
676         Move subrange helper function from spellchecking code to TextIterator
677
678         * editing/TextIterator.h:
679         added TextIterator::subrange
680         * editing/TextIterator.cpp:
681         (WebCore::CharacterIterator::advance):
682         early return if count is <= 0; assert that it's not < 0
683         (WebCore::TextIterator::subrange):
684         new function, moved from FrameMac.mmm
685
686         * bridge/mac/FrameMac.mm:
687         moved subrange() function to TextIterator
688         (WebCore::FrameMac::advanceToNextMisspelling):
689         use TextIterator::subrange
690         (WebCore::markAllMisspellingsInRange):
691         ditto
692         (WebCore::markAllBadGrammarInRange):
693         ditto
694
695 2006-12-01  Darin Adler  <darin@apple.com>
696
697         Reviewed by Mitz.
698
699         - fix http://bugs.webkit.org/show_bug.cgi?id=11628
700           REGRESSION (r17597): Command-return in native text fields doesn't open a new tab or window
701
702         I couldn't think of an easy way to make a regression test for this, but maybe
703         I'll get an idea later about how to do it.
704
705         The main thing I did was add a concept of a DOM event having an "underlying event".
706         That allows the DOM activate event to contain inside it the original keyboard event
707         that triggered the form submission, and thus allows WebKit to see the modifier keys
708         from that original event. The code that uses the underlying event is in WebKit, but
709         the code to set it up is here in WebCore.
710
711         - also do some clean-up to related event handling code
712
713         * bindings/js/kjs_events.cpp: (KJS::DOMEvent::getValueProperty): Updated for the
714         name change of cancelBubble.
715
716         * dom/Event.h: Removed a useless comment. Fixed some whitespace and formatting.
717         Renamed getCancelBubble to cancelBubble to match the DOM -- I suspect the old
718         name predated the use of the m_ prefix on data members. Added the underlying event,
719         and a getter and setter.
720         * dom/Event.cpp:
721         (WebCore::Event::setTarget): Updated to take a PassRefPtr.
722         (WebCore::Event::setUnderlyingEvent): Added.
723
724         * dom/EventTargetNode.h: Added an optional underlyingEvent parameter to
725         dispatchUIEvent, one of the overloads of dispatchMouseEvent, and
726         dispatchSimulatedMouseEvent. Added a new dispatchSimulatedClick function here that
727         mostly replaces the click function in HTMLElement.
728         * dom/EventTargetNode.cpp:
729         (WebCore::EventTargetNode::dispatchGenericEvent): Updated for the name change
730         of cancelBubble.
731         (WebCore::EventTargetNode::dispatchUIEvent): Added an underlying event parameter,
732         which gets attached to the UIEvent object after it's created.
733         (WebCore::EventTargetNode::dispatchMouseEvent): Tweaked formatting and parameter
734         name for the version that creates a mouse event for a real platform mouse event.
735         Added an underlying event parameter to the main version, and attached it to all
736         three of the events that can be dispatched.
737         (WebCore::EventTargetNode::dispatchSimulatedMouseEvent): Added an underlying
738         event parameter, passed it along to dispatchMouseEvent.
739         (WebCore::EventTargetNode::dispatchSimulatedClick): Moved this here from HTMLElement
740         and renamed it from click. Added an underlyingEvent parameter, and passed that along
741         in all three of the calls to dispatchSimulatedMouseEvent.
742
743         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::shouldClose): Updated call to
744         setTarget that no longer needs a get().
745         * ksvg2/svg/SVGElement.cpp: (WebCore::SVGElement::sendSVGLoadEventIfPossible): Ditto.
746
747         * html/HTMLAnchorElement.cpp:
748         (WebCore::HTMLAnchorElement::defaultEventHandler): Converted a call to click
749         to a call to dispatchSimulatedClick.
750         (WebCore::HTMLAnchorElement::accessKeyAction): Ditto.
751         * html/HTMLButtonElement.cpp:
752         (WebCore::HTMLButtonElement::accessKeyAction): Ditto.
753         * html/HTMLElement.h: Removed the parameters to click and made it non-virtual.
754         We could move it down to the input and button elements, now that it's just
755         a single function call, but it's also OK to just leave it here.
756         * html/HTMLElement.cpp:
757         (WebCore::HTMLElement::click): Removed the parameters and changed this to just
758         call dispatchSimulatedClick. The real work is now in dispatchSimulatedClick.
759         (WebCore::HTMLElement::accessKeyAction): Converted a call to click to a call to
760         dispatchSimulatedClick.
761         * html/HTMLFormElement.cpp:
762         (WebCore::HTMLFormElement::submitClick): Ditto. But unlike accessKeyAction callers,
763         pass the event along as the underlying event.
764         * html/HTMLInputElement.h:
765         * html/HTMLInputElement.cpp: Removed override of virtual click function. The
766         special cases for the file control and hidden input elements aren't needed.
767         (WebCore::HTMLInputElement::accessKeyAction): Converted a call to click to a call to
768         dispatchSimulatedClick.
769         (WebCore::HTMLInputElement::defaultEventHandler): Converted calls to click to calls to
770         dispatchSimulatedClick, passing along the event as the underlying event.
771         * html/HTMLLabelElement.cpp:
772         (WebCore::HTMLLabelElement::defaultEventHandler): Converted a call to click to a call
773         to dispatchSimulatedClick, passing the event along as the underlying event. Also
774         changed the local variable for the element to a RefPtr since the code assumes it's
775         still around after calling arbitrary JavaScript code.
776         * html/HTMLSelectElement.cpp:
777         (WebCore::HTMLSelectElement::accessKeyAction): Converted a call to click to a call to
778         dispatchSimulatedClick.
779
780         * rendering/RenderFileUploadControl.h:
781         * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::click):
782         Removed unneeded ignored parameter to the click function, and also made it non-virtual.
783
784         * loader/NavigationAction.h: Removed unneeded includes.
785         * loader/NavigationAction.cpp: Moved all the code here from NavigationActionMac.mm,
786         since none of it is Mac-specific any more.
787         * loader/mac/NavigationActionMac.mm: Removed.
788         * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
789
790         * ksvg2/svg/SVGAElement.cpp: Removed an unnecessary include.
791
792         * loader/FrameLoader.cpp: Added a newly-needed incluude.
793         * loader/mac/DocumentLoaderMac.mm: Ditto.
794         * loader/mac/FrameLoaderMac.mm: Ditto.
795         * rendering/RenderWidget.cpp: Ditto.
796
797 2006-12-01  John Sullivan  <sullivan@apple.com>
798
799         Reviewed by Darin
800
801         - fixed <rdar://problem/4811175> Many false reports of bad grammar appear, caused by 
802           insufficient context passed to grammar checker
803
804         * bridge/mac/FrameMac.mm:
805         (WebCore::markAllMisspellingsInRange):
806         new function, extracted from markMisspellings -- ignores grammar
807         (WebCore::markAllBadGrammarInRange):
808         new function, extracted from markMisspellings -- ignores spelling, and operates on
809         appropriately-sized chunks of text
810         (WebCore::FrameMac::markMisspellings):
811         now calls markAllMisspellingsInRange and (optionally) markAllBadGrammarInRange rather
812         than trying to interweave the spelling and grammar logic
813
814 2006-12-01  John Sullivan  <sullivan@apple.com>
815
816         Reviewed by Darin
817
818         With these changes, grammar checking works correctly for the one-by-one case.
819         It still doesn't work correctly for the check-as-you-type case; I need to make these
820         same kinds of changes in markMisspellings, and refactor to share more code between
821         the two cases, but I wanted to get this working code in before modifying it further.
822
823         The major change here is that advanceToNextMisspelling used to look at small chunks of
824         text at a time, checking each one for both misspellings and questionable grammar. But
825         grammar checking needs at least paragraph-sized chunks of text to have enough context
826         to work correctly, so the old mechanism was causing many spurious complaints of bad
827         grammar (e.g., almost every word seemed to be at the start of a sentence so the checker
828         would complain about missing capitalization). So now the spell checker runs in the
829         specified range first. Then the grammar checker runs on the same range (stopping at the
830         next misspelling, if any), but expanded to paragraph-aligned boundaries.
831
832         * bridge/mac/FrameMac.mm:
833         (WebCore::findFirstMisspellingInRange):
834         new function, extracted from advanceToNextMisspelling, and ignores grammar
835         (WebCore::paragraphAlignedRangeForRange):
836         new function, used by findNextBadGrammarInRange
837         (WebCore::findFirstBadGrammarInRange):
838         new function, extracted from advanceToNextMisspelling, and rewritten to use paragraph-aligned
839         chunks, and ignores spelling
840         (WebCore::subrange):
841         new helper function, used by advanceToNextMisspelling
842         (WebCore::FrameMac::advanceToNextMisspelling):
843         now calls out to both findFirstMisspellingInRange and findFirstBadGrammarInRange separately
844         instead of trying to interweave the spelling and grammar logic
845
846 2006-12-01  Don Gibson  <dgibson77@gmail.com>
847
848         Reviewed by Mitz.
849
850         http://bugs.webkit.org/show_bug.cgi?id=11732:
851         Windows build bustage.
852
853         * WebCore.vcproj/WebCore/WebCore.vcproj:
854         * bridge/win/ChromeClientWin.h:
855         * bridge/win/ContextMenuClientWin.h:
856         * bridge/win/EditorClientWin.h:
857         * bridge/win/FrameWin.cpp:
858         (WebCore::FrameWin::FrameWin):
859         (WebCore::FrameWin::keyPress):
860         * bridge/win/FrameWin.h:
861         * loader/win/FrameLoaderClientWin.h:
862         * platform/ContextMenu.h:
863         * platform/Widget.h:
864         * platform/win/PlatformScrollBar.h:
865         * platform/win/TemporaryLinkStubs.cpp:
866         (WebCore::ChromeClientWin::chromeDestroyed):
867         (WebCore::ChromeClientWin::addMessageToConsole):
868         (WebCore::ContextMenu::ContextMenu):
869         (WebCore::ContextMenu::~ContextMenu):
870         (WebCore::ContextMenu::appendItem):
871         (WebCore::ContextMenuClientWin::contextMenuDestroyed):
872         (WebCore::ContextMenuClientWin::contextMenuItemSelected):
873         (WebCore::ContextMenuItem::~ContextMenuItem):
874         (WebCore::Editor::newGeneralClipboard):
875         (WebCore::EditorClientWin::pageDestroyed):
876         (WebCore::EditorClientWin::smartInsertDeleteEnabled):
877         (WebCore::EditorClientWin::shouldInsertNode):
878         (WebCore::FrameLoader::createPlugin):
879         (WebCore::FrameLoaderClientWin::frameLoaderDestroyed):
880         (WebCore::FrameLoaderClientWin::hasWebView):
881         (WebCore::FrameLoaderClientWin::canHandleRequest):
882         (WebCore::FrameWin::unfocusWindow):
883         (WebCore::FrameWin::bindingRootObject):
884         (WebCore::FrameWin::issueCopyCommand):
885         (WebCore::FrameWin::markMisspellings):
886         (WebCore::FrameWin::issueTransposeCommand):
887         (WebCore::FrameWin::markedTextRange):
888         (WebCore::FrameWin::respondToChangedSelection):
889         (WebCore::FrameWin::markMisspellingsInAdjacentWords):
890         (WebCore::FrameWin::isSelectionMisspelled):
891         (WebCore::FrameWin::guessesForMisspelledSelection):
892         (WebCore::Pasteboard::generalPasteboard):
893         (WebCore::Pasteboard::writeSelection):
894         (WebCore::Pasteboard::clearTypes):
895         (WebCore::Pasteboard::canSmartReplace):
896         (WebCore::Pasteboard::documentFragment):
897         (WebCore::Pasteboard::plainText):
898         (WebCore::Pasteboard::Pasteboard):
899         (WebCore::Pasteboard::~Pasteboard):
900         (WebCore::Pasteboard::registerSelectionPasteboardTypes):
901         (WebCore::Pasteboard::replaceNBSP):
902         (WebCore::Pasteboard::createHandle):
903         (WebCore::Pasteboard::createCF_HTMLFromRange):
904
905 2006-11-30  Geoffrey Garen  <ggaren@apple.com>
906
907         Rubber Stamped by Anders Carlsson.
908
909         Global rename of Document::focusNode to Document::focusedNode. 'focusNode'
910         suggested a command, and conflicted with a different meaning for 'focusNode'
911         in the Mozilla selection API.
912
913 2006-11-30  John Sullivan  <sullivan@apple.com>
914
915         Reviewed by Justin
916
917         With Darin, fixed a problem in the Range constructors found while implementing grammar checking.
918         That revealed another problem in the layout tests involving bad parameters passed to the Range
919         constructors.
920         
921         With these fixes in place, one layout test (editing/execCommand/create-list-from-range-selection.html)
922         no longer works as intended. This is apparently due to yet another bug being flushed out somewhere.
923         I'm going to update the results for that test and file a separate radar about it, which Justin will
924         investigate.
925
926         * dom/Position.h:
927         removed equivalentRangeCompliantPosition(), which was declared but not implemented or called.
928         
929         * dom/Range.cpp:
930         (WebCore::Range::Range):
931         Call setStart and setEnd in the two Range constructors that take parameters, rather than just 
932         directly setting the instance variables. This makes Range perform the boundary checks and
933         compensations that the DOM spec requires.
934         
935         * editing/CompositeEditCommand.cpp:
936         (WebCore::CompositeEditCommand::moveParagraphs):
937         Use rangeCompliantEquivalent() on "editing-style" Positions before creating Ranges from them.
938         
939         * editing/TextIterator.cpp:
940         (WebCore::TextIterator::TextIterator):
941         Assert that the boundary points of the range are valid.
942
943 2006-11-30  Lou Amadio  <lamadio@apple.com>
944
945         Reviewed by Dave Hyatt
946         Cleaned up generated files.
947
948         * html/HTMLElement.cpp:
949         (WebCore::HTMLElement::isRecognizedTagName):
950                 Uses the new method for retrieving the list of supported tags
951         * ksvg2/scripts/make_names.pl:
952                 Generates tag lists without using macros.
953
954 2006-11-30  Adam Roben  <aroben@apple.com>
955
956         Reviewed by Beth.
957
958         Store ContextMenu's NSMutableArray inside a RetainPtr so that we
959         will retain/release it correctly.
960
961         * WebCore.exp:
962         * platform/ContextMenu.cpp:
963         (WebCore::ContextMenu::populate): Added a FIXME.
964         * platform/ContextMenu.h:
965         * platform/mac/ContextMenuMac.mm: 
966         (WebCore::ContextMenu::ContextMenu):
967         (WebCore::ContextMenu::~ContextMenu):
968         (WebCore::getNSMenuItem):
969         (WebCore::ContextMenu::appendItem):
970         (WebCore::ContextMenu::itemCount):
971         (WebCore::ContextMenu::insertItem):
972         (WebCore::ContextMenu::setPlatformDescription):
973         (WebCore::ContextMenu::platformDescription):
974
975 2006-11-30  Nikolas Zimmermann  <zimmermann@kde.org>
976
977         Reviewed by Eric. Rubber stamped by Oliver.
978
979         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10383
980      
981         This is the final patch after the long "die kcanvas" journey.
982
983         All old kcanvas code is gone now, and properly integrated within
984         WebCore (stuff like GraphicsContext changes etc.). It shares
985         the platform/ design concept: no subclassing, but instead
986         implementing parts of the classes/methods per-platform.
987
988         This commit removes the last pieces: KRenderingDevice & KRenderingDeviceContext.
989         This layer was just obsolete, given the powerful GraphicsContext API we have
990         since quite a while now. All the ugly pushContext/popContext stuff is gone now.
991
992         LayoutTests affected: svg/W3C-SVG-1.1/pservers-grad-11-b.svg
993         Radial gradients as fill color for texts, work again!
994         Though "Gradient on text stroke" remains broken. Funny thing:
995         With this patch, if you "select" the text using the mouse, as
996         soon as the selection rectangle is drawn, you see the correct
997         gradient on stroke rendering - at least a hint where it breaks!
998
999         All svg layout tests have subtle text rendering changes - with and without this
1000         patch, it seems it was forgotton to update svg pixel test baseline, a while ago.
1001
1002         * CMakeLists.txt:
1003         * WebCore.xcodeproj/project.pbxproj:
1004         * kcanvas/device/KRenderingDevice.cpp: Removed.
1005         * kcanvas/device/KRenderingDevice.h: Removed.
1006         * kcanvas/device/qt/KRenderingDeviceQt.cpp: Removed.
1007         * kcanvas/device/qt/KRenderingDeviceQt.h: Removed.
1008         * kcanvas/device/qt/RenderPathQt.cpp: Moved to platform/graphics/qt
1009         * kcanvas/device/quartz/KCanvasItemQuartz.cpp: Moved to platform/graphics/svg/cg/RenderPathCg.cpp
1010         * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp: Removed.
1011         * kcanvas/device/quartz/KRenderingDeviceQuartz.h: Removed.
1012         * kcanvas/device/quartz/QuartzSupport.cpp: Moved to platform/graphics/svg/cg/CgSupport.cpp
1013         * kcanvas/device/quartz/QuartzSupport.h: Moved to platform/graphics/svg/cg/CgSupport.h
1014         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1015         (WebCore::sharedSolidPaintServer):
1016         * ksvg2/misc/KCanvasRenderingStyle.h:
1017         * ksvg2/svg/SVGAElement.cpp:
1018         * ksvg2/svg/SVGClipPathElement.cpp:
1019         * ksvg2/svg/SVGFEBlendElement.cpp:
1020         (WebCore::SVGFEBlendElement::filterEffect):
1021         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1022         (WebCore::SVGFEColorMatrixElement::filterEffect):
1023         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
1024         (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
1025         (WebCore::SVGFEComponentTransferElement::parseMappedAttribute):
1026         (WebCore::SVGFEComponentTransferElement::filterEffect):
1027         * ksvg2/svg/SVGFECompositeElement.cpp:
1028         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
1029         (WebCore::SVGFECompositeElement::filterEffect):
1030         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1031         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
1032         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
1033         (WebCore::SVGFEDiffuseLightingElement::updateLights):
1034         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1035         (WebCore::SVGFEDisplacementMapElement::filterEffect):
1036         * ksvg2/svg/SVGFEDistantLightElement.cpp:
1037         (WebCore::SVGFEDistantLightElement::SVGFEDistantLightElement):
1038         (WebCore::SVGFEDistantLightElement::lightSource):
1039         * ksvg2/svg/SVGFEFloodElement.cpp:
1040         (WebCore::SVGFEFloodElement::SVGFEFloodElement):
1041         (WebCore::SVGFEFloodElement::parseMappedAttribute):
1042         (WebCore::SVGFEFloodElement::filterEffect):
1043         * ksvg2/svg/SVGFEFuncAElement.cpp:
1044         * ksvg2/svg/SVGFEFuncBElement.cpp:
1045         * ksvg2/svg/SVGFEFuncGElement.cpp:
1046         (WebCore::SVGFEFuncGElement::SVGFEFuncGElement):
1047         * ksvg2/svg/SVGFEFuncRElement.cpp:
1048         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
1049         (WebCore::SVGFEGaussianBlurElement::filterEffect):
1050         * ksvg2/svg/SVGFEImageElement.cpp:
1051         (WebCore::SVGFEImageElement::SVGFEImageElement):
1052         (WebCore::SVGFEImageElement::parseMappedAttribute):
1053         (WebCore::SVGFEImageElement::notifyFinished):
1054         (WebCore::SVGFEImageElement::filterEffect):
1055         * ksvg2/svg/SVGFELightElement.cpp:
1056         * ksvg2/svg/SVGFEMergeElement.cpp:
1057         (WebCore::SVGFEMergeElement::filterEffect):
1058         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
1059         * ksvg2/svg/SVGFEOffsetElement.cpp:
1060         (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
1061         (WebCore::SVGFEOffsetElement::parseMappedAttribute):
1062         (WebCore::SVGFEOffsetElement::filterEffect):
1063         * ksvg2/svg/SVGFEPointLightElement.cpp:
1064         (WebCore::SVGFEPointLightElement::lightSource):
1065         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
1066         (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
1067         (WebCore::SVGFESpecularLightingElement::filterEffect):
1068         (WebCore::SVGFESpecularLightingElement::updateLights):
1069         * ksvg2/svg/SVGFESpotLightElement.cpp:
1070         (WebCore::SVGFESpotLightElement::SVGFESpotLightElement):
1071         (WebCore::SVGFESpotLightElement::lightSource):
1072         * ksvg2/svg/SVGFETileElement.cpp:
1073         (WebCore::SVGFETileElement::SVGFETileElement):
1074         (WebCore::SVGFETileElement::parseMappedAttribute):
1075         (WebCore::SVGFETileElement::filterEffect):
1076         * ksvg2/svg/SVGFETurbulenceElement.cpp:
1077         (WebCore::SVGFETurbulenceElement::filterEffect):
1078         * ksvg2/svg/SVGFilterElement.cpp:
1079         (WebCore::SVGFilterElement::canvasResource):
1080         * ksvg2/svg/SVGGradientElement.cpp:
1081         (WebCore::SVGGradientElement::canvasResource):
1082         * ksvg2/svg/SVGLinearGradientElement.cpp:
1083         * ksvg2/svg/SVGMarkerElement.cpp:
1084         * ksvg2/svg/SVGMaskElement.cpp:
1085         (WebCore::SVGMaskElement::parseMappedAttribute):
1086         (WebCore::SVGMaskElement::drawMaskerContent):
1087         (WebCore::SVGMaskElement::canvasResource):
1088         * ksvg2/svg/SVGPatternElement.cpp:
1089         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
1090         (WebCore::SVGPatternElement::canvasResource):
1091         * ksvg2/svg/SVGStyledElement.cpp:
1092         * ksvg2/svg/SVGStyledElement.h:
1093         * platform/graphics/GraphicsContext.h:
1094         * platform/graphics/svg/SVGPaintServer.h:
1095         * platform/graphics/svg/SVGPaintServerGradient.cpp:
1096         (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
1097         * platform/graphics/svg/SVGPaintServerGradient.h:
1098         * platform/graphics/svg/SVGPaintServerLinearGradient.h:
1099         * platform/graphics/svg/SVGPaintServerPattern.h:
1100         * platform/graphics/svg/SVGPaintServerRadialGradient.h:
1101         * platform/graphics/svg/SVGPaintServerSolid.h:
1102         * platform/graphics/svg/SVGResource.cpp:
1103         * platform/graphics/svg/SVGResource.h:
1104         * platform/graphics/svg/SVGResourceClipper.h:
1105         * platform/graphics/svg/SVGResourceFilter.h:
1106         * platform/graphics/svg/SVGResourceMasker.h:
1107         * platform/graphics/svg/cg/RenderPathCg.cpp: Added.
1108         * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
1109         (WebCore::SVGPaintServer::draw):
1110         (WebCore::SVGPaintServer::teardown):
1111         (WebCore::SVGPaintServer::renderPath):
1112         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
1113         (WebCore::SVGPaintServerGradient::teardown):
1114         (WebCore::SVGPaintServerGradient::renderPath):
1115         (WebCore::SVGPaintServerGradient::setup):
1116         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
1117         (WebCore::SVGPaintServerPattern::setup):
1118         (WebCore::SVGPaintServerPattern::teardown):
1119         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
1120         (WebCore::SVGPaintServerSolid::setup):
1121         * platform/graphics/svg/cg/SVGResourceClipperCg.cpp:
1122         (WebCore::SVGResourceClipper::applyClip):
1123         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
1124         (WebCore::SVGResourceFilter::SVGResourceFilter):
1125         (WebCore::SVGResourceFilter::createFilterEffect):
1126         (WebCore::SVGResourceFilter::prepareFilter):
1127         (WebCore::SVGResourceFilter::applyFilter):
1128         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
1129         (WebCore::SVGResourceMasker::applyMask):
1130         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
1131         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
1132         (WebCore::SVGPaintServerLinearGradient::setup):
1133         * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp:
1134         (WebCore::SVGPaintServerPattern::setup):
1135         * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
1136         (WebCore::SVGPaintServer::draw):
1137         (WebCore::SVGPaintServer::teardown):
1138         (WebCore::SVGPaintServer::renderPath):
1139         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
1140         (WebCore::setup):
1141         * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
1142         (WebCore::SVGPaintServerSolid::setup):
1143         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
1144         (WebCore::SVGResourceClipper::applyClip):
1145         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
1146         (WebCore::SVGResourceFilter::createFilterEffect):
1147         (WebCore::SVGResourceFilter::prepareFilter):
1148         (WebCore::SVGResourceFilter::applyFilter):
1149         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
1150         (WebCore::SVGResourceMasker::applyMask):
1151         * platform/qt/GraphicsContextQt.cpp:
1152         (WebCore::GraphicsContext::beginPath):
1153         (WebCore::GraphicsContext::addPath):
1154         (WebCore::GraphicsContext::setFillRule):
1155         (WebCore::GraphicsContext::currentPath):
1156         (WebCore::GraphicsContext::strokeRect):
1157         (WebCore::contextForImage):
1158         * rendering/RenderForeignObject.cpp:
1159         (WebCore::RenderForeignObject::paint):
1160         * rendering/RenderPath.cpp:
1161         (WebCore::RenderPath::paint):
1162         * rendering/RenderSVGContainer.cpp:
1163         (WebCore::RenderSVGContainer::paint):
1164         * rendering/RenderSVGImage.cpp:
1165         (WebCore::RenderSVGImage::paint):
1166         * rendering/RenderSVGImage.h:
1167         * rendering/RenderSVGInline.cpp:
1168         (WebCore::RenderSVGInline::RenderSVGInline):
1169         (WebCore::RenderSVGInline::createInlineBox):
1170         * rendering/RenderSVGInlineText.cpp:
1171         (WebCore::RenderSVGInlineText::RenderSVGInlineText):
1172         * rendering/RenderSVGTSpan.cpp:
1173         (WebCore::RenderSVGTSpan::RenderSVGTSpan):
1174         * rendering/RenderSVGText.cpp:
1175         (WebCore::RenderSVGText::paint):
1176         * rendering/SVGInlineFlowBox.cpp:
1177         (WebCore::paintSVGInlineFlow):
1178         * rendering/SVGRenderTreeAsText.cpp:
1179         (WebCore::writeStyle):
1180
1181 2006-11-30  Geoffrey Garen  <ggaren@apple.com>
1182
1183         Reviewed by Beth Dakin.
1184         
1185         Fixed up garbage collection at window close time.
1186
1187         * bindings/js/kjs_proxy.cpp: Don't garbage collect in the KJSProxy
1188         destructor, since the global object hasn't been freed yet.
1189         * bindings/js/kjs_proxy.h:
1190         * loader/FrameLoader.cpp:
1191         (WebCore::FrameLoader::detachFromParent): Made this function cross-
1192         platform.
1193         * loader/FrameLoader.h:
1194         * loader/mac/FrameLoaderMac.mm:
1195         (WebCore::FrameLoader::setTitle): Moved this function to FrameLoaderMac,
1196         since it's Mac-only.
1197         (WebCore::FrameLoader::closeBridge):
1198         * page/Page.cpp:
1199         (WebCore::Page::~Page): Don't garbage collect in the Page destructor,
1200         since the Interpreter destructor will do it for us.
1201
1202 2006-11-30  Brady Eidson  <beidson@apple.com>
1203
1204         Reviewed by Tim's rubberstamp
1205
1206         Amazingly, DocumentLoader.h survived all this time without a header guard...
1207
1208         * loader/DocumentLoader.h:  Added header guard
1209
1210 2006-11-30  Timothy Hatcher  <timothy@apple.com>
1211
1212         Reviewed by Brady and Eric.
1213
1214         XMLHttpRequest fails in a page loaded with WebFrame's loadHTMLString: or loadData:
1215         http://bugs.webkit.org/show_bug.cgi?id=11723
1216
1217         Allow cross-domain XMLHTTPRequest for applewebdata URLs. No automated way to test,
1218         tested in Safari's debug Snippet Editor.
1219
1220         * xml/xmlhttprequest.cpp:
1221         (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
1222
1223 2006-11-29  Anders Carlsson  <acarlsson@apple.com>
1224
1225         Reviewed by Brady.
1226
1227         Get rid of PlatformResponse, the platform specific response object is stored inside of 
1228         the ResourceResponse object now. This also gets rid of receivedResponse in ResourceHandleClient.
1229         
1230         * bridge/mac/WebCoreFrameBridge.mm:
1231         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
1232         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
1233         * loader/CachedResource.cpp:
1234         (WebCore::CachedResource::CachedResource):
1235         (WebCore::CachedResource::~CachedResource):
1236         * loader/CachedResource.h:
1237         (WebCore::CachedResource::response):
1238         * loader/loader.cpp:
1239         * loader/loader.h:
1240         * loader/mac/ImageDocumentMac.mm:
1241         (WebCore::finishImageLoad):
1242         * loader/mac/LoaderFunctionsMac.mm:
1243         (WebCore::CheckCacheObjectStatus):
1244         * loader/mac/SubresourceLoaderMac.mm:
1245         (WebCore::SubresourceLoader::didReceiveResponse):
1246         * platform/network/ResourceHandle.h:
1247         * platform/network/ResourceResponse.h:
1248         (WebCore::ResourceResponse::nsURLResponse):
1249         (WebCore::ResourceResponse::cfURLResponse):
1250         * platform/network/mac/ResourceHandleMac.mm:
1251         (WebCore::ResourceHandle::didReceiveResponse):
1252
1253 2006-11-29  Justin Garcia  <justin.garcia@apple.com>
1254
1255         Reviewed by sullivan
1256         
1257         <rdar://problem/4845371>
1258         In Mail, a crash occurs at WebCore::Node::traverseNextNode() when cutting selected text from a HTML message
1259         
1260         * editing/DeleteSelectionCommand.cpp:
1261         (WebCore::DeleteSelectionCommand::initializeStartEnd): The start/end were
1262         being inflated even when they were the start/end of a partially selected
1263         special element.
1264
1265 2006-11-29  Anders Carlsson  <acarlsson@apple.com>
1266
1267         Reviewed by Oliver.
1268
1269         Fix fast/dom/xmlhttprequest-get layout test failure.
1270         
1271         * platform/network/mac/ResourceResponseMac.mm:
1272         Initialize the status code to 0 for non-http responses.
1273         
1274 2006-11-29  Geoffrey Garen  <ggaren@apple.com>
1275
1276         Reviewed by Anders Carlsson.
1277         
1278         Fixed http://bugs.webkit.org/show_bug.cgi?id=11712
1279         REGRESSION: Crash when clicking JS link on crateandbarrel.com (window.open("http[...]"))
1280         
1281         This was an accidental commit by Anders.
1282
1283         Chrome can't use the FrameView at window.open time, because it doesn't
1284         exist yet.
1285         
1286         * page/Chrome.cpp:
1287         (WebCore::Chrome::pageRect):
1288
1289 2006-11-29  Geoffrey Garen  <ggaren@apple.com>
1290
1291         Reviewed by Mitz Pettel.
1292         
1293         Fixed http://bugs.webkit.org/show_bug.cgi?id=11710
1294         REGRESSION (r17906): Crash in WebCore::FrameMac
1295
1296         Added null checks for EditorClient, since it can be NULL when the page
1297         has been destroyed. Removed external access to EditorClient, since it's
1298         an implementation detail of the Editor.
1299
1300         No test case because this crash depends on window tear-down. Layout tests
1301         pass.
1302         
1303 2006-11-29  Anders Carlsson  <acarlsson@apple.com>
1304
1305         Fix build.
1306         
1307         * platform/network/mac/ResourceHandleMac.mm:
1308         (WebCore::ResourceHandle::receivedResponse):
1309         Fix tyop.
1310
1311 2006-11-29  Anders Carlsson  <acarlsson@apple.com>
1312
1313         Reviewed by Darin.
1314
1315         Have ResourceResponse hold on to the platform object and do lazy
1316         initialization of the data members.
1317         
1318         * WebCore.xcodeproj/project.pbxproj:
1319         * loader/mac/FrameLoaderMac.mm:
1320         (WebCore::FrameLoader::loadResourceSynchronously):
1321         * platform/network/ResourceRequest.cpp:
1322         (WebCore::ResourceRequest::updatePlatformRequest):
1323         (WebCore::ResourceRequest::updateResourceRequest):
1324         * platform/network/ResourceResponse.cpp: Added.
1325         (WebCore::ResourceResponse::url):
1326         (WebCore::ResourceResponse::mimeType):
1327         (WebCore::ResourceResponse::expectedContentLength):
1328         (WebCore::ResourceResponse::textEncodingName):
1329         (WebCore::ResourceResponse::suggestedFilename):
1330         (WebCore::ResourceResponse::httpStatusCode):
1331         (WebCore::ResourceResponse::setHTTPStatusCode):
1332         (WebCore::ResourceResponse::httpStatusText):
1333         (WebCore::ResourceResponse::setHTTPStatusText):
1334         (WebCore::ResourceResponse::httpHeaderField):
1335         (WebCore::ResourceResponse::httpHeaderFields):
1336         (WebCore::ResourceResponse::setExpirationDate):
1337         (WebCore::ResourceResponse::expirationDate):
1338         (WebCore::ResourceResponse::setLastModifiedDate):
1339         (WebCore::ResourceResponse::lastModifiedDate):
1340         (WebCore::ResourceResponse::updateResourceResponse):
1341         * platform/network/ResourceResponse.h:
1342         (WebCore::ResourceResponse::ResourceResponse):
1343         (WebCore::ResourceResponse::isMultipart):
1344         * platform/network/mac/ResourceHandleMac.mm:
1345         (WebCore::ResourceHandle::receivedResponse):
1346         (WebCore::ResourceHandle::willSendRequest):
1347         * platform/network/mac/ResourceResponseMac.h: Removed.
1348         * platform/network/mac/ResourceResponseMac.mm:
1349         (-[NSURLResponse WebCore]):
1350
1351 2006-11-28  Alice Liu  <alice.liu@apple.com>
1352
1353         Reviewed by Maciej.
1354
1355         A fix for a couple failing layout tests involving copy/cut in iframes.
1356
1357         * bridge/EditorClient.h:
1358         Add frame parameter to dataForArchivedSelectionInFrame instead of
1359         just getting the webview's selectedFrame.
1360
1361         * platform/mac/PasteboardMac.mm:
1362         (Pasteboard::writeSelection):
1363         Pass in the frame
1364
1365 2006-11-28  Geoffrey Garen  <ggaren@apple.com>
1366
1367         Reviewed by Beth Dakin.
1368
1369         Fixed <rdar://problem/4844855> Should clarify when to create clients in 
1370         the WebCore client API
1371         
1372         All clients must now be supplied as constructor arguments. This clarifies 
1373         when you need to create clients, and also guarantees that objects can't 
1374         (for the most part) be in a clientless state.
1375
1376         Layout tests pass. No leaks reported.
1377         
1378         * bridge/mac/WebCoreFrameBridge.mm: I had to move some initialization up into
1379         WebKit to resolve circular dependencies at init time.
1380
1381 2006-11-28  Adam Roben  <aroben@apple.com>
1382
1383         Reviewed by Ada.
1384
1385         Add platform-specific constructor/destructor to ContextMenu so we can
1386         properly retain/release the platform menu description.
1387
1388         * platform/ContextMenu.h:
1389         (WebCore::ContextMenu::platformDescription):
1390         * platform/mac/ContextMenuMac.mm:
1391         (WebCore::ContextMenu::ContextMenu):
1392         (WebCore::ContextMenu::~ContextMenu):
1393         (WebCore::getNSMenuItem):
1394         (WebCore::ContextMenu::appendItem):
1395         (WebCore::ContextMenu::itemCount):
1396         (WebCore::ContextMenu::insertItem):
1397         (WebCore::ContextMenu::setPlatformDescription):
1398
1399 2006-11-28  Adam Roben  <aroben@apple.com>
1400
1401         Build fix.
1402
1403         * platform/network/mac/ResourceRequestMac.mm:
1404
1405 2006-11-28  David Harrison  <harrison@apple.com>
1406
1407         Reviewed by Adele.
1408
1409         <rdar://problem/4852804> selection color does not get drawn over the missing image rectangle
1410
1411         Test:
1412         * editing/selection/select-missing-image.html: Added.
1413
1414         * rendering/RenderImage.cpp:
1415         (WebCore::RenderImage::paint):
1416         Draw the selection tint even if the image itself is not available.
1417
1418 2006-11-28  Anders Carlsson  <acarlsson@apple.com>
1419
1420         Reviewed by Maciej.
1421
1422         Have ResourceRequest hold on to the platform object so we don't
1423         have to convert back and forth when nothing in the object changes.
1424
1425         * WebCore.exp:
1426         * WebCore.xcodeproj/project.pbxproj:
1427         * loader/mac/FrameLoaderMac.mm:
1428         (WebCore::FrameLoader::continueAfterNavigationPolicy):
1429         * page/Chrome.cpp:
1430         (WebCore::Chrome::pageRect):
1431         * platform/network/ResourceRequest.cpp: Added.
1432         (WebCore::ResourceRequest::isEmpty):
1433         (WebCore::ResourceRequest::url):
1434         (WebCore::ResourceRequest::setURL):
1435         (WebCore::ResourceRequest::cachePolicy):
1436         (WebCore::ResourceRequest::setCachePolicy):
1437         (WebCore::ResourceRequest::timeoutInterval):
1438         (WebCore::ResourceRequest::setTimeoutInterval):
1439         (WebCore::ResourceRequest::mainDocumentURL):
1440         (WebCore::ResourceRequest::setMainDocumentURL):
1441         (WebCore::ResourceRequest::httpMethod):
1442         (WebCore::ResourceRequest::setHTTPMethod):
1443         (WebCore::ResourceRequest::httpHeaderFields):
1444         (WebCore::ResourceRequest::httpHeaderField):
1445         (WebCore::ResourceRequest::setHTTPHeaderField):
1446         (WebCore::ResourceRequest::httpBody):
1447         (WebCore::ResourceRequest::setHTTPBody):
1448         (WebCore::ResourceRequest::allowHTTPCookies):
1449         (WebCore::ResourceRequest::setAllowHTTPCookies):
1450         (WebCore::ResourceRequest::updatePlatformRequest):
1451         (WebCore::ResourceRequest::updateResourceRequest):
1452         (WebCore::ResourceRequest::addHTTPHeaderField):
1453         (WebCore::ResourceRequest::addHTTPHeaderFields):
1454         * platform/network/ResourceRequest.h:
1455         (WebCore::ResourceRequest::ResourceRequest):
1456         * platform/network/mac/ResourceHandleMac.mm:
1457         (WebCore::ResourceHandle::willSendRequest):
1458         * platform/network/mac/ResourceRequestMac.h: Removed.
1459         * platform/network/mac/ResourceRequestMac.mm:
1460         (WebCore::ResourceRequest::nsURLRequest):
1461         (WebCore::ResourceRequest::doUpdateResourceRequest):
1462         (WebCore::ResourceRequest::doUpdatePlatformRequest):
1463
1464 2006-11-28  Adam Roben  <aroben@apple.com>
1465
1466         Reviewed by Beth.
1467
1468         More WebCore context menu work (still not turned on, however).
1469
1470         Split ContextMenuItem into its own files and make it a class.
1471
1472         * WebCore.exp: Updated symbols.
1473         * WebCore.xcodeproj/project.pbxproj: Added new ContextMenuItem files.
1474         * platform/ContextMenu.cpp:
1475         (WebCore::ContextMenu::populate): Code cleanup.
1476         * platform/ContextMenu.h: Split ContextMenuItem into a separate file,
1477         removed redundant "Menu" part of platformMenuDescription(),
1478         setPlatformMenuDescription().
1479         (WebCore::ContextMenu::ContextMenu):
1480         (WebCore::ContextMenu::hitTestResult):
1481         (WebCore::ContextMenu::platformDescription):
1482         * platform/ContextMenuItem.h: Added. Made ContextMenuItem a
1483         full-fledged class.
1484         (WebCore::):
1485         (WebCore::ContextMenuItem::ContextMenuItem):
1486         (WebCore::ContextMenuItem::menu):
1487         (WebCore::ContextMenuItem::platformDescription):
1488         (WebCore::ContextMenuItem::type):
1489         (WebCore::ContextMenuItem::action):
1490         (WebCore::ContextMenuItem::title):
1491         * platform/mac/ContextMenuItemMac.mm: Added.
1492         (WebCore::ContextMenuItem::ContextMenuItem):
1493         * platform/mac/ContextMenuMac.mm: Updated for ContextMenuItem changes.
1494         (-[MenuTarget forwardContextMenuAction:]):
1495         (getNSMenuItem): Handle separator items.
1496         (ContextMenu::appendItem):
1497         (ContextMenu::itemCount):
1498         (ContextMenu::insertItem):
1499         (ContextMenu::setPlatformDescription):
1500         * page/ContextMenuController.h: Updated declaration, added getter.
1501         (WebCore::ContextMenuController::contextMenu):
1502
1503         Added some more context menu plumbing.
1504
1505         * dom/EventTargetNode.cpp:
1506         (WebCore::EventTargetNode::defaultEventHandler): Added code to call the
1507         ContextMenuController when a context menu event is received.
1508         * page/ContextMenuClient.h: New client method declaration.
1509         * page/ContextMenuController.cpp:
1510         (WebCore::ContextMenuController::handleContextMenuEvent): Set the event
1511         defaultHandled after handling it.
1512         (WebCore::ContextMenuController::contextMenuItemSelected): Take a
1513         ContextMenuItem instead of a separate action and title.
1514
1515         Changed event-handling methods to return bools to signify whether the
1516         event was handled or not. This is needed so we can know whether to hand
1517         the event off to the OS. Also restructured some code to use early
1518         returns instead of nesting ifs.
1519
1520         * page/EventHandler.cpp:
1521         (WebCore::EventHandler::handleMousePressEventDoubleClick):
1522         (WebCore::EventHandler::handleMousePressEventTripleClick):
1523         (WebCore::EventHandler::handleMousePressEventSingleClick):
1524         (WebCore::EventHandler::handleMousePressEvent):
1525         (WebCore::EventHandler::handleMouseMoveEvent):
1526         (WebCore::EventHandler::handleMouseReleaseEvent):
1527         (WebCore::EventHandler::handleMouseDoubleClickEvent):
1528         (WebCore::EventHandler::handleWheelEvent):
1529         (WebCore::EventHandler::canMouseDownStartSelect):
1530         * page/EventHandler.h:
1531         * page/FrameView.cpp:
1532         (WebCore::FrameView::handleMouseMoveEvent):
1533         (WebCore::FrameView::handleMouseReleaseEvent):
1534         * page/FrameView.h:
1535         * platform/ScrollBar.h: More bool return values.
1536         (WebCore::Scrollbar::handleMouseMoveEvent):
1537         (WebCore::Scrollbar::handleMouseOutEvent):
1538         * platform/Widget.h: Ditto.
1539         (WebCore::Widget::handleMouseMoveEvent):
1540         (WebCore::Widget::handleMouseReleaseEvent):
1541
1542         Reverted the changes made in r17805 so that we can have fewer header
1543         #includes.
1544
1545         * page/Page.cpp:
1546         (WebCore::Page::Page):
1547         * page/Page.h: Ditto.
1548         (WebCore::Page::dragCaretController):
1549         (WebCore::Page::chrome):
1550         (WebCore::Page::contextMenuController):
1551
1552 2006-11-28  Alice Liu  <alice.liu@apple.com>
1553
1554         Reviewed by Justin and Adam.
1555
1556         All layout tests pass as they do without this patch
1557
1558         * WebCore.exp:
1559         Exposed functions in Editor and removed functions in FrameMac due to changes in WebHTMLView.m
1560
1561         * WebCore.xcodeproj/project.pbxproj:
1562         Added Pasteboard.h, PasteboardMac.mm, WebNSAttributedStringExtras.h&mm, EditorMac.mm
1563
1564         * bridge/EditorClient.h:
1565         Added smartInsertDeleteEnabled and shouldInsertNode and some mac-specific functions
1566
1567         * bridge/mac/FrameMac.h:
1568         * bridge/mac/FrameMac.mm:
1569         Removed dispatchCPPEvent and [can|try]DHTML[cut|copy|paste] since the Editor's are called now
1570
1571         * dom/CharacterData.h:
1572         (WebCore::CharacterData::isCharacterDataNode):
1573         * dom/Node.h:
1574         (WebCore::Node::isCharacterDataNode):
1575         Added a type-identifying function to Node and the proper subclass
1576
1577         * dom/Clipboard.h:
1578         Exposed setAccessPolicy as public
1579         
1580         * editing/Editor.h:
1581         * editing/Editor.cpp:
1582         Implemented the following
1583         (WebCore::Editor::canDHTMLCut):
1584         (WebCore::Editor::canDHTMLCopy):
1585         (WebCore::Editor::canDHTMLPaste):
1586         (WebCore::Editor::canSmartCopyOrDelete):
1587         (WebCore::Editor::deleteSelection):
1588         (WebCore::Editor::pasteAsPlainTextWithPasteboard):
1589         (WebCore::Editor::pasteWithPasteboard):
1590         (WebCore::Editor::canSmartReplaceWithPasteboard):
1591         (WebCore::Editor::shouldInsertFragment):
1592         (WebCore::Editor::replaceSelectionWithFragment):
1593         (WebCore::Editor::replaceSelectionWithText):
1594         (WebCore::Editor::selectedRange):
1595         (WebCore::Editor::shouldDeleteRange):
1596         (WebCore::Editor::tryDHTMLCopy):
1597         (WebCore::Editor::tryDHTMLCut):
1598         (WebCore::Editor::tryDHTMLPaste):
1599         (WebCore::Editor::writeSelectionToPasteboard):
1600         (WebCore::Editor::dispatchCPPEvent):
1601         (WebCore::Editor::cut):
1602         (WebCore::Editor::copy):
1603         (WebCore::Editor::paste):
1604                 
1605         * platform/mac/ClipboardAccessPolicy.h: Removed.
1606         Not removed, but moved to dom/ClipboardAccessPolicy.h
1607         
1608         * platform/mac/EditorMac.mm: Added.
1609         (WebCore::Editor::newGeneralClipboard):
1610
1611         * platform/Pasteboard.h: Added.
1612         * platform/mac/PasteboardMac.mm: Added.
1613         The pasteboard class follows a singleton pattern
1614         (Pasteboard::generalPasteboard):
1615         (Pasteboard::~Pasteboard):
1616         (Pasteboard::Pasteboard):
1617         (Pasteboard::clearTypes):
1618         (Pasteboard::writeSelection):
1619         (Pasteboard::selectionPasteboardTypes):
1620         (Pasteboard::canSmartReplace):
1621         (Pasteboard::plainText):
1622         (Pasteboard::documentFragment):
1623         
1624         * platform/mac/WebNSAttributedStringExtras.h: Added.
1625         * platform/mac/WebNSAttributedStringExtras.mm: Added.
1626         Added select portions of this file from WebKit because the pasteboard needed the following function:
1627         (-[NSAttributedString _web_attributedStringByStrippingAttachmentCharacters]):
1628
1629 2006-11-28  Justin Garcia  <justin.garcia@apple.com>
1630
1631         Reviewed by harrison
1632
1633         <rdar://problem/4397952>
1634         Cannot select buttons at the end of a document, preventing copy/paste
1635         
1636         There were no VisiblePositions before/after buttons because editingIgnoresContent
1637         returned false for buttons. 
1638
1639         * dom/Position.cpp:
1640         (WebCore::Position::upstream): Fixed a comment.
1641         (WebCore::Position::downstream): Ditto.
1642         * editing/DeleteSelectionCommand.cpp:
1643         (WebCore::DeleteSelectionCommand::initializeStartEnd): Ditto.
1644         * editing/htmlediting.cpp:
1645         (WebCore::editingIgnoresContent): It's unnecessary to prefer renderer 
1646         checks over tag name checks because it seems that a node of a tag name 
1647         that we do not ignore content for can't have a renderer of a type that we do.
1648         (WebCore::canHaveChildrenForEditing): Added selects, buttons, applets, and embeds.
1649         * editing/visible_units.cpp:
1650         (WebCore::previousLinePosition): Migrate to enclosingBlock.  Fixes a bug where the
1651         caret would get stuck moving up/down a line from a caret just before an 
1652         input element.
1653         (WebCore::nextLinePosition): Ditto.
1654
1655 2006-11-28  Geoffrey Garen  <ggaren@apple.com>
1656
1657         Reviewed by Adam.
1658
1659         Fixed <rdar://problem/4844848> REGRESSION: extra cross-library ref/deref 
1660         calls cause .5% PLT regression.
1661         
1662         Changed ref/deref calls to a single 'xxxDestroyed' call. Moved EditorClient
1663         from the Frame to the Page, since it's only responsible for
1664         Webview-level delegate calls.
1665         
1666         I don't really love this design, but it fixes the regression and allows
1667         a single WebKit object to implement multiple client interfaces.
1668         
1669         Layout tests pass.
1670
1671 2006-11-27  Anders Carlsson  <acarlsson@apple.com>
1672
1673         Try fixing the build.
1674         
1675         * platform/graphics/IntRect.cpp:
1676         (WebCore::IntRect::IntRect):
1677
1678 2006-11-27  Beth Dakin  <bdakin@apple.com>
1679
1680         Reviewed by Adam.
1681
1682         Getting rid of some of the critical FIXMEs in ContextMenu.cpp.
1683
1684         * bridge/mac/FrameMac.h: Two new spell checker functions from 
1685         WebKit. (We will be able to delete the WebKit versions once we 
1686         switch over to WebCore context menus.)
1687         * bridge/mac/FrameMac.mm:
1688         (WebCore::FrameMac::isSelectionMisspelled):
1689         (WebCore::core): Convert from NSArray of Strings to a Vector of 
1690         Strings.
1691         (WebCore::FrameMac::guessesForMisspelledSelection):
1692         * loader/FrameLoader.cpp:
1693         (WebCore::FrameLoader::canHandleRequest):
1694         * loader/FrameLoader.h: Make canHandleRequest available through the 
1695         FrameLoader.
1696         * loader/FrameLoaderClient.h: canHandleRequest takes a 
1697         ResourceRequest instead of an NSURLRequest.
1698         * loader/mac/FrameLoaderMac.mm:
1699         (WebCore::FrameLoader::continueAfterNavigationPolicy): Same
1700         * page/Frame.h: New spell checker functions moved to Frame. These 
1701         should be moved some place better some day, but FrameMac currently 
1702         seems to be the place to be for spell checker stuff.
1703         * platform/ContextMenu.cpp:
1704         (WebCore::ContextMenu::populate): Use new FrameLoader and spell 
1705         checking functionality to get rid of two if (true) statements. Also 
1706         add spelling guesses to the editing context menus.
1707
1708 2006-11-27  Alexey Proskuryakov  <ap@webkit.org>
1709
1710         Reviewed by Hyatt.
1711
1712         http://bugs.webkit.org/show_bug.cgi?id=11694
1713         XSLT output method does not default to HTML when the target document is HTML
1714
1715         Test: fast/xsl/default-html.html
1716
1717         * xml/XSLTProcessor.cpp:
1718         (WebCore::XSLTProcessor::transformToString): Make mimeType an input/output parameter, 
1719         serving as a hint when the stylesheet doesn't specify the output method.
1720         (WebCore::XSLTProcessor::transformToFragment): Set mimeType to text/html if the target
1721         document is HTML.
1722
1723 2006-11-27  Oliver Hunt  <oliver@apple.com>
1724
1725         Reviewed by Adam.
1726
1727         Fixes a crash in SVG caused by an attempt to 
1728         perform css overflow clipping by preventing
1729         the css overflow clip from being set in SVG.
1730         
1731         <rdar:/problems/4839568>
1732
1733         * WebCore.xcodeproj/project.pbxproj:
1734         * rendering/RenderForeignObject.cpp:
1735         (WebCore::RenderForeignObject::RenderForeignObject):
1736         * rendering/RenderForeignObject.h:
1737         * rendering/RenderSVGBlock.cpp: Added.
1738         (WebCore::RenderSVGBlock::RenderSVGBlock):
1739         (WebCore::RenderSVGBlock::setStyle):
1740         * rendering/RenderSVGBlock.h: Added.
1741         * rendering/RenderSVGText.cpp:
1742         (WebCore::RenderSVGText::RenderSVGText):
1743         * rendering/RenderSVGText.h:
1744
1745 2006-11-27  Anders Carlsson  <acarlsson@apple.com>
1746
1747         Reviewed by Adam.
1748
1749         Add an explicit IntRect constructor that takes a FloatRect.
1750         
1751         * platform/graphics/IntRect.cpp:
1752         (WebCore::IntRect::IntRect):
1753         * platform/graphics/IntRect.h:
1754
1755 2006-11-27  Ada Chan  <adachan@apple.com>
1756
1757         Reviewed by Adam.
1758
1759         Moved WebCoreCache up to WebKit.
1760
1761         * WebCore.exp:
1762         * WebCore.xcodeproj/project.pbxproj:
1763         * bridge/mac/WebCoreCache.h: Removed.
1764         * bridge/mac/WebCoreCache.mm: Removed.
1765
1766 2006-11-27  Anders Carlsson  <acarlsson@apple.com>
1767
1768         Reviewed by Adam.
1769
1770         Move addMessageToConsole to Chrome.
1771         
1772         * bindings/js/kjs_events.cpp:
1773         (KJS::JSAbstractEventListener::handleEvent):
1774         * bindings/js/kjs_proxy.cpp:
1775         (WebCore::KJSProxy::evaluate):
1776         * bindings/js/kjs_window.cpp:
1777         (KJS::Window::isSafeScript):
1778         (KJS::ScheduledAction::execute):
1779         * bridge/mac/FrameMac.h:
1780         * bridge/mac/FrameMac.mm:
1781         * bridge/mac/WebCoreFrameBridge.h:
1782         * page/Chrome.cpp:
1783         (WebCore::Chrome::addMessageToConsole):
1784         * page/Chrome.h:
1785         * page/ChromeClient.h:
1786         * page/Frame.h:
1787
1788 2006-11-27  Adele Peterson  <adele@apple.com>
1789
1790         Reviewed by Hyatt.
1791
1792         - Fix for http://bugs.webkit.org/show_bug.cgi?id=8062
1793           Caret color in new text field should take background color and foreground color into consideration
1794
1795         * editing/SelectionController.cpp: (WebCore::SelectionController::paintCaret):
1796           Use the foreground color of the rootEditableElement to determine the caret color.  This will work well for text controls in web pages (since the root is always the actual form control)
1797           as well as in editable WebViews, like in Mail, which will just pick up the color from the body element.
1798
1799 2006-11-26  Simon Hausmann  <hausmann@kde.org>
1800
1801         Reviewed by Maciej.
1802
1803         http://bugs.webkit.org/show_bug.cgi?id=11693
1804         Fix the Qt build, adapt to various enum/class renamings.
1805
1806         * kcanvas/device/qt/KRenderingDeviceQt.cpp:
1807         (WebCore::KRenderingDeviceQt::createResource):
1808         (WebCore::KRenderingDeviceQt::createPaintServer):
1809         * kcanvas/device/qt/KRenderingDeviceQt.h:
1810         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
1811         (WebCore::SVGPaintServerLinearGradient::setup):
1812         * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
1813         (WebCore::SVGPaintServer::renderPath):
1814         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
1815         (WebCore::setup):
1816         * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
1817         (WebCore::SVGPaintServerSolid::setup):
1818
1819 2006-11-24  Rob Buis  <buis@kde.org>
1820
1821         Reviewed by Mitz.
1822
1823         http://bugs.webkit.org/show_bug.cgi?id=11666
1824         .getScreenCTM() returns wrong values
1825
1826         Take into account the local transform matrix too and
1827         so fix getScreenCTM/getCTM for <text>.
1828
1829         * ksvg2/svg/SVGStyledTransformableElement.cpp:
1830         (SVGStyledTransformableElement::getCTM):
1831         (SVGStyledTransformableElement::getScreenCTM):
1832         * ksvg2/svg/SVGTextElement.cpp:
1833         (WebCore::SVGTextElement::getScreenCTM):
1834         (WebCore::SVGTextElement::getCTM):
1835         * ksvg2/svg/SVGTransformable.cpp:
1836         (WebCore::SVGTransformable::getCTM):
1837         (WebCore::SVGTransformable::getScreenCTM):
1838         * ksvg2/svg/SVGTransformable.h:
1839
1840 2006-11-22  Rob Buis  <buis@kde.org>
1841
1842         Reviewed by Eric.
1843
1844         http://bugs.webkit.org/show_bug.cgi?id=11661
1845         SVG: stroke not sensitive to mouse events (hit testing fails)
1846
1847         Use mapAbsolutePointToLocal when hit-testing strokes.
1848
1849         * rendering/RenderPath.cpp:
1850         (WebCore::RenderPath::fillContains):
1851         (WebCore::RenderPath::nodeAtPoint):
1852
1853 2006-11-21  Anders Carlsson  <acarlsson@apple.com>
1854
1855         Reviewed by Mitz.
1856
1857         General SVG cleanup. Change some enums to match the style guidelines, use PLATFORM(CG) instead of PLATFORM(MAC).
1858         Remove config.h inluce from AffineTransform.h
1859         
1860         * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp:
1861         (WebCore::KRenderingDeviceQuartz::createPaintServer):
1862         (WebCore::KRenderingDeviceQuartz::createResource):
1863         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1864         (WebCore::sharedSolidPaintServer):
1865         * ksvg2/svg/SVGFilterElement.cpp:
1866         (WebCore::SVGFilterElement::canvasResource):
1867         * ksvg2/svg/SVGLinearGradientElement.cpp:
1868         (WebCore::SVGLinearGradientElement::buildGradient):
1869         * ksvg2/svg/SVGLinearGradientElement.h:
1870         (WebCore::SVGLinearGradientElement::gradientType):
1871         * ksvg2/svg/SVGPatternElement.cpp:
1872         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1873         (WebCore::SVGPatternElement::canvasResource):
1874         * ksvg2/svg/SVGRadialGradientElement.cpp:
1875         (WebCore::SVGRadialGradientElement::buildGradient):
1876         * ksvg2/svg/SVGRadialGradientElement.h:
1877         (WebCore::SVGRadialGradientElement::gradientType):
1878         * platform/graphics/AffineTransform.h:
1879         * platform/graphics/svg/SVGPaintServer.h:
1880         (WebCore::):
1881         * platform/graphics/svg/SVGPaintServerGradient.cpp:
1882         (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
1883         (WebCore::SVGPaintServerGradient::~SVGPaintServerGradient):
1884         * platform/graphics/svg/SVGPaintServerGradient.h:
1885         * platform/graphics/svg/SVGPaintServerLinearGradient.h:
1886         (WebCore::SVGPaintServerLinearGradient::type):
1887         * platform/graphics/svg/SVGPaintServerPattern.h:
1888         (WebCore::SVGPaintServerPattern::type):
1889         * platform/graphics/svg/SVGPaintServerRadialGradient.h:
1890         (WebCore::SVGPaintServerRadialGradient::type):
1891         * platform/graphics/svg/SVGPaintServerSolid.h:
1892         (WebCore::SVGPaintServerSolid::type):
1893         * platform/graphics/svg/SVGResource.h:
1894         (WebCore::):
1895         * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
1896         (WebCore::SVGPaintServer::renderPath):
1897         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
1898         (WebCore::SVGPaintServerGradient::updateQuartzGradientCache):
1899         (WebCore::SVGPaintServerGradient::teardown):
1900         (WebCore::SVGPaintServerGradient::renderPath):
1901         (WebCore::SVGPaintServerGradient::setup):
1902         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
1903         (WebCore::SVGPaintServerPattern::setup):
1904         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
1905         (WebCore::SVGPaintServerSolid::setup):
1906         * rendering/RenderPath.cpp:
1907         (WebCore::RenderPath::paint):
1908         * rendering/SVGInlineFlowBox.cpp:
1909         (WebCore::paintSVGInlineFlow):
1910
1911 2006-11-21  Nikolas Zimmermann  <zimmermann@kde.org>
1912
1913         Reviewed by Oliver.
1914
1915         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11658
1916
1917         Move KRenderingPaintServer* classes to the location
1918         of all other resources (platform/graphics/svg).
1919
1920         Soon the whole platform/graphics/svg stuff will bemoved
1921         into ksvg2/ itself, as discussed with Darin.
1922
1923         * CMakeLists.txt:
1924         * WebCore.xcodeproj/project.pbxproj:
1925         * kcanvas/device/KRenderingDevice.h:
1926         * kcanvas/device/KRenderingPaintServer.h: Removed.
1927         * kcanvas/device/KRenderingPaintServerGradient.cpp: Removed.
1928         * kcanvas/device/KRenderingPaintServerGradient.h: Removed.
1929         * kcanvas/device/KRenderingPaintServerPattern.cpp: Removed.
1930         * kcanvas/device/KRenderingPaintServerPattern.h: Removed.
1931         * kcanvas/device/KRenderingPaintServerSolid.cpp: Removed.
1932         * kcanvas/device/KRenderingPaintServerSolid.h: Removed.
1933         * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp: Removed.
1934         * kcanvas/device/qt/KRenderingPaintServerGradientQt.h: Removed.
1935         * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp: Removed.
1936         * kcanvas/device/qt/KRenderingPaintServerPatternQt.h: Removed.
1937         * kcanvas/device/qt/KRenderingPaintServerQt.cpp: Removed.
1938         * kcanvas/device/qt/KRenderingPaintServerQt.h: Removed.
1939         * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp: Removed.
1940         * kcanvas/device/qt/KRenderingPaintServerSolidQt.h: Removed.
1941         * kcanvas/device/quartz/KCanvasItemQuartz.h: Removed.
1942         * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp:
1943         (WebCore::KRenderingDeviceQuartz::createPaintServer):
1944         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
1945         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.cpp: Removed.
1946         * kcanvas/device/quartz/KRenderingPaintServerQuartz.cpp: Removed.
1947         * kcanvas/device/quartz/KRenderingPaintServerQuartz.h: Removed.
1948         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1949         (WebCore::sharedSolidPaintServer):
1950         (WebCore::KSVGPainterFactory::fillPaintServer):
1951         (WebCore::KSVGPainterFactory::strokePaintServer):
1952         * ksvg2/misc/KCanvasRenderingStyle.h:
1953         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
1954         * ksvg2/svg/SVGFEOffsetElement.cpp:
1955         * ksvg2/svg/SVGGradientElement.cpp:
1956         (WebCore::SVGGradientElement::canvasResource):
1957         (WebCore::SVGGradientElement::resourceNotification):
1958         (WebCore::SVGGradientElement::rebuildStops):
1959         * ksvg2/svg/SVGGradientElement.h:
1960         * ksvg2/svg/SVGLinearGradientElement.cpp:
1961         (WebCore::SVGLinearGradientElement::buildGradient):
1962         * ksvg2/svg/SVGLinearGradientElement.h:
1963         (WebCore::SVGLinearGradientElement::gradientType):
1964         * ksvg2/svg/SVGPatternElement.cpp:
1965         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1966         (WebCore::SVGPatternElement::canvasResource):
1967         * ksvg2/svg/SVGPatternElement.h:
1968         * ksvg2/svg/SVGRadialGradientElement.cpp:
1969         (WebCore::SVGRadialGradientElement::buildGradient):
1970         * ksvg2/svg/SVGRadialGradientElement.h:
1971         (WebCore::SVGRadialGradientElement::gradientType):
1972         * platform/graphics/svg/SVGPaintServer.cpp: Added.
1973         (WebCore::SVGPaintServer::SVGPaintServer):
1974         (WebCore::SVGPaintServer::~SVGPaintServer):
1975         (WebCore::SVGPaintServer::activeClient):
1976         (WebCore::SVGPaintServer::setActiveClient):
1977         (WebCore::SVGPaintServer::isPaintingText):
1978         (WebCore::SVGPaintServer::setPaintingText):
1979         (WebCore::operator<<):
1980         (WebCore::getPaintServerById):
1981         * platform/graphics/svg/SVGPaintServer.h: Added.
1982         (WebCore::):
1983         (WebCore::SVGPaintServer::isPaintServer):
1984         * platform/graphics/svg/SVGPaintServerGradient.cpp: Added.
1985         (WebCore::compareStopOffset):
1986         (WebCore::operator<<):
1987         (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
1988         (WebCore::SVGPaintServerGradient::~SVGPaintServerGradient):
1989         (WebCore::SVGPaintServerGradient::gradientStops):
1990         (WebCore::SVGPaintServerGradient::setGradientStops):
1991         (WebCore::SVGPaintServerGradient::spreadMethod):
1992         (WebCore::SVGPaintServerGradient::setGradientSpreadMethod):
1993         (WebCore::SVGPaintServerGradient::boundingBoxMode):
1994         (WebCore::SVGPaintServerGradient::setBoundingBoxMode):
1995         (WebCore::SVGPaintServerGradient::gradientTransform):
1996         (WebCore::SVGPaintServerGradient::setGradientTransform):
1997         (WebCore::SVGPaintServerGradient::listener):
1998         (WebCore::SVGPaintServerGradient::setListener):
1999         (WebCore::SVGPaintServerGradient::externalRepresentation):
2000         * platform/graphics/svg/SVGPaintServerGradient.h: Added.
2001         (WebCore::):
2002         (WebCore::SVGPaintServerGradient::):
2003         (WebCore::makeGradientStop):
2004         * platform/graphics/svg/SVGPaintServerLinearGradient.cpp: Added.
2005         (WebCore::SVGPaintServerLinearGradient::SVGPaintServerLinearGradient):
2006         (WebCore::SVGPaintServerLinearGradient::~SVGPaintServerLinearGradient):
2007         (WebCore::SVGPaintServerLinearGradient::gradientStart):
2008         (WebCore::SVGPaintServerLinearGradient::setGradientStart):
2009         (WebCore::SVGPaintServerLinearGradient::gradientEnd):
2010         (WebCore::SVGPaintServerLinearGradient::setGradientEnd):
2011         (WebCore::SVGPaintServerLinearGradient::externalRepresentation):
2012         * platform/graphics/svg/SVGPaintServerLinearGradient.h: Added.
2013         (WebCore::SVGPaintServerLinearGradient::type):
2014         * platform/graphics/svg/SVGPaintServerPattern.cpp: Added.
2015         (WebCore::SVGPaintServerPattern::SVGPaintServerPattern):
2016         (WebCore::SVGPaintServerPattern::~SVGPaintServerPattern):
2017         (WebCore::SVGPaintServerPattern::bbox):
2018         (WebCore::SVGPaintServerPattern::setBbox):
2019         (WebCore::SVGPaintServerPattern::boundingBoxMode):
2020         (WebCore::SVGPaintServerPattern::setBoundingBoxMode):
2021         (WebCore::SVGPaintServerPattern::tile):
2022         (WebCore::SVGPaintServerPattern::setTile):
2023         (WebCore::SVGPaintServerPattern::patternTransform):
2024         (WebCore::SVGPaintServerPattern::setPatternTransform):
2025         (WebCore::SVGPaintServerPattern::listener):
2026         (WebCore::SVGPaintServerPattern::setListener):
2027         (WebCore::SVGPaintServerPattern::externalRepresentation):
2028         * platform/graphics/svg/SVGPaintServerPattern.h: Added.
2029         (WebCore::SVGPaintServerPattern::type):
2030         * platform/graphics/svg/SVGPaintServerRadialGradient.cpp: Added.
2031         (WebCore::SVGPaintServerRadialGradient::SVGPaintServerRadialGradient):
2032         (WebCore::SVGPaintServerRadialGradient::~SVGPaintServerRadialGradient):
2033         (WebCore::SVGPaintServerRadialGradient::gradientCenter):
2034         (WebCore::SVGPaintServerRadialGradient::setGradientCenter):
2035         (WebCore::SVGPaintServerRadialGradient::gradientFocal):
2036         (WebCore::SVGPaintServerRadialGradient::setGradientFocal):
2037         (WebCore::SVGPaintServerRadialGradient::gradientRadius):
2038         (WebCore::SVGPaintServerRadialGradient::setGradientRadius):
2039         (WebCore::SVGPaintServerRadialGradient::externalRepresentation):
2040         * platform/graphics/svg/SVGPaintServerRadialGradient.h: Added.
2041         (WebCore::SVGPaintServerRadialGradient::type):
2042         * platform/graphics/svg/SVGPaintServerSolid.cpp: Added.
2043         (WebCore::SVGPaintServerSolid::SVGPaintServerSolid):
2044         (WebCore::SVGPaintServerSolid::~SVGPaintServerSolid):
2045         (WebCore::SVGPaintServerSolid::color):
2046         (WebCore::SVGPaintServerSolid::setColor):
2047         (WebCore::SVGPaintServerSolid::externalRepresentation):
2048         * platform/graphics/svg/SVGPaintServerSolid.h: Added.
2049         (WebCore::SVGPaintServerSolid::type):
2050         * platform/graphics/svg/SVGResource.cpp:
2051         * platform/graphics/svg/SVGResource.h:
2052         * platform/graphics/svg/SVGResourceClipper.cpp:
2053         * platform/graphics/svg/SVGResourceMarker.cpp:
2054         * platform/graphics/svg/SVGResourceMasker.cpp:
2055         * platform/graphics/svg/cg/SVGPaintServerCg.cpp: Added.
2056         (WebCore::SVGPaintServer::draw):
2057         (WebCore::SVGPaintServer::teardown):
2058         (WebCore::SVGPaintServer::renderPath):
2059         (WebCore::SVGPaintServer::strokePath):
2060         (WebCore::SVGPaintServer::clipToStrokePath):
2061         (WebCore::SVGPaintServer::fillPath):
2062         (WebCore::SVGPaintServer::clipToFillPath):
2063         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp: Added.
2064         (WebCore::cgGradientCallback):
2065         (WebCore::CGShadingRefForLinearGradient):
2066         (WebCore::CGShadingRefForRadialGradient):
2067         (WebCore::SVGPaintServerGradient::invalidateCaches):
2068         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
2069         (WebCore::SVGPaintServerGradient::updateQuartzGradientCache):
2070         (WebCore::SVGPaintServerGradient::teardown):
2071         (WebCore::SVGPaintServerGradient::renderPath):
2072         (WebCore::SVGPaintServerGradient::setup):
2073         (WebCore::SVGPaintServerGradient::invalidate):
2074         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp: Added.
2075         (WebCore::patternCallback):
2076         (WebCore::SVGPaintServerPattern::setup):
2077         (WebCore::SVGPaintServerPattern::teardown):
2078         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp: Added.
2079         (WebCore::SVGPaintServerSolid::setup):
2080         * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp: Added.
2081         (WebCore::SVGPaintServerGradient::fillColorArray):
2082         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp: Added.
2083         (WebCore::SVGPaintServerLinearGradient::setup):
2084         * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp: Added.
2085         (WebCore::SVGPaintServerPattern::setup):
2086         * platform/graphics/svg/qt/SVGPaintServerQt.cpp: Added.
2087         (WebCore::SVGPaintServer::setPenProperties):
2088         (WebCore::SVGPaintServer::draw):
2089         (WebCore::SVGPaintServer::teardown):
2090         (WebCore::SVGPaintServer::renderPath):
2091         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp: Added.
2092         (WebCore::setup):
2093         * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp: Added.
2094         (WebCore::SVGPaintServerSolid::setup):
2095         * rendering/RenderPath.cpp:
2096         (WebCore::RenderPath::paint):
2097         * rendering/SVGInlineFlowBox.cpp:
2098         (WebCore::paintSVGInlineFlow):
2099         * rendering/SVGRenderTreeAsText.cpp:
2100         (WebCore::writeStyle):
2101         (WebCore::writeRenderResources):
2102
2103 2006-11-21  Alex Taylor  <darwin@techvisual.co.nz>
2104
2105         Reviewed by Mitz.
2106
2107         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11587
2108
2109         Adds calculations for bottom right radius's position
2110         which was being drawn incorrectly.
2111
2112         * rendering/RenderObject.cpp:
2113         (WebCore::RenderObject::paintBorder):
2114
2115 2006-11-20  Rob Buis  <buis@kde.org>
2116
2117         Reviewed by Maciej.
2118
2119         http://bugs.webkit.org/show_bug.cgi?id=11519
2120         REGRESSION: Disabled file upload control doesn't have disabled appearance, failing fast/forms/file-input-disabled.html
2121
2122         Transport disabled state from DOM element to the shadow
2123         DOM/render object.
2124
2125         * rendering/RenderFileUploadControl.cpp:
2126         (WebCore::RenderFileUploadControl::updateFromElement):
2127         * rendering/RenderTheme.h:
2128
2129 2006-11-20  Anders Carlsson  <acarlsson@apple.com>
2130
2131         Reviewed by Maciej.
2132
2133         * loader/TextResourceDecoder.cpp:
2134         (WebCore::findXMLEncoding):
2135         Use CString instead of DeprecatedCString.
2136         
2137         * platform/CString.cpp:
2138         (WebCore::CString::find):
2139         * platform/CString.h:
2140         (WebCore::CString::data):
2141         Add find method, make data method inline.
2142         
2143         * platform/TextStream.cpp:
2144         * platform/TextStream.h:
2145         Remove DeprecatedCString functions.
2146
2147 2006-11-20  Anders Carlsson  <acarlsson@apple.com>
2148
2149         Reviewed by Maciej.
2150
2151         Use CString instead of DeprecatedCString.
2152         
2153         * html/FormDataList.cpp:
2154         (WebCore::FormDataList::appendString):
2155         (WebCore::fixLineBreaks):
2156         (WebCore::FormDataList::appendFile):
2157
2158 2006-11-20  Samuel Weinig  <sam@webkit.org>
2159
2160         Reviewed by Alexey.
2161
2162         Fix for http://bugs.webkit.org/show_bug.cgi?id=11656
2163         Fix Windows build
2164
2165         * WebCore.vcproj/WebCore/WebCore.vcproj:
2166         * bridge/win/ContextMenuClientWin.h:
2167         * bridge/win/EditorClientWin.h:
2168         * bridge/win/FrameWin.h:
2169         * platform/win/TemporaryLinkStubs.cpp:
2170         (WebCore::ContextMenu::show):
2171         (WebCore::ContextMenuClientWin::copyLinkToClipboard):
2172         (WebCore::ContextMenuClientWin::downloadURL):
2173         (WebCore::ContextMenuClientWin::copyImageToClipboard):
2174         (WebCore::ContextMenuClientWin::lookUpInDictionary):
2175         (WebCore::EditorClientWin::shouldInsertText):
2176         (WebCore::FrameLoader::reload):
2177         (WebCore::FrameWin::ignoreSpelling):
2178         (WebCore::FrameWin::learnSpelling):
2179
2180 2006-11-20  Alexey Proskuryakov  <ap@webkit.org>
2181
2182         Reviewed by Maciej.
2183
2184         http://bugs.webkit.org/show_bug.cgi?id=10736
2185         XMLHttpRequest.responseXML should be null on error
2186
2187         * dom/XMLTokenizer.cpp:
2188         (WebCore::XMLTokenizer::wellFormed):
2189         * dom/XMLTokenizer.h:
2190         (WebCore::Tokenizer::wellFormed):
2191         * dom/Document.cpp:
2192         (WebCore::Document::Document):
2193         (WebCore::Document::implicitClose):
2194         * dom/Document.h:
2195         (WebCore::Document::wellFormed):
2196         Tell whether XMLTokenizer saw an error. Always true (success) for HTML.
2197
2198         * xml/xmlhttprequest.cpp:
2199         (WebCore::XMLHttpRequest::getResponseXML): Set the document to null if it's not well-formed.
2200
2201 2006-11-20  Alexey Proskuryakov  <ap@webkit.org>
2202
2203         Reviewed by Sam Weinig.
2204
2205         http://bugs.webkit.org/show_bug.cgi?id=11633
2206         Implement XMLDocument properties xmlEncoding, xmlVersion, xmlStandalone
2207
2208         * dom/Document.cpp:
2209         (WebCore::Document::Document):
2210         (WebCore::Document::setXMLVersion):
2211         (WebCore::Document::setXMLStandalone):
2212         * dom/Document.h:
2213         (WebCore::Document::xmlEncoding):
2214         (WebCore::Document::xmlVersion):
2215         (WebCore::Document::xmlStandalone):
2216         (WebCore::Document::setXMLEncoding):
2217         * dom/Document.idl:
2218         * dom/XMLTokenizer.cpp:
2219         (WebCore::XMLTokenizer::startDocument):
2220         (WebCore::startDocumentHandler):
2221         (WebCore::XMLTokenizer::initializeParserContext):
2222         Added support for these properties, getting them from an libxml2 context.
2223
2224         * html/HTMLDocument.cpp:
2225         (WebCore::HTMLDocument::HTMLDocument):
2226         HTMLDocument is the only kind of document that doesn't have xmlVersion default to "1.0".
2227
2228         * bindings/scripts/CodeGeneratorJS.pm:
2229         * bindings/scripts/CodeGeneratorObjC.pm:
2230         Added WK_ucfirst to properly uppercase xmlVersion and xmlStandalone.
2231
2232 2006-11-20  Nikolas Zimmermann  <zimmermann@kde.org>
2233
2234         Reviewed by Rob.
2235
2236         Fix Qt/Linux build.
2237
2238         * platform/qt/ContextMenuClientQt.cpp:
2239         (WebCore::ContextMenuClientQt::ref):
2240         (WebCore::ContextMenuClientQt::deref):
2241         (WebCore::ContextMenuClientQt::copyLinkToClipboard):
2242         (WebCore::ContextMenuClientQt::downloadURL):
2243         (WebCore::ContextMenuClientQt::copyImageToClipboard):
2244         (WebCore::ContextMenuClientQt::lookUpInDictionary):
2245         * platform/qt/ContextMenuClientQt.h:
2246         * platform/qt/ContextMenuQt.cpp:
2247         (WebCore::ContextMenu::appendItem):
2248         (WebCore::ContextMenu::show):
2249         (WebCore::ContextMenu::itemCount):
2250         (WebCore::ContextMenu::insertItem):
2251         * platform/qt/EditorClientQt.cpp:
2252         (WebCore::EditorClientQt::shouldInsertText):
2253         * platform/qt/EditorClientQt.h:
2254         * platform/qt/FrameQt.cpp:
2255         (WebCore::FrameQt::ignoreSpelling):
2256         (WebCore::FrameQt::learnSpelling):
2257         * platform/qt/FrameQt.h:
2258         * platform/qt/TemporaryLinkStubs.cpp:
2259         (FrameLoader::reload):
2260
2261 2006-11-20  Samuel Weinig  <sam@webkit.org>
2262
2263         Reviewed by Maciej.
2264
2265         Fix for http://bugs.webkit.org/show_bug.cgi?id=11647
2266         Fix Win32 build
2267
2268         * config.h: add #define NOMINMAX for windows build
2269         * platform/win/FontCacheWin.cpp:
2270         (WebCore::FontCache::createFontPlatformData):
2271         * platform/win/TemporaryLinkStubs.cpp: add definitions for 
2272         new cursors.
2273         (WebCore::aliasCursor):
2274         (WebCore::noDropCursor):
2275         (WebCore::progressCursor):
2276
2277 2006-11-19  Beth Dakin  <bdakin@apple.com>
2278
2279         Reviewed by Adam.
2280
2281         Implementation of actions for the new context menus.
2282
2283         * WebCore.exp:
2284         * WebCore.xcodeproj/project.pbxproj:
2285         * bridge/EditorClient.h: Declaration of shouldInsertText.
2286         * bridge/mac/FrameMac.h: Two new spelling functions.
2287         * bridge/mac/FrameMac.mm:
2288         (WebCore::FrameMac::ignoreSpelling):
2289         (WebCore::FrameMac::learnSpelling):
2290         * editing/Editor.cpp:
2291         (WebCore::Editor::shouldInsertText): Call into the client.
2292         * editing/Editor.h:
2293         * editing/EditorInsertAction.h: Added.
2294         (WebCore::): The WebCore equivalent of WebViewInsertAction. This is 
2295         defined in its own header so that we can use it from Editor.h and 
2296         EditorClient.h without having one of the above include the other.
2297         * page/ContextMenuClient.h: A few currently WebKit-implemented 
2298         function needed for menu actions.
2299         * page/ContextMenuController.cpp:
2300         (WebCore::makeGoogleSearchURL):
2301         (WebCore::ContextMenuController::contextMenuActionSelected): The 
2302         actions!
2303         * page/ContextMenuController.h:
2304         * page/Frame.h: New pure-virtual spelling functions.
2305         * platform/ContextMenu.cpp:
2306         (WebCore::ContextMenu::controller): Get the controller from the 
2307         menu.
2308         * platform/ContextMenu.h:
2309         * platform/mac/ContextMenuMac.mm:
2310         (-[MenuTarget 
2311         forwardContextMenuAction:initWithContextMenuController:WebCore::]): 
2312         Use the controller instead of the menu
2313         (-[MenuTarget WebCore::]):
2314         (-[MenuTarget setMenuController:WebCore::]):
2315         (-[MenuTarget forwardContextMenuAction:]):
2316         (getNSMenuItem):
2317         (ContextMenu::show):
2318         (ContextMenu::hide):
2319
2320 2006-11-19  Simon Hausmann  <hausmann@kde.org>
2321
2322         Reviewed by Zack.
2323
2324         http://bugs.webkit.org/show_bug.cgi?id=11649
2325         Fix CMake files for Qt-only build without KDE cmake files.
2326         Fix Qt/KDE build for the SVG support.
2327         Fix Qt-only build in the resource handler.
2328
2329         * CMakeLists.txt:
2330         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp: Added.
2331         (WebCore::SVGResourceFilter::SVGResourceFilter):
2332         (WebCore::SVGResourceFilter::~SVGResourceFilter):
2333         (WebCore::SVGResourceFilter::prepareFilter):
2334         (WebCore::SVGResourceFilter::applyFilter):
2335         * platform/network/qt/ResourceHandleManager.cpp:
2336         (WebCore::ResourceHandleManager::cancel):
2337         (WebCore::ResourceHandleManager::slotData):
2338         (WebCore::ResourceHandleManager::slotMimetype):
2339         (WebCore::ResourceHandleManager::slotResult):
2340         (WebCore::ResourceHandleManager::deliverJobData):
2341         * platform/network/qt/ResourceHandleManager.h:
2342         * platform/network/qt/ResourceHandleQt.cpp:
2343         * platform/qt/CursorQt.cpp:
2344         (WebCore::noDropCursor):
2345         (WebCore::progressCursor):
2346         (WebCore::aliasCursor):
2347
2348 2006-11-19  Mitz Pettel  <mitz@webkit.org>
2349
2350         Reviewed by Maciej.
2351
2352         - http://bugs.webkit.org/show_bug.cgi?id=11626
2353           Automate test for rdar://problem/4056100
2354
2355         * manual-tests/delete-into-nested-block.html: Removed.
2356
2357 2006-11-19  Nikolas Zimmermann  <zimmermann@kde.org>
2358
2359         Reviewed by Oliver.
2360
2361         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11596
2362
2363         Split up KCanvasFilters & KCanvasFilterQuartz into several
2364         new classes (SVGFEBlend, SVGFEComposite...) and move them
2365         into platform/graphics/svg. This is still a temporary location,
2366         as discussed with Darin; the whole platform/graphics/svg directory
2367         will probably be moved into ksvg2/ in near future.
2368
2369         This finally removes the duplicated enumerations in the svg filter
2370         classes and within kcanvas. ksvg2/ and platform/graphics/svg share
2371         their enums now. As KCanvasFilters is gone now, The kcanvas/ subdirectory
2372         is empty.
2373
2374         * CMakeLists.txt:
2375         * WebCore.xcodeproj/project.pbxproj:
2376         * bindings/scripts/CodeGeneratorJS.pm:
2377         * kcanvas/KCanvasFilters.cpp: Removed.
2378         * kcanvas/KCanvasFilters.h: Removed.
2379         * kcanvas/device/KRenderingDevice.h:
2380         * kcanvas/device/qt/KRenderingDeviceQt.cpp:
2381         (WebCore::KRenderingDeviceQt::createFilterEffect):
2382         * kcanvas/device/qt/KRenderingDeviceQt.h:
2383         * kcanvas/device/quartz/KCanvasFilterQuartz.h: Removed.
2384         * kcanvas/device/quartz/KCanvasFilterQuartz.mm: Removed.
2385         * kcanvas/device/quartz/KCanvasItemQuartz.cpp:
2386         * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp:
2387         (WebCore::KRenderingDeviceQuartz::createResource):
2388         (WebCore::KRenderingDeviceQuartz::createFilterEffect):
2389         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2390         * kcanvas/device/quartz/filters/WKArithmeticFilter.cikernel: Removed.
2391         * kcanvas/device/quartz/filters/WKArithmeticFilter.h: Removed.
2392         * kcanvas/device/quartz/filters/WKArithmeticFilter.m: Removed.
2393         * kcanvas/device/quartz/filters/WKComponentMergeFilter.cikernel: Removed.
2394         * kcanvas/device/quartz/filters/WKComponentMergeFilter.h: Removed.
2395         * kcanvas/device/quartz/filters/WKComponentMergeFilter.m: Removed.
2396         * kcanvas/device/quartz/filters/WKDiffuseLightingFilter.cikernel: Removed.
2397         * kcanvas/device/quartz/filters/WKDiffuseLightingFilter.h: Removed.
2398         * kcanvas/device/quartz/filters/WKDiffuseLightingFilter.m: Removed.
2399         * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.cikernel: Removed.
2400         * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.h: Removed.
2401         * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.m: Removed.
2402         * kcanvas/device/quartz/filters/WKDisplacementMapFilter.cikernel: Removed.
2403         * kcanvas/device/quartz/filters/WKDisplacementMapFilter.h: Removed.
2404         * kcanvas/device/quartz/filters/WKDisplacementMapFilter.m: Removed.
2405         * kcanvas/device/quartz/filters/WKDistantLightFilter.cikernel: Removed.
2406         * kcanvas/device/quartz/filters/WKDistantLightFilter.h: Removed.
2407         * kcanvas/device/quartz/filters/WKDistantLightFilter.m: Removed.
2408         * kcanvas/device/quartz/filters/WKGammaTransferFilter.cikernel: Removed.
2409         * kcanvas/device/quartz/filters/WKGammaTransferFilter.h: Removed.
2410         * kcanvas/device/quartz/filters/WKGammaTransferFilter.m: Removed.
2411         * kcanvas/device/quartz/filters/WKIdentityTransferFilter.h: Removed.
2412         * kcanvas/device/quartz/filters/WKIdentityTransferFilter.m: Removed.
2413         * kcanvas/device/quartz/filters/WKLinearTransferFilter.cikernel: Removed.
2414         * kcanvas/device/quartz/filters/WKLinearTransferFilter.h: Removed.
2415         * kcanvas/device/quartz/filters/WKLinearTransferFilter.m: Removed.
2416         * kcanvas/device/quartz/filters/WKNormalMapFilter.cikernel: Removed.
2417         * kcanvas/device/quartz/filters/WKNormalMapFilter.h: Removed.
2418         * kcanvas/device/quartz/filters/WKNormalMapFilter.m: Removed.
2419         * kcanvas/device/quartz/filters/WKPointLightFilter.cikernel: Removed.
2420         * kcanvas/device/quartz/filters/WKPointLightFilter.h: Removed.
2421         * kcanvas/device/quartz/filters/WKPointLightFilter.m: Removed.
2422         * kcanvas/device/quartz/filters/WKSpecularLightingFilter.cikernel: Removed.
2423         * kcanvas/device/quartz/filters/WKSpecularLightingFilter.h: Removed.
2424         * kcanvas/device/quartz/filters/WKSpecularLightingFilter.m: Removed.
2425         * kcanvas/device/quartz/filters/WKSpotLightFilter.cikernel: Removed.
2426         * kcanvas/device/quartz/filters/WKSpotLightFilter.h: Removed.
2427         * kcanvas/device/quartz/filters/WKSpotLightFilter.m: Removed.
2428         * kcanvas/device/quartz/filters/WKTableTransferFilter.cikernel: Removed.
2429         * kcanvas/device/quartz/filters/WKTableTransferFilter.h: Removed.
2430         * kcanvas/device/quartz/filters/WKTableTransferFilter.m: Removed.
2431         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
2432         (WebCore::SVGComponentTransferFunctionElement::transferFunction):
2433         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
2434         * ksvg2/svg/SVGFEBlendElement.cpp:
2435         (WebCore::SVGFEBlendElement::filterEffect):
2436         * ksvg2/svg/SVGFEBlendElement.h:
2437         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2438         (WebCore::SVGFEColorMatrixElement::filterEffect):
2439         * ksvg2/svg/SVGFEColorMatrixElement.h:
2440         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
2441         (WebCore::SVGFEComponentTransferElement::filterEffect):
2442         * ksvg2/svg/SVGFEComponentTransferElement.h:
2443         * ksvg2/svg/SVGFECompositeElement.cpp:
2444         (WebCore::SVGFECompositeElement::filterEffect):
2445         * ksvg2/svg/SVGFECompositeElement.h:
2446         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2447         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
2448         (WebCore::SVGFEDiffuseLightingElement::updateLights):
2449         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
2450         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2451         (WebCore::SVGFEDisplacementMapElement::stringToChannel):
2452         (WebCore::SVGFEDisplacementMapElement::filterEffect):
2453         * ksvg2/svg/SVGFEDisplacementMapElement.h:
2454         * ksvg2/svg/SVGFEDistantLightElement.cpp:
2455         (WebCore::SVGFEDistantLightElement::lightSource):
2456         * ksvg2/svg/SVGFEDistantLightElement.h:
2457         * ksvg2/svg/SVGFEFloodElement.cpp:
2458         (WebCore::SVGFEFloodElement::filterEffect):
2459         * ksvg2/svg/SVGFEFloodElement.h:
2460         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
2461         (WebCore::SVGFEGaussianBlurElement::filterEffect):
2462         * ksvg2/svg/SVGFEGaussianBlurElement.h:
2463         * ksvg2/svg/SVGFEImageElement.cpp:
2464         (WebCore::SVGFEImageElement::filterEffect):
2465         * ksvg2/svg/SVGFEImageElement.h:
2466         * ksvg2/svg/SVGFELightElement.h:
2467         * ksvg2/svg/SVGFEMergeElement.cpp:
2468         (WebCore::SVGFEMergeElement::filterEffect):
2469         * ksvg2/svg/SVGFEMergeElement.h:
2470         * ksvg2/svg/SVGFEOffsetElement.cpp:
2471         (WebCore::SVGFEOffsetElement::filterEffect):
2472         * ksvg2/svg/SVGFEOffsetElement.h:
2473         * ksvg2/svg/SVGFEPointLightElement.cpp:
2474         (WebCore::SVGFEPointLightElement::lightSource):
2475         * ksvg2/svg/SVGFEPointLightElement.h:
2476         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
2477         (WebCore::SVGFESpecularLightingElement::filterEffect):
2478         (WebCore::SVGFESpecularLightingElement::updateLights):
2479         * ksvg2/svg/SVGFESpecularLightingElement.h:
2480         * ksvg2/svg/SVGFESpotLightElement.cpp:
2481         (WebCore::SVGFESpotLightElement::lightSource):
2482         * ksvg2/svg/SVGFESpotLightElement.h:
2483         * ksvg2/svg/SVGFETileElement.cpp:
2484         (WebCore::SVGFETileElement::filterEffect):
2485         * ksvg2/svg/SVGFETileElement.h:
2486         * ksvg2/svg/SVGFETurbulenceElement.cpp:
2487         (WebCore::SVGFETurbulenceElement::filterEffect):
2488         * ksvg2/svg/SVGFETurbulenceElement.h:
2489         (WebCore::):
2490         * ksvg2/svg/SVGFilterElement.cpp:
2491         (WebCore::SVGFilterElement::canvasResource):
2492         * ksvg2/svg/SVGFilterElement.h:
2493         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
2494         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
2495         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
2496         * platform/graphics/FloatPoint3D.cpp: Added.
2497         (WebCore::FloatPoint3D::FloatPoint3D):
2498         (WebCore::FloatPoint3D::x):
2499         (WebCore::FloatPoint3D::setX):
2500         (WebCore::FloatPoint3D::y):
2501         (WebCore::FloatPoint3D::setY):
2502         (WebCore::FloatPoint3D::z):
2503         (WebCore::FloatPoint3D::setZ):
2504         (WebCore::FloatPoint3D::normalize):
2505         * platform/graphics/FloatPoint3D.h: Added.
2506         * platform/graphics/svg/SVGResourceFilter.cpp: Added.
2507         (WebCore::SVGResourceFilter::clearEffects):
2508         (WebCore::SVGResourceFilter::addFilterEffect):
2509         (WebCore::SVGResourceFilter::filterBBoxForItemBBox):
2510         (WebCore::SVGResourceFilter::externalRepresentation):
2511         (WebCore::getFilterById):
2512         * platform/graphics/svg/SVGResourceFilter.h: Added.
2513         (WebCore::SVGResourceFilter::isFilter):
2514         (WebCore::SVGResourceFilter::filterBoundingBoxMode):
2515         (WebCore::SVGResourceFilter::setFilterBoundingBoxMode):
2516         (WebCore::SVGResourceFilter::effectBoundingBoxMode):
2517         (WebCore::SVGResourceFilter::setEffectBoundingBoxMode):
2518         (WebCore::SVGResourceFilter::filterRect):
2519         (WebCore::SVGResourceFilter::setFilterRect):
2520         * platform/graphics/svg/SVGResourceImage.h:
2521         * platform/graphics/svg/SVGResourceListener.h:
2522         (SVGResourceListener::SVGResourceListener):
2523         (SVGResourceListener::~SVGResourceListener):
2524         * platform/graphics/svg/cg/SVGResourceClipperCg.cpp:
2525         * platform/graphics/svg/cg/SVGResourceFilterCg.mm: Added.
2526         (WebCore::SVGResourceFilter::SVGResourceFilter):
2527         (WebCore::SVGResourceFilter::~SVGResourceFilter):
2528         (WebCore::SVGResourceFilter::prepareFilter):
2529         (WebCore::SVGResourceFilter::applyFilter):
2530         (WebCore::SVGResourceFilter::getCIFilterStack):
2531         (WebCore::SVGResourceFilter::imageForName):
2532         (WebCore::SVGResourceFilter::setImageForName):
2533         (WebCore::SVGResourceFilter::setOutputImage):
2534         (WebCore::alphaImageForImage):
2535         (WebCore::SVGResourceFilter::inputImage):
2536         * platform/graphics/svg/cg/SVGResourceMaskerCg.h: Removed.
2537         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
2538         * platform/graphics/svg/filters/SVGDistantLightSource.h: Added.
2539         (WebCore::SVGDistantLightSource::SVGDistantLightSource):
2540         (WebCore::SVGDistantLightSource::azimuth):
2541         (WebCore::SVGDistantLightSource::elevation):
2542         * platform/graphics/svg/filters/SVGFEBlend.cpp: Added.
2543         (WebCore::SVGFEBlend::in2):
2544         (WebCore::SVGFEBlend::setIn2):
2545         (WebCore::SVGFEBlend::blendMode):
2546         (WebCore::SVGFEBlend::setBlendMode):
2547         (WebCore::operator<<):
2548         (WebCore::SVGFEBlend::externalRepresentation):
2549         * platform/graphics/svg/filters/SVGFEBlend.h: Added.
2550         (WebCore::):
2551         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp: Added.
2552         (WebCore::SVGFEColorMatrix::type):
2553         (WebCore::SVGFEColorMatrix::setType):
2554         (WebCore::SVGFEColorMatrix::values):
2555         (WebCore::SVGFEColorMatrix::setValues):
2556         (WebCore::operator<<):
2557         (WebCore::SVGFEColorMatrix::externalRepresentation):
2558         * platform/graphics/svg/filters/SVGFEColorMatrix.h: Added.
2559         (WebCore::):
2560         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp: Added.
2561         (WebCore::SVGFEComponentTransfer::redFunction):
2562         (WebCore::SVGFEComponentTransfer::setRedFunction):
2563         (WebCore::SVGFEComponentTransfer::greenFunction):
2564         (WebCore::SVGFEComponentTransfer::setGreenFunction):
2565         (WebCore::SVGFEComponentTransfer::blueFunction):
2566         (WebCore::SVGFEComponentTransfer::setBlueFunction):
2567         (WebCore::SVGFEComponentTransfer::alphaFunction):
2568         (WebCore::SVGFEComponentTransfer::setAlphaFunction):
2569         (WebCore::operator<<):
2570         (WebCore::SVGFEComponentTransfer::externalRepresentation):
2571         * platform/graphics/svg/filters/SVGFEComponentTransfer.h: Added.
2572         (WebCore::):
2573         (WebCore::SVGComponentTransferFunction::SVGComponentTransferFunction):
2574         * platform/graphics/svg/filters/SVGFEComposite.cpp: Added.
2575         (WebCore::SVGFEComposite::in2):
2576         (WebCore::SVGFEComposite::setIn2):
2577         (WebCore::SVGFEComposite::operation):
2578         (WebCore::SVGFEComposite::setOperation):
2579         (WebCore::SVGFEComposite::k1):
2580         (WebCore::SVGFEComposite::setK1):
2581         (WebCore::SVGFEComposite::k2):
2582         (WebCore::SVGFEComposite::setK2):
2583         (WebCore::SVGFEComposite::k3):
2584         (WebCore::SVGFEComposite::setK3):
2585         (WebCore::SVGFEComposite::k4):
2586         (WebCore::SVGFEComposite::setK4):
2587         (WebCore::SVGFEComposite::externalRepresentation):
2588         * platform/graphics/svg/filters/SVGFEComposite.h: Added.
2589         (WebCore::):
2590         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp: Added.
2591         (WebCore::SVGFEConvolveMatrix::kernelSize):
2592         (WebCore::SVGFEConvolveMatrix::setKernelSize):
2593         (WebCore::SVGFEConvolveMatrix::kernel):
2594         (WebCore::SVGFEConvolveMatrix::setKernel):
2595         (WebCore::SVGFEConvolveMatrix::divisor):
2596         (WebCore::SVGFEConvolveMatrix::setDivisor):
2597         (WebCore::SVGFEConvolveMatrix::bias):
2598         (WebCore::SVGFEConvolveMatrix::setBias):
2599         (WebCore::SVGFEConvolveMatrix::targetOffset):
2600         (WebCore::SVGFEConvolveMatrix::setTargetOffset):
2601         (WebCore::SVGFEConvolveMatrix::edgeMode):
2602         (WebCore::SVGFEConvolveMatrix::setEdgeMode):
2603         (WebCore::SVGFEConvolveMatrix::kernelUnitLength):
2604         (WebCore::SVGFEConvolveMatrix::setKernelUnitLength):
2605         (WebCore::SVGFEConvolveMatrix::preserveAlpha):
2606         (WebCore::SVGFEConvolveMatrix::setPreserveAlpha):
2607         (WebCore::operator<<):
2608         (WebCore::SVGFEConvolveMatrix::externalRepresentation):
2609         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h: Added.
2610         (WebCore::):
2611         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp: Added.
2612         (WebCore::SVGFEDiffuseLighting::SVGFEDiffuseLighting):
2613         (WebCore::SVGFEDiffuseLighting::~SVGFEDiffuseLighting):
2614         (WebCore::SVGFEDiffuseLighting::lightingColor):
2615         (WebCore::SVGFEDiffuseLighting::setLightingColor):
2616         (WebCore::SVGFEDiffuseLighting::surfaceScale):
2617         (WebCore::SVGFEDiffuseLighting::setSurfaceScale):
2618         (WebCore::SVGFEDiffuseLighting::diffuseConstant):
2619         (WebCore::SVGFEDiffuseLighting::setDiffuseConstant):
2620         (WebCore::SVGFEDiffuseLighting::kernelUnitLengthX):
2621         (WebCore::SVGFEDiffuseLighting::setKernelUnitLengthX):
2622         (WebCore::SVGFEDiffuseLighting::kernelUnitLengthY):
2623         (WebCore::SVGFEDiffuseLighting::setKernelUnitLengthY):
2624         (WebCore::SVGFEDiffuseLighting::lightSource):
2625         (WebCore::SVGFEDiffuseLighting::setLightSource):
2626         (WebCore::SVGFEDiffuseLighting::externalRepresentation):
2627         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h: Added.
2628         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp: Added.
2629         (WebCore::SVGFEDisplacementMap::SVGFEDisplacementMap):
2630         (WebCore::SVGFEDisplacementMap::in2):
2631         (WebCore::SVGFEDisplacementMap::setIn2):
2632         (WebCore::SVGFEDisplacementMap::xChannelSelector):
2633         (WebCore::SVGFEDisplacementMap::setXChannelSelector):
2634         (WebCore::SVGFEDisplacementMap::yChannelSelector):
2635         (WebCore::SVGFEDisplacementMap::setYChannelSelector):
2636         (WebCore::SVGFEDisplacementMap::scale):
2637         (WebCore::SVGFEDisplacementMap::setScale):
2638         (WebCore::operator<<):
2639         (WebCore::SVGFEDisplacementMap::externalRepresentation):
2640         * platform/graphics/svg/filters/SVGFEDisplacementMap.h: Added.
2641         (WebCore::):
2642         * platform/graphics/svg/filters/SVGFEFlood.cpp: Added.
2643         (WebCore::SVGFEFlood::floodColor):
2644         (WebCore::SVGFEFlood::setFloodColor):
2645         (WebCore::SVGFEFlood::floodOpacity):
2646         (WebCore::SVGFEFlood::setFloodOpacity):
2647         (WebCore::SVGFEFlood::externalRepresentation):
2648         * platform/graphics/svg/filters/SVGFEFlood.h: Added.
2649         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp: Added.
2650         (WebCore::SVGFEGaussianBlur::stdDeviationX):
2651         (WebCore::SVGFEGaussianBlur::setStdDeviationX):
2652         (WebCore::SVGFEGaussianBlur::stdDeviationY):
2653         (WebCore::SVGFEGaussianBlur::setStdDeviationY):
2654         (WebCore::SVGFEGaussianBlur::externalRepresentation):
2655         * platform/graphics/svg/filters/SVGFEGaussianBlur.h: Added.
2656         * platform/graphics/svg/filters/SVGFEImage.cpp: Added.
2657         (WebCore::SVGFEImage::SVGFEImage):
2658         (WebCore::SVGFEImage::~SVGFEImage):
2659         (WebCore::SVGFEImage::cachedImage):
2660         (WebCore::SVGFEImage::setCachedImage):
2661         (WebCore::SVGFEImage::externalRepresentation):
2662         * platform/graphics/svg/filters/SVGFEImage.h: Added.
2663         * platform/graphics/svg/filters/SVGFEMerge.cpp: Added.
2664         (WebCore::SVGFEMerge::mergeInputs):
2665         (WebCore::SVGFEMerge::setMergeInputs):
2666         (WebCore::SVGFEMerge::externalRepresentation):
2667         * platform/graphics/svg/filters/SVGFEMerge.h: Added.
2668         * platform/graphics/svg/filters/SVGFEMorphology.cpp: Added.
2669         (WebCore::SVGFEMorphology::morphologyOperator):
2670         (WebCore::SVGFEMorphology::setMorphologyOperator):
2671         (WebCore::SVGFEMorphology::radiusX):
2672         (WebCore::SVGFEMorphology::setRadiusX):
2673         (WebCore::SVGFEMorphology::radiusY):
2674         (WebCore::SVGFEMorphology::setRadiusY):
2675         (WebCore::operator<<):
2676         (WebCore::SVGFEMorphology::externalRepresentation):
2677         * platform/graphics/svg/filters/SVGFEMorphology.h: Added.
2678         (WebCore::):
2679         * platform/graphics/svg/filters/SVGFEOffset.cpp: Added.
2680         (WebCore::SVGFEOffset::dx):
2681         (WebCore::SVGFEOffset::setDx):
2682         (WebCore::SVGFEOffset::dy):
2683         (WebCore::SVGFEOffset::setDy):
2684         (WebCore::SVGFEOffset::externalRepresentation):
2685         * platform/graphics/svg/filters/SVGFEOffset.h: Added.
2686         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp: Added.
2687         (WebCore::SVGFESpecularLighting::SVGFESpecularLighting):
2688         (WebCore::SVGFESpecularLighting::~SVGFESpecularLighting):
2689         (WebCore::SVGFESpecularLighting::lightingColor):
2690         (WebCore::SVGFESpecularLighting::setLightingColor):
2691         (WebCore::SVGFESpecularLighting::surfaceScale):
2692         (WebCore::SVGFESpecularLighting::setSurfaceScale):
2693         (WebCore::SVGFESpecularLighting::specularConstant):
2694         (WebCore::SVGFESpecularLighting::setSpecularConstant):
2695         (WebCore::SVGFESpecularLighting::specularExponent):
2696         (WebCore::SVGFESpecularLighting::setSpecularExponent):
2697         (WebCore::SVGFESpecularLighting::kernelUnitLengthX):
2698         (WebCore::SVGFESpecularLighting::setKernelUnitLengthX):
2699         (WebCore::SVGFESpecularLighting::kernelUnitLengthY):
2700         (WebCore::SVGFESpecularLighting::setKernelUnitLengthY):
2701         (WebCore::SVGFESpecularLighting::lightSource):
2702         (WebCore::SVGFESpecularLighting::setLightSource):
2703         (WebCore::SVGFESpecularLighting::externalRepresentation):
2704         * platform/graphics/svg/filters/SVGFESpecularLighting.h: Added.
2705         * platform/graphics/svg/filters/SVGFETile.h: Added.
2706         * platform/graphics/svg/filters/SVGFETurbulence.cpp: Added.
2707         (WebCore::SVGFETurbulence::type):
2708         (WebCore::SVGFETurbulence::setType):
2709         (WebCore::SVGFETurbulence::baseFrequencyY):
2710         (WebCore::SVGFETurbulence::setBaseFrequencyY):
2711         (WebCore::SVGFETurbulence::baseFrequencyX):
2712         (WebCore::SVGFETurbulence::setBaseFrequencyX):
2713         (WebCore::SVGFETurbulence::seed):
2714         (WebCore::SVGFETurbulence::setSeed):
2715         (WebCore::SVGFETurbulence::numOctaves):
2716         (WebCore::SVGFETurbulence::setNumOctaves):
2717         (WebCore::SVGFETurbulence::stitchTiles):
2718         (WebCore::SVGFETurbulence::setStitchTiles):
2719         (WebCore::operator<<):
2720         (WebCore::SVGFETurbulence::externalRepresentation):
2721         * platform/graphics/svg/filters/SVGFETurbulence.h: Added.
2722         (WebCore::):
2723         * platform/graphics/svg/filters/SVGFilterEffect.cpp: Added.
2724         (WebCore::SVGFilterEffect::subRegion):
2725         (WebCore::SVGFilterEffect::setSubRegion):
2726         (WebCore::SVGFilterEffect::in):
2727         (WebCore::SVGFilterEffect::setIn):
2728         (WebCore::SVGFilterEffect::result):
2729         (WebCore::SVGFilterEffect::setResult):
2730         (WebCore::SVGFilterEffect::externalRepresentation):
2731         (WebCore::operator<<):
2732         * platform/graphics/svg/filters/SVGFilterEffect.h: Added.
2733         (WebCore::):
2734         (WebCore::SVGFilterEffect::SVGFilterEffect):
2735         (WebCore::SVGFilterEffect::~SVGFilterEffect):
2736         (WebCore::SVGFilterEffect::effectType):
2737         * platform/graphics/svg/filters/SVGLightSource.cpp: Added.
2738         (WebCore::operator<<):
2739         (WebCore::SVGPointLightSource::externalRepresentation):
2740         (WebCore::SVGSpotLightSource::externalRepresentation):
2741         (WebCore::SVGDistantLightSource::externalRepresentation):
2742         * platform/graphics/svg/filters/SVGLightSource.h: Added.
2743         (WebCore::):
2744         (WebCore::SVGLightSource::SVGLightSource):
2745         (WebCore::SVGLightSource::~SVGLightSource):
2746         (WebCore::SVGLightSource::type):
2747         * platform/graphics/svg/filters/SVGPointLightSource.h: Added.
2748         (WebCore::SVGPointLightSource::SVGPointLightSource):
2749         (WebCore::SVGPointLightSource::position):
2750         * platform/graphics/svg/filters/SVGSpotLightSource.h: Added.
2751         (WebCore::SVGSpotLightSource::SVGSpotLightSource):
2752         (WebCore::SVGSpotLightSource::position):
2753         (WebCore::SVGSpotLightSource::direction):
2754         (WebCore::SVGSpotLightSource::specularExponent):
2755         (WebCore::SVGSpotLightSource::limitingConeAngle):
2756         * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm: Added.
2757         (WebCore::SVGFEBlend::getCIFilter):
2758         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm: Added.
2759         (WebCore::SVGFEColorMatrix::getCIFilter):
2760         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm: Added.
2761         (WebCore::genImageFromTable):
2762         (WebCore::setParametersForComponentFunc):
2763         (WebCore::filterForComponentFunc):
2764         (WebCore::getFilterForFunc):
2765         (WebCore::SVGFEComponentTransfer::getFunctionFilter):
2766         (WebCore::SVGFEComponentTransfer::getCIFilter):
2767         * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm: Added.
2768         (WebCore::SVGFEComposite::getCIFilter):
2769         * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm: Added.
2770         (WebCore::SVGFEDiffuseLighting::getCIFilter):
2771         * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm: Added.
2772         (WebCore::SVGFEDisplacementMap::getCIFilter):
2773         * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm: Added.
2774         (WebCore::SVGFEFlood::getCIFilter):
2775         * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm: Added.
2776         (WebCore::SVGFEGaussianBlur::getCIFilter):
2777         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h: Added.
2778         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm: Added.
2779         (WebCore::getVectorForChannel):
2780         (WebCore::ciColor):
2781         (WebCore::getPointLightVectors):
2782         (WebCore::getLightVectors):
2783         (WebCore::getNormalMap):
2784         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm: Added.
2785         (WebCore::SVGFEImage::getCIFilter):
2786         * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm: Added.
2787         (WebCore::SVGFEMerge::getCIFilter):
2788         * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm: Added.
2789         (WebCore::SVGFEOffset::getCIFilter):
2790         * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm: Added.
2791         (WebCore::SVGFESpecularLighting::getCIFilter):
2792         * platform/graphics/svg/filters/cg/SVGFETileCg.mm: Added.
2793         (WebCore::SVGFETile::getCIFilter):
2794         * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm: Added.
2795         (WebCore::SVGFilterEffect::getCIFilter):
2796         * rendering/RenderPath.cpp:
2797         (WebCore::RenderPath::getAbsoluteRepaintRect):
2798         (WebCore::RenderPath::paint):
2799         * rendering/RenderSVGContainer.cpp:
2800         (WebCore::RenderSVGContainer::paint):
2801         (WebCore::RenderSVGContainer::getAbsoluteRepaintRect):
2802         * rendering/RenderSVGImage.cpp:
2803         (WebCore::RenderSVGImage::paint):
2804         (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
2805         * rendering/SVGInlineFlowBox.cpp:
2806         (WebCore::paintSVGInlineFlow):
2807
2808 2006-11-18  Rob Buis  <buis@kde.org>
2809
2810         Reviewed by Maciej.
2811
2812         http://bugs.webkit.org/show_bug.cgi?id=11321
2813         Element with :target pseudo-class still matched after fragment identifier change
2814
2815         Make sure the page does a style recalculation and possible rendering
2816         when navigating back from a page with an anchor to a page without
2817         an anchor.
2818
2819         * loader/FrameLoader.cpp:
2820         (WebCore::FrameLoader::gotoAnchor):
2821
2822 2006-11-18  Don Gibson  <dgibson77@gmail.com>
2823
2824         Reviewed by Sam Weinig.
2825
2826         http://bugs.webkit.org/show_bug.cgi?id=11634:
2827         Fix segfault on startup for Windows build.  Also fix segfault when
2828         typing in a URL.
2829         Clean up some of the style of the patch that landed in r17816.
2830
2831         * WebCore.vcproj/WebCore/WebCore.vcproj:
2832         * bridge/win/ChromeClientWin.h:
2833         (WebCore::ChromeClientWin::~ChromeClientWin):
2834         (WebCore::ChromeClientWin::ref):
2835         (WebCore::ChromeClientWin::deref):
2836         * bridge/win/ContextMenuClientWin.h:
2837         (WebCore::ContextMenuClientWin::~ContextMenuClientWin):
2838         (WebCore::ContextMenuClientWin::ref):
2839         (WebCore::ContextMenuClientWin::deref):
2840         * bridge/win/EditorClientWin.h:
2841         (WebCore::EditorClientWin::~EditorClientWin):
2842         (WebCore::EditorClientWin::ref):
2843         (WebCore::EditorClientWin::deref):
2844         * bridge/win/FrameWin.cpp:
2845         (WebCore::FrameWin::FrameWin):
2846         * bridge/win/FrameWin.h:
2847         (WebCore::Win):
2848         * loader/win/FrameLoaderClientWin.h: Added.
2849         (WebCore::FrameLoaderClientWin::~FrameLoaderClientWin):
2850         (WebCore::FrameLoaderClientWin::ref):
2851         (WebCore::FrameLoaderClientWin::deref):
2852         * platform/win/TemporaryLinkStubs.cpp:
2853         (WebCore::ChromeClientWin::createWindow):
2854         (WebCore::ChromeClientWin::createModalDialog):
2855         (WebCore::EditorClientWin::selectWordBeforeMenuEvent):
2856         (WebCore::EditorClientWin::isEditable):
2857         (WebCore::EditorClientWin::shouldBeginEditing):
2858         (WebCore::EditorClientWin::shouldEndEditing):
2859         (WebCore::EditorClientWin::shouldApplyStyle):
2860         (WebCore::EditorClientWin::didBeginEditing):
2861         (WebCore::EditorClientWin::respondToChangedContents):
2862         (WebCore::EditorClientWin::didEndEditing):
2863         (WebCore::EditorClientWin::registerCommandForUndo):
2864         (WebCore::EditorClientWin::registerCommandForRedo):
2865         (WebCore::EditorClientWin::clearUndoRedoOperations):
2866         (WebCore::EditorClientWin::canUndo):
2867         (WebCore::EditorClientWin::canRedo):
2868         (WebCore::EditorClientWin::undo):
2869         (WebCore::EditorClientWin::redo):
2870         (WebCore::FrameLoader::createFrame):
2871         (WebCore::FrameLoader::createPlugin):
2872         (WebCore::FrameLoaderClientWin::hasWebView):
2873         (WebCore::FrameLoaderClientWin::hasFrameView):
2874         (WebCore::FrameLoaderClientWin::hasBackForwardList):
2875         (WebCore::FrameLoaderClientWin::resetBackForwardList):
2876         (WebCore::FrameLoaderClientWin::provisionalItemIsTarget):
2877         (WebCore::FrameLoaderClientWin::loadProvisionalItemFromPageCache):
2878         (WebCore::FrameLoaderClientWin::invalidateCurrentItemPageCache):
2879         (WebCore::FrameLoaderClientWin::privateBrowsingEnabled):
2880         (WebCore::FrameLoaderClientWin::makeDocumentView):
2881         (WebCore::FrameLoaderClientWin::makeRepresentation):
2882         (WebCore::FrameLoaderClientWin::forceLayout):
2883         (WebCore::FrameLoaderClientWin::forceLayoutForNonHTML):
2884         (WebCore::FrameLoaderClientWin::updateHistoryForCommit):
2885         (WebCore::FrameLoaderClientWin::updateHistoryForBackForwardNavigation):
2886         (WebCore::FrameLoaderClientWin::updateHistoryForReload):
2887         (WebCore::FrameLoaderClientWin::updateHistoryForStandardLoad):
2888         (WebCore::FrameLoaderClientWin::updateHistoryForInternalLoad):
2889         (WebCore::FrameLoaderClientWin::updateHistoryAfterClientRedirect):
2890         (WebCore::FrameLoaderClientWin::setCopiesOnScroll):
2891         (WebCore::FrameLoaderClientWin::tokenForLoadErrorReset):
2892         (WebCore::FrameLoaderClientWin::resetAfterLoadError):
2893         (WebCore::FrameLoaderClientWin::doNotResetAfterLoadError):
2894         (WebCore::FrameLoaderClientWin::willCloseDocument):
2895         (WebCore::FrameLoaderClientWin::detachedFromParent1):
2896         (WebCore::FrameLoaderClientWin::detachedFromParent2):
2897         (WebCore::FrameLoaderClientWin::detachedFromParent3):
2898         (WebCore::FrameLoaderClientWin::detachedFromParent4):
2899         (WebCore::FrameLoaderClientWin::loadedFromPageCache):
2900         (WebCore::FrameLoaderClientWin::dispatchDidHandleOnloadEvents):
2901         (WebCore::FrameLoaderClientWin::dispatchDidReceiveServerRedirectForProvisionalLoad):
2902         (WebCore::FrameLoaderClientWin::dispatchDidCancelClientRedirect):
2903         (WebCore::FrameLoaderClientWin::dispatchWillPerformClientRedirect):
2904         (WebCore::FrameLoaderClientWin::dispatchDidChangeLocationWithinPage):
2905         (WebCore::FrameLoaderClientWin::dispatchWillClose):
2906         (WebCore::FrameLoaderClientWin::dispatchDidReceiveIcon):
2907         (WebCore::FrameLoaderClientWin::dispatchDidStartProvisionalLoad):
2908         (WebCore::FrameLoaderClientWin::dispatchDidReceiveTitle):
2909         (WebCore::FrameLoaderClientWin::dispatchDidCommitLoad):
2910         (WebCore::FrameLoaderClientWin::dispatchDidFinishLoad):
2911         (WebCore::FrameLoaderClientWin::dispatchDidFirstLayout):
2912         (WebCore::FrameLoaderClientWin::dispatchShow):
2913         (WebCore::FrameLoaderClientWin::cancelPolicyCheck):
2914         (WebCore::FrameLoaderClientWin::dispatchWillSubmitForm):
2915         (WebCore::FrameLoaderClientWin::dispatchDidLoadMainResource):
2916         (WebCore::FrameLoaderClientWin::clearLoadingFromPageCache):
2917         (WebCore::FrameLoaderClientWin::isLoadingFromPageCache):
2918         (WebCore::FrameLoaderClientWin::revertToProvisionalState):
2919         (WebCore::FrameLoaderClientWin::clearUnarchivingState):
2920         (WebCore::FrameLoaderClientWin::progressStarted):
2921         (WebCore::FrameLoaderClientWin::progressCompleted):
2922         (WebCore::FrameLoaderClientWin::setMainFrameDocumentReady):
2923         (WebCore::FrameLoaderClientWin::willChangeTitle):
2924         (WebCore::FrameLoaderClientWin::didChangeTitle):
2925         (WebCore::FrameLoaderClientWin::finishedLoading):
2926         (WebCore::FrameLoaderClientWin::finalSetupForReplace):
2927         (WebCore::FrameLoaderClientWin::setDefersLoading):
2928         (WebCore::FrameLoaderClientWin::isArchiveLoadPending):
2929         (WebCore::FrameLoaderClientWin::cancelPendingArchiveLoad):
2930         (WebCore::FrameLoaderClientWin::clearArchivedResources):
2931         (WebCore::FrameLoaderClientWin::canShowMIMEType):
2932         (WebCore::FrameLoaderClientWin::representationExistsForURLScheme):
2933         (WebCore::FrameLoaderClientWin::generatedMIMETypeForURLScheme):
2934         (WebCore::FrameLoaderClientWin::frameLoadCompleted):
2935         (WebCore::FrameLoaderClientWin::restoreScrollPositionAndViewState):
2936         (WebCore::FrameLoaderClientWin::provisionalLoadStarted):
2937         (WebCore::FrameLoaderClientWin::shouldTreatURLAsSameAsCurrent):
2938         (WebCore::FrameLoaderClientWin::addHistoryItemForFragmentScroll):
2939         (WebCore::FrameLoaderClientWin::didFinishLoad):
2940         (WebCore::FrameLoaderClientWin::prepareForDataSourceReplacement):
2941         (WebCore::FrameLoaderClientWin::setTitle):
2942         (WebCore::FrameLoaderClientWin::userAgent):
2943
2944 2006-11-18  Alexey Proskuryakov  <ap@webkit.org>
2945
2946         Reviewed by Rob (yay!).
2947
2948         http://bugs.webkit.org/show_bug.cgi?id=11640
2949         XMLHttpRequest produces undefined:undefined HTTP authentication
2950
2951         * bindings/js/JSXMLHttpRequest.cpp:
2952         (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
2953         Treat undefined credentials as missing ones.
2954
2955 2006-11-17  Lars Naesbye Christensen  <larsnaesbye@stud.ku.dk>
2956
2957         Reviewed by Tim H.
2958
2959         http://bugs.webkit.org/show_bug.cgi?id=11638
2960         [CSS 2.1+3] add support for alias, progress, no-drop and not-allowed cursor styles
2961
2962         * Resources/aliasCursor.png: Added.
2963         * Resources/noDropCursor.png: Added.
2964         * Resources/progressCursor.png: Added.
2965         * WebCore.xcodeproj/project.pbxproj:
2966         * css/CSSComputedStyleDeclaration.cpp:
2967         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2968         * css/CSSValueKeywords.in:
2969         * manual-tests/cursor.html:
2970         * page/EventHandler.cpp:
2971         (WebCore::selectCursor):
2972         * platform/Cursor.h:
2973         * platform/mac/CursorMac.mm:
2974         (WebCore::handCursor):
2975         (WebCore::aliasCursor):
2976         (WebCore::progressCursor):
2977         (WebCore::noDropCursor):
2978         * rendering/RenderStyle.h:
2979         (WebCore::):
2980
2981 2006-11-18  Steve Falkenburg  <sfalken@apple.com>
2982
2983         Reviewed by Adam.
2984
2985         Properly adjust CFAbsoluteTime to time_t to fix date calculations.
2986         
2987         Compare lastModified w/ MAX_TIME_T when setting last modified date
2988         instead of comparing expiration against MAX_TIME_T.
2989
2990         * platform/network/cf/ResourceResponseCFNet.cpp:
2991         (WebCore::getResourceResponse): Add kCFAbsoluteTimeIntervalSince1970 in assignment
2992
2993 2006-11-17  Anders Carlsson  <acarlsson@apple.com>
2994
2995         Reviewed by Geoff.
2996
2997         More conversions from DeprecatedValueList to Vector and HashSet.
2998         
2999         * css/CSSValueList.cpp:
3000         (WebCore::CSSValueList::~CSSValueList):
3001         (WebCore::CSSValueList::append):
3002         (WebCore::CSSValueList::cssText):
3003         * css/CSSValueList.h:
3004         (WebCore::CSSValueList::length):
3005         (WebCore::CSSValueList::item):
3006         * dom/Document.cpp:
3007         (WebCore::Document::attachNodeIterator):
3008         (WebCore::Document::notifyBeforeNodeRemoval):
3009         * dom/Document.h:
3010         * ksvg2/svg/SVGGradientElement.cpp:
3011         (WebCore::SVGGradientElement::notifyAttributeChange):
3012         * ksvg2/svg/SVGPatternElement.cpp:
3013         (WebCore::SVGPatternElement::notifyClientsToRepaint):
3014         * platform/graphics/svg/SVGResource.cpp:
3015         (WebCore::SVGResource::invalidate):
3016         (WebCore::SVGResource::addClient):
3017         * platform/graphics/svg/SVGResource.h:
3018         * rendering/RenderBlock.h:
3019
3020 === Safari-521.31 ===
3021
3022 2006-11-17  Timothy Hatcher  <timothy@apple.com>
3023
3024         Reviewed by Harrison.
3025
3026         <rdar://problem/4796730> table deletion elements are serialized out if they are visible when innerHTML or a Web Archive is made
3027
3028         Disable the delete button controller when cloning nodes, Mail does this before saving a draft.
3029
3030         * dom/ContainerNode.cpp:
3031         (WebCore::ContainerNode::cloneChildNodes):
3032         * editing/markup.cpp:
3033         (WebCore::createFragmentFromNodes):
3034
3035 2006-11-17  Justin Garcia  <justin.garcia@apple.com>
3036
3037         Reviewed by harrison
3038         
3039         <rdar://problem/4237467> REGRESSION: Pasting word from quoted text quotes the destination
3040         <rdar://problem/4017358> quoted text is wrong color, when pasted as quotation
3041
3042         * editing/ReplaceSelectionCommand.cpp:
3043         (WebCore::isMailPasteAsQuotationNode): Added.  Checks for the node
3044         that Mail wraps around an incoming fragment when it wants it to be pasted
3045         with quoting (no merging should be done).
3046         (WebCore::ReplaceSelectionCommand::removeNodePreservingChildren): Added
3047         this virtual method in order to adjust the nodes that ReplaceSelectionCommand
3048         tracks.
3049         (WebCore::ReplaceSelectionCommand::shouldMerge): Don't merge from content
3050         inside a Mail Paste as Quotation node.  Allow merging from Mail blockquotes.
3051         (WebCore::ReplaceSelectionCommand::removeRedundantStyles): When pasting into
3052         a Mail blockquote, we ignore the parts of the source document's default style
3053         that are overriden by styles from the Mail blockquote.  This is necessary in order
3054         for text that's black (because black is the source document's default font color) 
3055         to appear blue/green/whatever when it's pasted into a Mail blockquote.
3056         (WebCore::ReplaceSelectionCommand::handlePasteAsQuotationNode): Turn an inserted
3057         Mail Paste as Quotation node into a normal Mail blockquote.  This will prevent
3058         a copied blockquote that was inserted into the document using Paste as Quotation
3059         from triggering Paste as Quotation behavior when it's pasted.
3060         (WebCore::ReplaceSelectionCommand::doApply): Call the new/altered methods.
3061         * editing/ReplaceSelectionCommand.h:
3062         * editing/markup.cpp:
3063         (WebCore::styleFromMatchedRulesForElement): Put this code into a subroutine.
3064         (WebCore::removeEnclosingMailBlockquoteStyle): Added.
3065         (WebCore::startMarkup): When wrapping text nodes in style spans, leave out
3066         styles that Mail blockquotes contribute, so that Mail blockquote styles can
3067         be differentiated from styles that the user has applied.  When creating markup
3068         for elements, do the same thing.
3069         (WebCore::createMarkup): Call the new subroutine.
3070
3071 2006-11-17  Rob Buis  <buis@kde.org>
3072
3073         Reviewed by Mitz.
3074
3075         http://bugs.webkit.org/show_bug.cgi?id=11635
3076         Bug 11635: Fix potential issue with non-xslt build
3077
3078         Fix the issue and do style guideline corrections.
3079
3080         * dom/ProcessingInstruction.cpp:
3081         (WebCore::ProcessingInstruction::checkStyleSheet):
3082         (WebCore::ProcessingInstruction::sheetLoaded):
3083         (WebCore::ProcessingInstruction::setCSSStyleSheet):
3084         (WebCore::ProcessingInstruction::setXSLStyleSheet):
3085         (WebCore::ProcessingInstruction::parseStyleSheet):
3086
3087 2006-11-17  Timothy Hatcher  <timothy@apple.com>
3088
3089         Reviewed by Harrison.
3090
3091         <rdar://problem/4843131> text entry is slow inside element that has the deletion rectangle around it
3092
3093         Only disable/enable the delete button inside applyCommand() to prevent slowing down typing.
3094         This reintroduces <rdar://problem/4796657> table deletion outline does not always follow the table size as editing occurs inside
3095
3096         * editing/EditCommand.cpp:
3097         (WebCore::EditCommand::apply):
3098         (WebCore::EditCommand::unapply):
3099         (WebCore::EditCommand::reapply):
3100         (WebCore::applyCommand):
3101         * editing/EditCommand.h:
3102
3103 2006-11-17  Zack Rusin  <zack@kde.org>
3104
3105         Reviewed by Mitz. Landed by Niko.
3106
3107         Making platform Qt/KDE compile and work after
3108         the latest api changes. Reported as
3109         http://bugs.webkit.org/show_bug.cgi?id=11617
3110
3111         * CMakeLists.txt:
3112         * page/qt/EventHandlerQt.cpp: Added.
3113         (WebCore::isKeyboardOptionTab):
3114         (WebCore::EventHandler::tabsToLinks):
3115         (WebCore::EventHandler::tabsToAllControls):
3116         (WebCore::EventHandler::freeClipboard):
3117         (WebCore::EventHandler::focusDocumentView):
3118         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
3119         (WebCore::EventHandler::passMouseDownEventToWidget):
3120         (WebCore::EventHandler::lastEventIsMouseUp):
3121         (WebCore::EventHandler::dragHysteresisExceeded):
3122         (WebCore::EventHandler::handleDrag):
3123         (WebCore::EventHandler::handleMouseUp):
3124         (WebCore::EventHandler::passSubframeEventToSubframe):
3125         (WebCore::EventHandler::passWheelEventToWidget):
3126         (WebCore::EventHandler::shouldDragAutoNode):
3127         (WebCore::EventHandler::dispatchDragSrcEvent):
3128         (WebCore::EventHandler::passMousePressEventToSubframe):
3129         (WebCore::EventHandler::passMouseMoveEventToSubframe):
3130         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
3131         (WebCore::EventHandler::passWheelEventToSubframe):
3132         (WebCore::EventHandler::passMousePressEventToScrollbar):
3133         * platform/ContextMenu.h:
3134         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
3135         (WebCore::SVGResourceClipper::applyClip):
3136         * platform/qt/ContextMenuClientQt.cpp: Added.
3137         (WebCore::ContextMenuClientQt::addCustomContextMenuItems):
3138         (WebCore::ContextMenuClientQt::ref):
3139         (WebCore::ContextMenuClientQt::deref):
3140         * platform/qt/ContextMenuClientQt.h: Added.
3141         * platform/qt/ContextMenuQt.cpp: Added.
3142         (WebCore::ContextMenu::appendItem):
3143         (WebCore::ContextMenu::itemCount):
3144         (WebCore::ContextMenu::insertItem):
3145         (WebCore::ContextMenu::setPlatformMenuDescription):
3146         * platform/qt/EditorClientQt.cpp:
3147         (WebCore::EditorClientQt::selectWordBeforeMenuEvent):
3148         (WebCore::EditorClientQt::isEditable):
3149         (WebCore::EditorClientQt::registerCommandForUndo):
3150         (WebCore::EditorClientQt::registerCommandForRedo):
3151         (WebCore::EditorClientQt::clearUndoRedoOperations):
3152         (WebCore::EditorClientQt::canUndo):
3153         (WebCore::EditorClientQt::canRedo):
3154         (WebCore::EditorClientQt::undo):
3155         (WebCore::EditorClientQt::redo):
3156         * platform/qt/EditorClientQt.h:
3157         * platform/qt/ScrollViewCanvasQt.cpp:
3158         (WebCore::ScrollViewCanvasQt::mousePressEvent):
3159         * platform/qt/TemporaryLinkStubs.cpp:
3160         (FrameView::updateBorder):
3161
3162 2006-11-17  David Harrison  <harrison@apple.com>
3163
3164         Reviewed by Adele.
3165
3166         <rdar://problem/4799899> Frame::revealSelection() only scrolls the startContainer's layer
3167
3168         Replace an assert with a fixme that refers to this bug.
3169         
3170         * page/Frame.cpp:
3171         (WebCore::Frame::revealSelection):
3172
3173 2006-11-16  Rob Buis  <buis@kde.org>
3174
3175         Reviewed and landed by Brady
3176
3177         Fixes http://bugs.webkit.org/show_bug.cgi?id=11590 -
3178         REGRESSION (r17726-r17742): Wikipedia page intermittently loads but doesn't render
3179         Fix the regression by setting m_loadCompleted correctly.
3180
3181         * css/CSSStyleSheet.cpp:
3182         (WebCore::CSSStyleSheet::checkLoaded):
3183         * dom/Node.h:
3184         (WebCore::Node::sheetLoaded):
3185         * dom/ProcessingInstruction.cpp:
3186         (WebCore::ProcessingInstruction::sheetLoaded):
3187         * dom/ProcessingInstruction.h:
3188         * html/HTMLLinkElement.cpp:
3189         (WebCore::HTMLLinkElement::sheetLoaded):
3190         * html/HTMLLinkElement.h:
3191         * html/HTMLStyleElement.cpp:
3192         (WebCore::HTMLStyleElement::sheetLoaded):
3193         * html/HTMLStyleElement.h:
3194
3195 2006-11-16  David Harrison  <harrison@apple.com>
3196
3197         Reviewed by Beth.
3198
3199         <rdar://problem/4056100> REGRESSION (Tiger): Deleting top part of reply email leaves fails to clear text at end of message
3200
3201         The problem was triggered by the fact that the parent div was changing both
3202         in position and in height. The renderer normally bifurcates its logic for
3203         x-position changes vs height changes.
3204
3205         Call repaintDuringLayoutIfMoved() with old rect (incl. width and height) instead of just the old position.
3206
3207         Test added:
3208         * manual-tests/delete-into-nested-block.html
3209         
3210         * rendering/RenderBlock.cpp:
3211         (WebCore::RenderBlock::layoutBlockChildren):
3212         (WebCore::RenderBlock::positionNewFloats):
3213         * rendering/RenderBox.cpp:
3214         (WebCore::RenderBox::repaintDuringLayoutIfMoved):
3215         * rendering/RenderBox.h:
3216         * rendering/RenderFlexibleBox.cpp:
3217         (WebCore::RenderFlexibleBox::placeChild):
3218         * rendering/RenderObject.cpp:
3219         (WebCore::RenderObject::repaintDuringLayoutIfMoved):
3220         * rendering/RenderObject.h:
3221         * rendering/RenderTableSection.cpp:
3222         (WebCore::RenderTableSection::layoutRows):
3223
3224 2006-11-16  Adele Peterson  <adele@apple.com>
3225
3226         Reviewed by Adam.
3227
3228         Slider cleanup.  Let the theme set the size of the slider thumb.
3229
3230         * rendering/RenderSlider.cpp:
3231         (WebCore::RenderSlider::setStyle): Moving the thumb's appearance adjustment to createThumbStyle.
3232         (WebCore::RenderSlider::createThumbStyle):
3233         (WebCore::RenderSlider::layout): Let the theme set the size of the thumb.
3234         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustSliderThumbSize):  Added.
3235         * rendering/RenderTheme.h: ditto.
3236         * rendering/RenderThemeMac.h: ditto.
3237         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::adjustSliderThumbSize): ditto.
3238
3239 2006-11-15  Anders Carlsson  <acarlsson@apple.com>
3240
3241         Reviewed by Darin.
3242
3243         Use Vector instead of DeprecatedValueList in a few places.
3244         
3245         * bindings/js/kjs_dom.cpp:
3246         (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
3247         (KJS::DOMNamedNodesCollection::lengthGetter):
3248         (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
3249         * bindings/js/kjs_dom.h:
3250         * bindings/js/kjs_html.cpp:
3251         (KJS::JSHTMLDocument::namedItemGetter):
3252         (KJS::JSHTMLElement::classInfo):
3253         (KJS::JSHTMLElement::accessors):
3254         (KJS::JSHTMLCollection::getNamedItems):
3255         * bindings/objc/DOM.mm:
3256         * bridge/mac/FrameMac.mm:
3257         (WebCore::FrameMac::dashboardRegionsDictionary):
3258         * css/CSSStyleDeclaration.cpp:
3259         (WebCore::CSSStyleDeclaration::diff):
3260         * html/HTMLCollection.cpp:
3261         (WebCore::HTMLCollection::namedItems):
3262         * html/HTMLCollection.h:
3263         * kcanvas/KCanvasFilters.cpp:
3264         (WebCore::KCanvasFilter::externalRepresentation):
3265         * kcanvas/KCanvasFilters.h:
3266         (WebCore::KCanvasFEColorMatrix::values):
3267         (WebCore::KCanvasFEColorMatrix::setValues):
3268         (WebCore::KCanvasFEConvolveMatrix::kernel):
3269         (WebCore::KCanvasFEConvolveMatrix::setKernel):
3270         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
3271         (WebCore::KCanvasFilterQuartz::getCIFilterStack):
3272         (WebCore::KCanvasFEColorMatrixQuartz::getCIFilter):
3273         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
3274         (WebCore::SVGFEColorMatrixElement::filterEffect):
3275         * platform/graphics/svg/SVGResourceClipper.h:
3276         * platform/graphics/svg/cg/SVGResourceClipperCg.cpp:
3277         (WebCore::SVGResourceClipper::applyClip):
3278         * platform/network/FormData.h:
3279         * rendering/RenderPath.h:
3280         * rendering/SVGRenderTreeAsText.h:
3281         (WebCore::operator<<):
3282
3283 2006-11-16  Anders Carlsson  <acarlsson@apple.com>
3284
3285         Reviewed by Tim.
3286
3287         * editing/markup.cpp:
3288         (WebCore::createMarkup):
3289         Add null-checks for the frame, it might not exist for all documents.
3290         
3291 2006-11-16  Don Gibson  <dgibson77@gmail.com>
3292
3293         Reviewed and landed by ap.
3294
3295         http://bugs.webkit.org/show_bug.cgi?id=11509:
3296         Windows build bustage.
3297
3298         Also reorganizes WebCore.vcproj to add files whose absence wasn't
3299         causing compile errors, but which should have been there, and to
3300         make the include directory ordering (and contents) sane.
3301         Also reorganizes TemporaryLinkStubs.cpp to put headers and
3302         function groups in alphabetical order, and ensure that all functions
3303         in the file call notImplemented().
3304
3305         * WebCore.vcproj/WebCore/WebCore.vcproj:
3306         * bridge/win/ChromeClientWin.h:
3307         (WebCore::ChromeClientWin::ref):
3308         (WebCore::ChromeClientWin::deref):
3309         * bridge/win/ContextMenuClientWin.h: Added.
3310         (WebCore::ContextMenuClientWin::~ContextMenuClientWin):
3311         (WebCore::ContextMenuClientWin::ref):
3312         (WebCore::ContextMenuClientWin::deref):
3313         * bridge/win/EditorClientWin.h:
3314         * bridge/win/FrameWin.cpp:
3315         (WebCore::FrameWin::~FrameWin):
3316         (WebCore::FrameWin::keyPress):
3317         * bridge/win/FrameWin.h:
3318         * bridge/win/PageWin.cpp: Removed.
3319         * editing/EditCommand.h:
3320         * loader/FormState.h:
3321         * loader/FrameLoader.h:
3322         * page/EventHandler.cpp:
3323         * platform/MimeTypeRegistry.cpp:
3324         (WebCore::initialiseSupportedImageMIMETypes):
3325         * platform/graphics/win/ImageWin.cpp:
3326         * platform/network/ResourceError.cpp:
3327         * platform/network/ResourceHandleInternal.h:
3328         * platform/network/win/ResourceHandleWin.cpp:
3329         (WebCore::ResourceHandle::onHandleCreated):
3330         (WebCore::ResourceHandle::onRequestRedirected):
3331         (WebCore::ResourceHandle::start):
3332         (WebCore::ResourceHandle::cancel):
3333         * platform/win/ScreenWin.cpp:
3334         (WebCore::monitorInfo):
3335         (WebCore::screenRect):
3336         (WebCore::screenAvailableRect):
3337         (WebCore::screenDepth):
3338         * platform/win/SoundWin.cpp: Added.
3339         (WebCore::systemBeep):
3340         * platform/win/TemporaryLinkStubs.cpp:
3341         (WebCore::CacheObjectExpiresTime):
3342         (WebCore::CheckCacheObjectStatus):
3343         (WebCore::CheckIfReloading):
3344         (WebCore::defaultLanguage):
3345         (WebCore::fileButtonChooseFileLabel):
3346         (WebCore::fileButtonNoFileSelectedLabel):
3347         (WebCore::findNextSentenceFromIndex):
3348         (WebCore::findNextWordFromIndex):
3349         (WebCore::findSentenceBoundary):
3350         (WebCore::findWordBoundary):
3351         (WebCore::focusRingColor):
3352         (WebCore::historyContains):
3353         (WebCore::inputElementAltText):
3354         (WebCore::IsResponseURLEqualToURL):
3355         (WebCore::cellCursor):
3356         (WebCore::contextMenuCursor):
3357         (WebCore::moveCursor):
3358         (WebCore::verticalTextCursor):
3359         (WebCore::refreshPlugins):
3360         (WebCore::resetButtonDefaultLabel):
3361         (WebCore::ResponseIsMultipart):
3362         (WebCore::ResponseMIMEType):
3363         (WebCore::ResponseURL):
3364         (WebCore::screenDepthPerComponent):
3365         (WebCore::screenIsMonochrome):
3366         (WebCore::searchableIndexIntroduction):
3367         (WebCore::ServeSynchronousRequest):
3368         (WebCore::setFocusRingColorChangeFunction):
3369         (WebCore::submitButtonDefaultLabel):
3370         (WebCore::CachedResource::setPlatformResponse):
3371         (WebCore::CachedResource::setAllData):
3372         (WebCore::ChromeClientWin::setWindowRect):
3373         (WebCore::ChromeClientWin::windowRect):
3374         (WebCore::ChromeClientWin::pageRect):
3375         (WebCore::ChromeClientWin::scaleFactor):
3376         (WebCore::ChromeClientWin::focus):
3377         (WebCore::ChromeClientWin::unfocus):
3378         (WebCore::ChromeClientWin::createWindow):
3379         (WebCore::ChromeClientWin::createModalDialog):
3380         (WebCore::ChromeClientWin::show):
3381         (WebCore::ChromeClientWin::canRunModal):
3382         (WebCore::ChromeClientWin::runModal):
3383         (WebCore::ChromeClientWin::setToolbarsVisible):
3384         (WebCore::ChromeClientWin::toolbarsVisible):
3385         (WebCore::ChromeClientWin::setStatusbarVisible):
3386         (WebCore::ChromeClientWin::statusbarVisible):
3387         (WebCore::ChromeClientWin::setScrollbarsVisible):
3388         (WebCore::ChromeClientWin::scrollbarsVisible):
3389         (WebCore::ChromeClientWin::setMenubarVisible):
3390         (WebCore::ChromeClientWin::menubarVisible):
3391         (WebCore::ChromeClientWin::setResizable):
3392         (WebCore::ContextMenu::appendItem):
3393         (WebCore::ContextMenuClientWin::addCustomContextMenuItems):
3394         (WebCore::DocumentLoader::setFrame):
3395         (WebCore::DocumentLoader::frameLoader):
3396         (WebCore::DocumentLoader::URL):
3397         (WebCore::DocumentLoader::isStopping):
3398         (WebCore::DocumentLoader::stopLoading):
3399         (WebCore::DocumentLoader::setLoading):
3400         (WebCore::DocumentLoader::updateLoading):
3401         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
3402         (WebCore::DocumentLoader::isLoadingInAPISense):
3403         (WebCore::DocumentLoader::stopRecordingResponses):
3404         (WebCore::EditorClientWin::shouldDeleteRange):
3405         (WebCore::EditorClientWin::shouldShowDeleteInterface):
3406         (WebCore::EditorClientWin::isContinuousSpellCheckingEnabled):
3407         (WebCore::EditorClientWin::isGrammarCheckingEnabled):
3408         (WebCore::EditorClientWin::spellCheckerDocumentTag):
3409         (WebCore::EventHandler::focusDocumentView):
3410         (WebCore::EventHandler::handleDrag):
3411         (WebCore::EventHandler::handleMouseUp):
3412         (WebCore::EventHandler::lastEventIsMouseUp):
3413         (WebCore::EventHandler::passMousePressEventToSubframe):
3414         (WebCore::EventHandler::passMouseMoveEventToSubframe):
3415         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
3416         (WebCore::EventHandler::passWheelEventToSubframe):
3417         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
3418         (WebCore::EventHandler::passMousePressEventToScrollbar):
3419         (WebCore::EventHandler::shouldDragAutoNode):
3420         (WebCore::EventHandler::tabsToAllControls):
3421         (WebCore::EventHandler::tabsToLinks):
3422         (WebCore::Frame::setNeedsReapplyStyles):
3423         (WebCore::FrameLoader::didFirstLayout):
3424         (WebCore::FrameLoader::overrideMediaType):
3425         (WebCore::FrameLoader::createJavaAppletWidget):
3426         (WebCore::FrameLoader::redirectDataToPlugin):
3427         (WebCore::FrameLoader::getHistoryLength):
3428         (WebCore::FrameLoader::setTitle):
3429         (WebCore::FrameLoader::referrer):
3430         (WebCore::FrameLoader::saveDocumentState):
3431         (WebCore::FrameLoader::restoreDocumentState):
3432         (WebCore::FrameLoader::goBackOrForward):
3433         (WebCore::FrameLoader::historyURL):
3434         (WebCore::FrameLoader::urlSelected):
3435         (WebCore::FrameLoader::createFrame):
3436         (WebCore::FrameLoader::submitForm):
3437         (WebCore::FrameLoader::partClearedInBegin):
3438         (WebCore::FrameLoader::originalRequestURL):
3439         (WebCore::FrameLoader::canGoBackOrForward):
3440         (WebCore::FrameLoader::objectContentType):
3441         (WebCore::FrameLoader::createPlugin):
3442         (WebCore::FrameLoader::detachFromParent):
3443         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
3444         (WebCore::FrameView::updateBorder):
3445         (WebCore::FrameWin::bindingRootObject):
3446         (WebCore::FrameWin::canPaste):
3447         (WebCore::FrameWin::issuePasteAndMatchStyleCommand):
3448         (WebCore::FrameWin::markedTextRange):
3449         (WebCore::FrameWin::passSubframeEventToSubframe):
3450         (WebCore::FrameWin::lastEventIsMouseUp):
3451         (WebCore::FrameWin::addMessageToConsole):
3452         (WebCore::FrameWin::shouldChangeSelection):
3453         (WebCore::FrameWin::respondToChangedSelection):
3454         (WebCore::FrameWin::clearUndoRedoOperations):
3455         (WebCore::FrameWin::markMisspellingsInAdjacentWords):
3456         (WebCore::FrameWin::respondToChangedContents):
3457         (WebCore::GraphicsContext::addRoundedRectClip):
3458         (WebCore::GraphicsContext::setShadow):
3459         (WebCore::GraphicsContext::clearShadow):
3460         (WebCore::GraphicsContext::beginTransparencyLayer):
3461         (WebCore::GraphicsContext::endTransparencyLayer):
3462         (WebCore::GraphicsContext::clearRect):
3463         (WebCore::GraphicsContext::strokeRect):
3464         (WebCore::GraphicsContext::setLineWidth):
3465         (WebCore::GraphicsContext::setLineCap):
3466         (WebCore::GraphicsContext::setLineJoin):
3467         (WebCore::GraphicsContext::setMiterLimit):
3468         (WebCore::GraphicsContext::setAlpha):
3469         (WebCore::GraphicsContext::setCompositeOperation):
3470         (WebCore::GraphicsContext::clip):
3471         (WebCore::GraphicsContext::rotate):
3472         (WebCore::GraphicsContext::scale):
3473         (WebCore::Icon::Icon):
3474         (WebCore::Icon::~Icon):
3475         (WebCore::Icon::newIconForFile):
3476         (WebCore::Icon::paint):
3477         (WebCore::IconDatabase::isIconExpiredForIconURL):
3478         (WebCore::IconDatabase::hasEntryForIconURL):
3479         (WebCore::IconDatabase::sharedIconDatabase):
3480         (WebCore::IconDatabase::setIconURLForPageURL):
3481         (WebCore::IconDatabase::setIconDataForIconURL):
3482         (WebCore::Image::drawTiled):
3483         (WebCore::Image::getHBITMAP):
3484         (WebCore::Path::Path):
3485         (WebCore::Path::~Path):
3486         (WebCore::Path::contains):
3487         (WebCore::Path::translate):
3488         (WebCore::Path::boundingRect):
3489         (WebCore::Path::operator=):
3490         (WebCore::Path::clear):
3491         (WebCore::Path::moveTo):
3492         (WebCore::Path::addLineTo):
3493         (WebCore::Path::addQuadCurveTo):
3494         (WebCore::Path::addBezierCurveTo):
3495         (WebCore::Path::addArcTo):
3496         (WebCore::Path::closeSubpath):
3497         (WebCore::Path::addArc):
3498         (WebCore::Path::addRect):
3499         (WebCore::Path::addEllipse):
3500         (WebCore::Path::transform):
3501         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3502         (WebCore::PlatformScrollbar::PlatformScrollbar):
3503         (WebCore::PlatformScrollbar::~PlatformScrollbar):
3504         (WebCore::PlatformScrollbar::width):
3505         (WebCore::PlatformScrollbar::height):
3506         (WebCore::PlatformScrollbar::setEnabled):
3507         (WebCore::PlatformScrollbar::paint):
3508         (WebCore::PlatformScrollbar::updateThumbPosition):
3509         (WebCore::PlatformScrollbar::updateThumbProportion):
3510         (WebCore::PlatformScrollbar::setRect):
3511         (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
3512         (WebCore::PlugInInfoStore::pluginCount):
3513         (WebCore::PlugInInfoStore::supportsMIMEType):
3514         (WebCore::PolicyCheck::PolicyCheck):
3515         (WebCore::PolicyCheck::clear):