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