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