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