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