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