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