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