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