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