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