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