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