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