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