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