Reviewed by Darin.
[WebKit-https.git] / WebCore / ChangeLog
1 2007-12-12  Alexey Proskuryakov  <ap@webkit.org>
2
3         Reviewed by Darin.
4
5         http://bugs.webkit.org/show_bug.cgi?id=16410
6         Implement isKeypadEvent() on Windows
7
8         Test: platform/win/fast/events/keyLocation-numpad.html
9
10         * platform/win/KeyEventWin.cpp:
11         (WebCore::isKeypadEvent): Added.
12         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Also fixed a mistake with autorepeat.
13
14 2007-12-12  Oliver Hunt  <oliver@apple.com>
15
16         Reviewed by Maciej.
17
18         <rdar://problem/5071781> window.mouseout events are not sent 
19         to window when mouse moves out of window 
20
21         Make PlatformMouseEvent recognise WM_MOUSELEAVE.
22
23         * platform/win/PlatformMouseEventWin.cpp:
24         (WebCore::messageToEventType):
25         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
26
27 2007-12-12  Sam Weinig  <sam@webkit.org>
28
29         Fix Mac release build.
30
31         * WebCore.base.exp:
32
33 2007-12-12  Sam Weinig  <sam@webkit.org>
34
35         Build fix for Qt, Gtk, and Wx.
36
37         * css/CSSParser.cpp:
38         (WebCore::CSSParser::parseValue):
39         * loader/win/FrameLoaderWin.cpp:
40         (WebCore::FrameLoader::urlSelected):
41         * platform/network/curl/ResourceHandleManager.cpp:
42         (WebCore::parseDataUrl):
43         (WebCore::ResourceHandleManager::startJob):
44         * platform/network/win/CookieJarWin.cpp:
45         (WebCore::setCookies):
46         (WebCore::cookies):
47         * platform/network/win/ResourceHandleWin.cpp:
48         (WebCore::ResourceHandle::start):
49         * platform/qt/PasteboardQt.cpp:
50         (WebCore::Pasteboard::writeURL):
51
52 2007-12-11  Dan Bernstein  <mitz@apple.com>
53
54         Reviewed by Maciej Stachowiak.
55
56         - allow non-integer font sizes on Windows for small caps
57
58         * platform/graphics/win/FontDataWin.cpp:
59         (WebCore::FontData::smallCapsFontData):
60         * platform/graphics/win/FontPlatformData.h:
61         (WebCore::FontPlatformData::size):
62         (WebCore::FontPlatformData::setSize):
63         * platform/graphics/win/FontPlatformDataWin.cpp:
64         (WebCore::FontPlatformData::FontPlatformData):
65
66 2007-12-11  Sam Weinig  <sam@webkit.org>
67
68         Build fix for Qt, Gtk, and Wx.
69
70         * platform/gtk/CookieJarGtk.cpp:
71         (WebCore::setCookies):
72         (WebCore::cookies):
73         * platform/qt/ClipboardQt.cpp:
74         (WebCore::ClipboardQt::writeURL):
75         * platform/qt/CookieJarQt.cpp:
76         (WebCore::setCookies):
77         (WebCore::cookies):
78         * platform/wx/PasteboardWx.cpp:
79         (WebCore::Pasteboard::writeURL):
80
81 2007-12-11  Sam Weinig  <sam@webkit.org>
82
83         Reviewed by Darin Adler.
84
85         Scrub URL out of the tree in preparation for renaming KURL to URL.
86             - Renames Document::URL() -> Document::url()
87             - Renames DocumentLoader::URL() -> DocumentLoader::url()
88             - Renames KURL::url() to KURL::string() and KURL::deprecatedString()
89             - Remove FrameLoader::URL()
90             - Various variable renames.
91
92         The change from Document::URL() to Document::url() required changes
93         to the bindings scripts as well, because URL() is the name of a DOM
94         method.  The code generation scripts now have code to special case URL()
95         to url().
96
97         * WebCore.base.exp:
98         * bindings/js/kjs_events.cpp:
99         (WebCore::JSLazyEventListener::parseCode):
100         * bindings/js/kjs_navigator.cpp:
101         (KJS::Navigator::getValueProperty):
102         * bindings/js/kjs_proxy.cpp:
103         (WebCore::KJSProxy::initScript):
104         * bindings/js/kjs_window.cpp:
105         (KJS::Window::put):
106         (KJS::Window::allowsAccessFrom):
107         (KJS::Location::put):
108         (KJS::LocationProtoFuncReplace::callAsFunction):
109         (KJS::LocationProtoFuncReload::callAsFunction):
110         (KJS::LocationProtoFuncAssign::callAsFunction):
111         * bindings/scripts/CodeGenerator.pm:
112         * bindings/scripts/CodeGeneratorCOM.pm:
113         * bindings/scripts/CodeGeneratorJS.pm:
114         * bindings/scripts/CodeGeneratorObjC.pm:
115         * css/CSSImportRule.cpp:
116         (WebCore::CSSImportRule::insertedIntoParent):
117         * css/CSSParser.cpp:
118         (WebCore::CSSParser::parseValue):
119         (WebCore::CSSParser::parseContent):
120         (WebCore::CSSParser::parseBackgroundImage):
121         (WebCore::CSSParser::parseFontFaceSrc):
122         (WebCore::CSSParser::parseBorderImage):
123         (WebCore::CSSParser::createImportRule):
124         * css/CSSStyleSelector.cpp:
125         (WebCore::CSSStyleSelector::setEncodedURL):
126         * dom/Document.cpp:
127         (WebCore::Document::processHttpEquiv):
128         (WebCore::Document::cookie):
129         (WebCore::Document::setCookie):
130         (WebCore::Document::domain):
131         (WebCore::Document::setDomain):
132         (WebCore::Document::getImageMap):
133         (WebCore::Document::completeURL):
134         * dom/Document.h:
135         (WebCore::Document::url):
136         (WebCore::Document::baseURL):
137         * dom/Element.cpp:
138         (WebCore::Element::baseURI):
139         * dom/ProcessingInstruction.h:
140         * dom/StyledElement.cpp:
141         (WebCore::StyledElement::addCSSImageProperty):
142         * dom/StyledElement.h:
143         * dom/XMLTokenizer.cpp:
144         (WebCore::XMLTokenizer::endElementNs):
145         (WebCore::XMLTokenizer::end):
146         (WebCore::):
147         * dom/XMLTokenizer.h:
148         * editing/Editor.cpp:
149         (WebCore::Editor::copy):
150         * editing/markup.cpp:
151         (WebCore::completeURLs):
152         * history/CachedPage.h:
153         (WebCore::CachedPage::url):
154         * history/HistoryItem.cpp:
155         (WebCore::HistoryItem::HistoryItem):
156         (WebCore::HistoryItem::setURL):
157         (WebCore::HistoryItem::isCurrentDocument):
158         * html/HTMLBaseElement.cpp:
159         (WebCore::HTMLBaseElement::process):
160         * html/HTMLParser.cpp:
161         (WebCore::HTMLParser::reportErrorToConsole):
162         * html/HTMLScriptElement.cpp:
163         (WebCore::HTMLScriptElement::childrenChanged):
164         (WebCore::HTMLScriptElement::insertedIntoDocument):
165         (WebCore::HTMLScriptElement::evaluateScript):
166         * html/HTMLScriptElement.h:
167         * html/HTMLTokenizer.cpp:
168         (WebCore::HTMLTokenizer::scriptExecution):
169         * loader/Cache.cpp:
170         (WebCore::createResource):
171         (WebCore::Cache::requestResource):
172         * loader/CachedCSSStyleSheet.cpp:
173         (WebCore::CachedCSSStyleSheet::checkNotify):
174         * loader/CachedResource.cpp:
175         (WebCore::CachedResource::CachedResource):
176         * loader/CachedResource.h:
177         (WebCore::CachedResource::):
178         * loader/CachedScript.h:
179         * loader/DocLoader.cpp:
180         (WebCore::DocLoader::checkForReload):
181         (WebCore::DocLoader::requestResource):
182         * loader/DocumentLoader.cpp:
183         (WebCore::DocumentLoader::url):
184         (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
185         (WebCore::DocumentLoader::setRequest):
186         (WebCore::DocumentLoader::startLoadingMainResource):
187         * loader/DocumentLoader.h:
188         * loader/FrameLoader.cpp:
189         (WebCore::FormSubmission::FormSubmission):
190         (WebCore::ScheduledRedirection::ScheduledRedirection):
191         (WebCore::FrameLoader::changeLocation):
192         (WebCore::FrameLoader::urlSelected):
193         (WebCore::FrameLoader::requestFrame):
194         (WebCore::FrameLoader::loadSubframe):
195         (WebCore::FrameLoader::submitFormAgain):
196         (WebCore::FrameLoader::submitForm):
197         (WebCore::FrameLoader::didExplicitOpen):
198         (WebCore::FrameLoader::replaceContentsWithScriptResult):
199         (WebCore::FrameLoader::executeScript):
200         (WebCore::FrameLoader::receivedFirstData):
201         (WebCore::FrameLoader::begin):
202         (WebCore::FrameLoader::startIconLoader):
203         (WebCore::FrameLoader::commitIconURLToIconDatabase):
204         (WebCore::FrameLoader::scheduleRefresh):
205         (WebCore::FrameLoader::redirectionTimerFired):
206         (WebCore::FrameLoader::loadPlugin):
207         (WebCore::FrameLoader::didNotOpenURL):
208         (WebCore::FrameLoader::updatePolicyBaseURL):
209         (WebCore::FrameLoader::scrollToAnchor):
210         (WebCore::FrameLoader::startRedirectionTimer):
211         (WebCore::FrameLoader::load):
212         (WebCore::FrameLoader::canLoad):
213         (WebCore::FrameLoader::shouldHideReferrer):
214         (WebCore::FrameLoader::shouldAllowNavigation):
215         (WebCore::FrameLoader::commitProvisionalLoad):
216         (WebCore::FrameLoader::clientRedirected):
217         (WebCore::FrameLoader::open):
218         (WebCore::FrameLoader::didTellBridgeAboutLoad):
219         (WebCore::FrameLoader::haveToldBridgeAboutLoad):
220         (WebCore::FrameLoader::post):
221         (WebCore::FrameLoader::loadResourceSynchronously):
222         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
223         (WebCore::FrameLoader::shouldTreatURLAsSameAsCurrent):
224         (WebCore::FrameLoader::createHistoryItem):
225         (WebCore::FrameLoader::addBackForwardItemClippedAtTarget):
226         (WebCore::FrameLoader::loadItem):
227         (WebCore::FrameLoader::urlsMatchItem):
228         (WebCore::FrameLoader::recursiveGoToItem):
229         (WebCore::FrameLoader::updateHistoryForStandardLoad):
230         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory):
231         * loader/FrameLoader.h:
232         (WebCore::FrameLoader::url):
233         * loader/ImageDocument.cpp:
234         (WebCore::ImageDocument::createDocumentStructure):
235         * loader/MainResourceLoader.cpp:
236         (WebCore::shouldLoadAsEmptyDocument):
237         (WebCore::MainResourceLoader::didFinishLoading):
238         * loader/NavigationAction.cpp:
239         (WebCore::NavigationAction::NavigationAction):
240         * loader/NavigationAction.h:
241         (WebCore::NavigationAction::url):
242         * loader/PluginDocument.cpp:
243         (WebCore::PluginTokenizer::createDocumentStructure):
244         * loader/SubresourceLoader.cpp:
245         (WebCore::SubresourceLoader::load):
246         (WebCore::SubresourceLoader::create):
247         * loader/icon/IconLoader.cpp:
248         (WebCore::IconLoader::startLoading):
249         (WebCore::IconLoader::finishLoading):
250         * loader/loader.cpp:
251         (WebCore::Loader::servePendingRequests):
252         * loader/mac/LoaderNSURLExtras.m:
253         (urlOriginalData):
254         * page/Chrome.cpp:
255         (WebCore::Chrome::setToolTip):
256         * page/ContextMenuController.cpp:
257         (WebCore::ContextMenuController::contextMenuItemSelected):
258         * page/Frame.cpp:
259         (WebCore::Frame::setUserStyleSheetLocation):
260         * page/InspectorController.cpp:
261         (WebCore::InspectorResource::type):
262         (WebCore::addSourceToFrame):
263         (WebCore::InspectorController::addScriptResource):
264         (WebCore::InspectorController::updateScriptResourceRequest):
265         (WebCore::InspectorController::didCommitLoad):
266         * page/mac/WebCoreFrameBridge.mm:
267         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
268         * platform/KURL.h:
269         (WebCore::KURL::string):
270         (WebCore::KURL::deprecatedString):
271         * platform/mac/ClipboardMac.mm:
272         (WebCore::ClipboardMac::getData):
273         * platform/mac/CookieJar.mm:
274         (WebCore::cookies):
275         (WebCore::setCookies):
276         * platform/mac/PasteboardMac.mm:
277         (WebCore::Pasteboard::writeURL):
278         (WebCore::fileWrapperForImage):
279         (WebCore::Pasteboard::writeImage):
280         (WebCore::Pasteboard::plainText):
281         * platform/network/ResourceHandle.cpp:
282         (WebCore::ResourceHandle::portAllowed):
283         * platform/network/ResourceRequestBase.cpp:
284         (WebCore::ResourceRequestBase::isNull):
285         * platform/network/cf/ResourceHandleCFNet.cpp:
286         (WebCore::willSendRequest):
287         (WebCore::didReceiveResponse):
288         (WebCore::didReceiveData):
289         (WebCore::didFinishLoading):
290         (WebCore::didFail):
291         (WebCore::didReceiveChallenge):
292         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
293         (WebCore::ResourceHandle::~ResourceHandle):
294         (WebCore::ResourceHandle::start):
295         * platform/win/ClipboardUtilitiesWin.cpp:
296         (WebCore::createGlobalData):
297         (WebCore::urlToMarkup):
298         * platform/win/ClipboardWin.cpp:
299         (WebCore::writeURL):
300         (WebCore::writeImageToDataObject):
301         (WebCore::ClipboardWin::writeURL):
302         (WebCore::ClipboardWin::writeRange):
303         * platform/win/PasteboardWin.cpp:
304         (WebCore::Pasteboard::writeSelection):
305         (WebCore::Pasteboard::writeURL):
306         * plugins/win/PluginDatabaseWin.cpp:
307         (WebCore::PluginDatabaseWin::findPlugin):
308         * plugins/win/PluginStreamWin.cpp:
309         (WebCore::PluginStreamWin::startStream):
310         (WebCore::PluginStreamWin::destroyStream):
311         * plugins/win/PluginViewWin.cpp:
312         (WebCore::scriptStringIfJavaScriptURL):
313         (WebCore::PluginViewWin::performRequest):
314         * svg/SVGImageLoader.cpp:
315         (WebCore::SVGImageLoader::updateFromElement):
316         * xml/XMLHttpRequest.cpp:
317         (WebCore::XMLHttpRequest::getResponseXML):
318         (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
319         * xml/XSLImportRule.cpp:
320         (WebCore::XSLImportRule::loadSheet):
321         * xml/XSLTProcessor.cpp:
322         (WebCore::XSLTProcessor::createDocumentFromSource):
323         (WebCore::xsltStylesheetPointer):
324         (WebCore::xmlDocPtrFromNode):
325
326 2007-12-11  Beth Dakin  <bdakin@apple.com>
327
328         Reviewed by Darin.
329
330         Fix for <rdar://problem/5641255> SVGs with width and height 100% 
331         fail to render when used as background images
332
333         CachedImage now has a setImageContainerSize function. It is only 
334         needed for SVG right now.
335         * loader/CachedImage.cpp:
336         (WebCore::CachedImage::setImageContainerSize):
337         * loader/CachedImage.h:
338
339         Relatively sized SVGs have no intrinsic size. Because this call is 
340         low-level enough that we cannot pass in the container size and get 
341         the real size of the SVG, we need to know if it has relative 
342         dimensions, and if so, we need to get the size from scaledTileSize.
343         * platform/graphics/Image.cpp:
344         (WebCore::Image::drawTiled):
345         * platform/graphics/Image.h:
346         (WebCore::Image::setContainerSize):
347         (WebCore::Image::hasRelativeWidth):
348         (WebCore::Image::hasRelativeHeight):
349
350         Re-factored calculateBackgroundSize a bit so that it returns an 
351         IntSize. Made it a member function so that it can send m_width and 
352         m_height along to setImageContainerSize.
353         * rendering/RenderBox.cpp:
354         (WebCore::RenderBox::calculateBackgroundSize):
355         (WebCore::RenderBox::calculateBackgroundImageGeometry):
356         * rendering/RenderBox.h:
357
358         Need to account for relatively sized SVGs in calcViewport()
359         * rendering/RenderSVGRoot.cpp:
360         (WebCore::RenderSVGRoot::calcViewport):
361         
362         Added new member variables to store the size of the SVG container. 
363         relativeWidthValue() and relativeHeightValue() use the stored SVG 
364         container size to correctly calculate the width and height of a 
365         relatively sized SVG.
366         * svg/SVGSVGElement.cpp:
367         (WebCore::SVGSVGElement::SVGSVGElement):
368         (WebCore::SVGSVGElement::setContainerSize):
369         (WebCore::SVGSVGElement::relativeWidthValue):
370         (WebCore::SVGSVGElement::relativeHeightValue):
371         * svg/SVGSVGElement.h:
372         (WebCore::SVGSVGElement::containerSize):
373         
374         Re-factored size calculations to use the size of the container.
375         * svg/graphics/SVGImage.cpp:
376         (WebCore::SVGImage::setContainerSize):
377         (WebCore::SVGImage::size):
378         (WebCore::SVGImage::hasRelativeWidth):
379         (WebCore::SVGImage::hasRelativeHeight):
380         * svg/graphics/SVGImage.h:
381
382 2007-12-11  Darin Adler  <darin@apple.com>
383
384         * editing/Editor.cpp:
385         (WebCore::Editor::yankFromKillRing): Try to fix non-Mac builds by adding
386         a missing return statement.
387
388 2007-12-11  Darin Adler  <darin@apple.com>
389
390         Reviewed by Geoff.
391
392         - exposed many new commands to the DOM Document executeCommand function by
393           merging the JSEditor and Editor executeCommand implementations
394         - replaced the execCommand function with a EditorCommand class
395         - replaced the WTF::StrHash<> class template with the WebCore::StringHash class
396         - replaced the WTF::CaseInsensitiveHash<> class template with the
397           WebCore::CaseFoldingHash class
398
399         * WebCore.base.exp: Updated.
400         * WebCore.pro: Added EditorCommand.cpp, removed JSEditor.cpp.
401         * WebCore.vcproj/WebCore.vcproj: Ditto.
402         * WebCore.xcodeproj/project.pbxproj: Ditto.
403         * WebCoreSources.bkl: Ditto.
404
405         * dom/Document.cpp:
406         (WebCore::Document::Document): Removed code to set up m_jsEditor.
407         (WebCore::Document::~Document): Removed code to delete m_jsEditor.
408         (WebCore::command): Added. Helper function that gets an Editor::Command.
409         (WebCore::Document::executeCommand): Changed to use Editor::Command instead of
410         JSEditor.
411         (WebCore::Document::queryCommandEnabled): Ditto.
412         (WebCore::Document::queryCommandIndeterm):
413         (WebCore::Document::queryCommandState): Ditto.
414         (WebCore::Document::queryCommandSupported): Ditto.
415         (WebCore::Document::queryCommandValue): Ditto.
416
417         * dom/Document.h: Removed JSEditor, jsEditor, m_jsEditor. Changed to
418         use CaseFoldingHash.
419
420         * editing/Editor.cpp:
421         (WebCore::Editor::selectionForCommand): Renamed from selectionForEvent and
422         made into a member function so it is accessible from the new EditorCommand.cpp file.
423         Also changed to get the selection from the passed-in frame instead of from the
424         page, because this should work on the targeted frame unless the event overrides it.
425         (WebCore::Editor::handleKeypress): Updated for selectionForCommand change.
426         (WebCore::Editor::handleInputMethodKeypress): Ditto.
427         (WebCore::imageElementFromImageDocument): Renamed and changed to return
428         a HTMLImageElement instead of a Node*.
429         (WebCore::Editor::canCopy): Updated for name change.
430         (WebCore::Editor::selectionUnorderedListState): Updated for TriState change.
431         (WebCore::Editor::selectionOrderedListState): Ditto.
432         (WebCore::Editor::selectionStartHasStyle): Make type of local more specific.
433         (WebCore::updateState): Moved here from Frame.
434         (WebCore::Editor::selectionHasStyle): Ditto.
435         (WebCore::Editor::Editor): Initialize m_shouldStartNewKillRingSequence.
436         (WebCore::Editor::insertTextWithoutSendingTextEvent): Updated for
437         selectionForCommand change.
438         (WebCore::Editor::copy): Updated for imageElementFromImageDocument change.
439         (WebCore::Editor::toggleBold): Call the ToggleBold command via the command
440         machinery since it's no longer in this file as a local function.
441         (WebCore::Editor::toggleUnderline): Call the ToggleUnderline command.
442         (WebCore::Editor::setBaseWritingDirection): Change type of argument and of
443         local variable.
444         (WebCore::Editor::addToKillRing): Moved here from EditorMac. Not useful
445         without a kill ring, but it's relatively straightforward to implement one.
446         (WebCore::Editor::appendToKillRing): Put default implementation here for
447         platforms other than Mac. We should probably put a simple kill ring
448         implementation here -- doesn't need to be shared with the OS oh platforms
449         other than Mac.
450         (WebCore::Editor::prependToKillRing): Ditto.
451         (WebCore::Editor::yankFromKillRing): Ditto.
452         (WebCore::Editor::startNewKillRingSequence): Ditto.
453         (WebCore::Editor::setKillRingToYankedState): Ditto.
454
455         * editing/Editor.h: Moved the TriState enum here instead of inside the
456         Frame class. Added EditorCommandSource enum. Moved selectionHasStyle
457         here from the Frame class. Added Editor::Command class with five functions
458         for the various things you can do with a command (execute it, check if it
459         can be used, and its state and value). Changed hte parameter of
460         setBaseWritingDirection to be a const String& rather than a String.
461         Got rid of the kill-ring-related operations, but added the kill ring
462         functions themselves. Made selectedRange() public. Made the
463         m_startNewKillRingSequence not Mac-specific and added "should" to its
464         name.
465
466         * editing/EditorCommand.cpp: Copied from WebCore/editing/Editor.cpp.
467         Retained only the editing commands.
468         (WebCore::targetFrame): Moved to the top of the file.
469         (WebCore::executeApplyStyle): Added. Helper function for commands
470         that need to apply styles.
471         (WebCore::executeToggleStyle): Added. Helper function for commands
472         that need to toggle styles based on the style of the start of selection.
473         (WebCore::executeApplyParagraphStyle): Added. Like executeApplyStyle, but
474         for paragraph styles.
475         (WebCore::executeInsertFragment): Added. Helper function for commands
476         that need to insert a DOM fragment.
477         (WebCore::executeInsertNode): Added. Helper function for commands that
478         need to insert a tree rooted in a single DOM node.
479         (WebCore::stateStyle): Added. Helper function for the state of commands
480         that represent style.
481         (WebCore::valueStyle): Added. Helper function for the value of commands
482         that represent style.
483         (WebCore::canScroll): Added. Helper functions for some move and scroll
484         commands that need to determine if the renderer they are in can scroll.
485         (WebCore::unionDOMRanges): Moved here from EditorMac.
486         (WebCore::executeBackColor):
487         (WebCore::executeBackwardDelete):
488         (WebCore::executeCopy):
489         (WebCore::executeCreateLink):
490         (WebCore::executeCut):
491         (WebCore::executeDelete):
492         (WebCore::executeDeleteToMark):
493         (WebCore::executeDeleteWordBackward):
494         (WebCore::executeDeleteWordForward):
495         (WebCore::executeFindString):
496         (WebCore::executeFontName):
497         (WebCore::executeFontSize):
498         (WebCore::executeFontSizeDelta):
499         (WebCore::executeForeColor):
500         (WebCore::executeFormatBlock):
501         (WebCore::executeForwardDelete):
502         (WebCore::executeIndent):
503         (WebCore::executeInsertBacktab):
504         (WebCore::executeInsertHorizontalRule):
505         (WebCore::executeInsertHTML):
506         (WebCore::executeInsertImage):
507         (WebCore::executeInsertLineBreak):
508         (WebCore::executeInsertNewline):
509         (WebCore::executeInsertNewlineInQuotedContent):
510         (WebCore::executeInsertOrderedList):
511         (WebCore::executeInsertParagraph):
512         (WebCore::executeInsertTab):
513         (WebCore::executeInsertText):
514         (WebCore::executeInsertUnorderedList):
515         (WebCore::executeJustifyCenter):
516         (WebCore::executeJustifyFull):
517         (WebCore::executeJustifyLeft):
518         (WebCore::executeJustifyRight):
519         (WebCore::executeMoveBackward):
520         (WebCore::executeMoveBackwardAndModifySelection):
521         (WebCore::executeMoveDown):
522         (WebCore::executeMoveDownAndModifySelection):
523         (WebCore::executeMoveDownByPageAndModifyCaret):
524         (WebCore::executeMoveForward):
525         (WebCore::executeMoveForwardAndModifySelection):
526         (WebCore::executeMoveLeft):
527         (WebCore::executeMoveLeftAndModifySelection):
528         (WebCore::executeMoveRight):
529         (WebCore::executeMoveRightAndModifySelection):
530         (WebCore::executeMoveToBeginningOfDocument):
531         (WebCore::executeMoveToBeginningOfDocumentAndModifySelection):
532         (WebCore::executeMoveToBeginningOfLine):
533         (WebCore::executeMoveToBeginningOfLineAndModifySelection):
534         (WebCore::executeMoveToBeginningOfParagraph):
535         (WebCore::executeMoveToBeginningOfParagraphAndModifySelection):
536         (WebCore::executeMoveToBeginningOfSentence):
537         (WebCore::executeMoveToBeginningOfSentenceAndModifySelection):
538         (WebCore::executeMoveToEndOfDocument):
539         (WebCore::executeMoveToEndOfDocumentAndModifySelection):
540         (WebCore::executeMoveToEndOfSentence):
541         (WebCore::executeMoveToEndOfSentenceAndModifySelection):
542         (WebCore::executeMoveToEndOfLine):
543         (WebCore::executeMoveToEndOfLineAndModifySelection):
544         (WebCore::executeMoveToEndOfParagraph):
545         (WebCore::executeMoveToEndOfParagraphAndModifySelection):
546         (WebCore::executeMoveParagraphBackwardAndModifySelection):
547         (WebCore::executeMoveParagraphForwardAndModifySelection):
548         (WebCore::executeMoveUp):
549         (WebCore::executeMoveUpAndModifySelection):
550         (WebCore::executeMoveUpByPageAndModifyCaret):
551         (WebCore::executeMoveWordBackward):
552         (WebCore::executeMoveWordBackwardAndModifySelection):
553         (WebCore::executeMoveWordForward):
554         (WebCore::executeMoveWordForwardAndModifySelection):
555         (WebCore::executeMoveWordLeft):
556         (WebCore::executeMoveWordLeftAndModifySelection):
557         (WebCore::executeMoveWordRight):
558         (WebCore::executeMoveWordRightAndModifySelection):
559         (WebCore::executeOutdent):
560         (WebCore::executePaste):
561         (WebCore::executePasteAndMatchStyle):
562         (WebCore::executePrint):
563         (WebCore::executeRedo):
564         (WebCore::executeRemoveFormat):
565         (WebCore::executeSelectAll):
566         (WebCore::executeSelectToMark):
567         (WebCore::executeSetMark):
568         (WebCore::executeStrikethrough):
569         (WebCore::executeSubscript):
570         (WebCore::executeSuperscript):
571         (WebCore::executeSwapWithMark):
572         (WebCore::executeToggleBold):
573         (WebCore::executeToggleItalic):
574         (WebCore::executeTranspose):
575         (WebCore::executeUnderline):
576         (WebCore::executeUndo):
577         (WebCore::executeUnlink):
578         (WebCore::executeUnscript):
579         (WebCore::executeUnselect):
580         (WebCore::executeYank):
581         (WebCore::executeYankAndSelect):
582         (WebCore::supported):
583         (WebCore::supportedPaste):
584         (WebCore::enabled):
585         (WebCore::enabledAnySelection):
586         (WebCore::enabledAnySelectionAndMark):
587         (WebCore::enableCaretInEditableText):
588         (WebCore::enabledCopy):
589         (WebCore::enabledCut):
590         (WebCore::enabledInEditableText):
591         (WebCore::enabledInRichlyEditableText):
592         (WebCore::enabledPaste):
593         (WebCore::enabledRangeInEditableText):
594         (WebCore::enabledRangeInRichlyEditableText):
595         (WebCore::enabledRedo):
596         (WebCore::enabledUndo):
597         (WebCore::stateNone):
598         (WebCore::stateBold):
599         (WebCore::stateItalic):
600         (WebCore::stateOrderedList):
601         (WebCore::stateStrikethrough):
602         (WebCore::stateSubscript):
603         (WebCore::stateSuperscript):
604         (WebCore::stateUnderline):
605         (WebCore::stateUnorderedList):
606         (WebCore::valueNull):
607         (WebCore::valueBackColor):
608         (WebCore::valueFontName):
609         (WebCore::valueFontSize):
610         (WebCore::valueFontSizeDelta):
611         (WebCore::valueForeColor):
612         (WebCore::createCommandMap): Added lots of commands, including all the commands
613         from JSEditor. A few commands needed different behavior based on whether they are
614         invoked from the DOM or a keyboard binding.
615         (WebCore::Editor::command): Added. Gets a command object given a name.
616         (WebCore::Editor::Command::Command): Added.
617         (WebCore::Editor::Command::execute): Added.
618         (WebCore::Editor::Command::isSupported): Added.
619         (WebCore::Editor::Command::isEnabled): Added.
620         (WebCore::Editor::Command::state): Added.
621         (WebCore::Editor::Command::value): Added.
622         (WebCore::Editor::execCommand): Changed to call command().execute().
623
624         * editing/JSEditor.cpp: Removed.
625         * editing/JSEditor.h: Removed.
626
627         * editing/mac/EditorMac.mm: Changed to provide kill ring primitives intead of
628         kill ring commands, so the kill ring commands can be cross-platform.
629         (WebCore::Editor::appendToKillRing): Added.
630         (WebCore::Editor::prependToKillRing): Added.
631         (WebCore::Editor::yankFromKillRing): Added.
632         (WebCore::Editor::startNewKillRingSequence): Added.
633         (WebCore::Editor::setKillRingToYankedState): Added.
634
635         * page/Frame.cpp: Removed selectionHasStyle, TriState, and updateState.
636         * page/Frame.h: Ditto.
637
638         * page/mac/WebCoreFrameBridge.mm: Removed selectionHasStyle.
639         * page/mac/WebCoreFrameBridge.h: Ditto.
640
641         * platform/ContextMenu.cpp:
642         (WebCore::ContextMenu::checkOrEnableIfNeeded): Updated for TriState change.
643
644         * platform/text/StringHash.h:
645         (WebCore::StringHash::hash): Merged the StrHash<> template classes into this.
646         (WebCore::StringHash::equal): Ditto.
647         (WebCore::CaseFoldingHash::hash): Merged the CaseInsensitiveHash<> template
648         classes into this.
649         (WebCore::CaseFoldingHash::equal): Ditto.
650
651         * platform/text/StringImpl.cpp:
652         (WebCore::equal): Changed to invoke StringHash.
653         (WebCore::equalIgnoringCase): Changed to invoke CaseFoldingHash.
654
655         * dom/DOMImplementation.cpp:
656         (WebCore::addString): Updated to use StringHash and CaseFoldingHash.
657         (WebCore::isSVG10Feature): Ditto.
658         (WebCore::isSVG11Feature): Ditto.
659         * loader/FrameLoader.cpp:
660         (WebCore::localSchemes): Ditto.
661         * platform/graphics/FontCache.cpp:
662         (WebCore::computeHash): Ditto.
663         * platform/network/HTTPHeaderMap.h: Ditto.
664         * platform/text/PlatformString.h: Ditto.
665         * platform/text/StringImpl.h: Ditto.
666         * rendering/RenderPartObject.cpp:
667         (WebCore::RenderPartObject::updateWidget): Ditto.
668         * xml/XMLHttpRequest.cpp:
669         (WebCore::canSetRequestHeader): Ditto.
670
671         * rendering/RenderTreeAsText.cpp: Removed stray include of JSEditor.h.
672
673 2007-12-11  Darin Adler  <darin@apple.com>
674
675         * platform/wx/KeyboardEventWx.cpp:
676         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Another try at fixing the
677         WX build. Changes the code around a little bit.
678
679 2007-12-11  Darin Adler  <darin@apple.com>
680
681         * platform/wx/KeyboardEventWx.cpp:
682         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Quick try at fixing build.
683
684 2007-12-11  Dan Bernstein  <mitz@apple.com>
685
686         Reviewed by Darin Adler.
687
688         - fix <rdar://problem/5631507> Text doesn't wrap properly at Tamil version of Wikipedia
689
690         Test: fast/text/international/complex-character-based-fallback.html
691
692         * platform/graphics/Font.cpp:
693         (WebCore::Font::glyphDataForCharacter): Added a forceSmallCaps argument
694         that forces this function to use the small caps font. It is used for
695         combining marks that need to combine with a small cap.
696         * platform/graphics/Font.h:
697         * platform/win/UniscribeController.cpp:
698         (WebCore::UniscribeController::advance): Changed to split the string
699         into runs of characters that will be rendered using the same FontData.
700         This is done by calling glyphDataForCharacter() for each cahracter to
701         find the FontData it should be rendered with.
702         (WebCore::UniscribeController::itemizeShapeAndPlace): Added a fontData
703         argument that is passed on to shapeAndPlaceItem() instead of the
704         smallCaps argument.
705         (WebCore::UniscribeController::shapeAndPlaceItem): Added a fontData
706         argument and removed the font fallback logic from this function, as
707         it is now expected to be called with an item all of whose characters
708         can be rendered with the given fontData.
709         * platform/win/UniscribeController.h:
710
711 2007-12-07  Alexey Proskuryakov  <ap@webkit.org>
712
713         Reviewed by Darin.
714
715         <rdar://problem/5535636>
716         Have to press 4 times instead of 2 times to get the expected result of ^^ with german keyboard.
717
718         http://bugs.webkit.org/show_bug.cgi?id=13916
719         JavaScript detects Tab as a character input on a textfield validation
720
721         Test: platform/win/fast/events/double-dead-char.html
722
723         * platform/PlatformKeyboardEvent.h:
724         (WebCore::PlatformKeyboardEvent::):
725         (WebCore::PlatformKeyboardEvent::type):
726         (WebCore::PlatformKeyboardEvent::windowsVirtualKeyCode):
727         (WebCore::PlatformKeyboardEvent::setWindowsVirtualKeyCode):
728         (WebCore::PlatformKeyboardEvent::keyIdentifier):
729         (WebCore::PlatformKeyboardEvent::setIsAutoRepeat):
730         Added an explicit type member to differentiate different kinds of events:
731           RawKeyDown == keydown == WM_KEYDOWN
732           KeyUp == keyup == WM_KEYUP
733           Char == keypress == WM_CHAR
734           KeyDown == e.g. NSKeyDown or NSFlagsChanged, used on platforms that have a different model for
735           event processing, and needs to be converted to RawKeyDown (+ Char) for processing in DOM.
736
737         * platform/mac/KeyEventMac.mm:
738         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Updated for changed data members.
739         Fix Enter (numeric keypad) charCode to match Return, as we check for it from keypress default handlers.
740         (WebCore::windowsKeyCodeForKeyEvent): 
741         (WebCore::isKeyUpEvent): Made it do something closer to what it claims; added a FIXME explaining
742         that it still fails.
743         (WebCore::disambiguateKeyDownEvent): Downgrade from KeyDown to RawKeyDown or Char, removing information that
744         should not be available in those (because it cannot be provided on Windows).
745
746         * platform/win/KeyEventWin.cpp:
747         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Updated for changed data members.
748         Used standard Windows constants for bit masks instead of our own ones.
749         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent): Should never be called on Windows.
750
751         * platform/gtk/KeyEventGtk.cpp:
752         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
753         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
754         * platform/qt/PlatformKeyboardEventQt.cpp:
755         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
756         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
757         * platform/wx/KeyboardEventWx.cpp:
758         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
759         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
760         Updated for cross-platform changes as much as it was possible without appropriate build
761         environments.
762
763         * WebCore.base.exp: Export PlatformKeyboardEvent::disambiguateKeyDownEvent(), used by platforms that need to
764         convert their fancy key events to RawKeyDown/Char pairs. Export Editor::isTextInsertionCommand().
765
766         * bridge/EditorClient.h:
767         Renamed handleKeypress() to handleKeyboardEvent(), as it gets both keydowns and keypresses.
768         Renamed handleInputMethodKeypress() to handleInputMethodKeydown(), as IMs work with raw keydowns.
769
770         * dom/Document.h:
771         * dom/Document.cpp:
772         (WebCore::Document::defaultEventHandler): Moved accesskey processing to EventHandler.
773
774         * dom/KeyboardEvent.h: Added comments describing keyCode/charCode behavior.
775
776         * dom/KeyboardEvent.cpp:
777         (WebCore::eventTypeForKeyboardEventType):
778         (WebCore::KeyboardEvent::KeyboardEvent): Conversion between platform and DOM event types is
779         now straightforward, so scary hacks such as using autorepeat to distinguish types are
780         not needed.
781         (WebCore::KeyboardEvent::keyCode): Added a comment describing other browsers' behavior.
782         (WebCore::KeyboardEvent::charCode): Added a comment describing other browsers' behavior.
783         Changed to a more compatible behavior: raw keydown/keyup events do not and can not have
784         character codes.
785
786         * editing/Editor.h:
787         * editing/Editor.cpp:
788         (WebCore::Editor::isTextInsertionCommand): Is this command actually text input in disguise?
789         (WebCore::Editor::handleKeyboardEvent): Updated for new function names.
790         (WebCore::Editor::handleInputMethodKeydown): Ditto.
791
792         * html/HTMLButtonElement.cpp:
793         (WebCore::HTMLButtonElement::defaultEventHandler): Perform the default action when handling an
794         appropriate event. Enter is processed on keypress (and thus should be checked for via charCode,
795         not keyIdentifier), Space is processed on keydown+keyup! We now match IE in that a button is
796         highlighted when Space is pressed.
797
798         * html/HTMLInputElement.cpp:
799         (WebCore::HTMLInputElement::defaultEventHandler):
800         * html/HTMLSelectElement.cpp:
801         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
802         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
803         Made a number of fixes to when default actions take place, similar to HTMLButtonElement ones
804         described above.
805
806         * page/EventHandler.cpp:
807         (WebCore::EventHandler::keyEvent): Unless we have a combined KeyDown, just forward the event
808         to the target. Call accesskey handling directly, as it doesn't seem to be part of normal event
809         handling in IE. Also streamlined the code in KeyDown case, thanks to handleInputMethodKeypress()
810         now being handleInputMethodKeydown().
811         (WebCore::EventHandler::handleTextInputEvent): Check that we were not called from keydown.
812         (WebCore::EventHandler::defaultTextInputEventHandler): Removed a call to defaultTabEventHandler,
813         as default tab handling happens when processing keydown.
814         (WebCore::handleAccessKey): Moved from Document, as access keys are processed outside normal
815         event handling. Fixed accesskey processing to use information that's available in a raw keydown
816         event.
817
818         (WebCore::EventHandler::defaultKeyboardEventHandler): Do not ignore keydown; in particular,
819         handle tabs during keydown processing.
820
821         * page/mac/EventHandlerMac.mm:
822         (WebCore::EventHandler::currentKeyboardEvent): Disambiguate KeyDown as RawKeyDown, as this is
823         what callers want.
824
825         * platform/text/PlatformString.h:
826         * platform/text/String.cpp:
827         (WebCore::String::characterStartingAt):
828         * platform/text/StringImpl.cpp:
829         (WebCore::StringImpl::characterStartingAt):
830         * platform/text/StringImpl.h:
831         Added a UChar32 accessor.
832
833         * svg/graphics/SVGImageEmptyClients.h:
834         (WebCore::SVGEmptyEditorClient::handleKeyboardEvent):
835         (WebCore::SVGEmptyEditorClient::handleInputMethodKeydown):
836         Updated for new function names.
837
838 2007-12-11  John Sullivan  <sullivan@apple.com>
839
840         Reviewed by Adele
841
842         Tiger build fix -- don't call QTMovieView setDelegate: directly because it's not public
843
844         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
845         (WebCore::MediaPlayerPrivate::createQTMovieView):
846         (WebCore::MediaPlayerPrivate::detachQTMovieView):
847
848 2007-12-11  Alexey Proskuryakov  <ap@webkit.org>
849
850         Reviewed by Darin.
851
852         http://bugs.webkit.org/show_bug.cgi?id=16325
853         <rdar://problem/5632997> REGRESSION: www.xerox.ru doesn't work
854
855         Fix this on Windows, too!
856
857         Test: http/tests/misc/empty-cookie.html
858
859         * platform/network/win/CookieJarWin.cpp:
860         (WebCore::setCookies):
861         (WebCore::cookies):
862         Same fix as on Mac, translated into CF.
863
864         * platform/win/CookieJarWin.cpp: Removed - the real one is in platform/network/win.
865
866 2007-12-11  Christian Dywan  <christian@twotoasts.de>
867
868         Reviewed by Alp Toker.
869
870         http://bugs.webkit.org/show_bug.cgi?id=16371
871         Implement additional mouse cursors for Gtk
872
873         Added cursor bitmaps from Mozilla:
874         http://lxr.mozilla.org/mozilla1.8/source/widget/src/gtk2/nsGtkCursors.h
875
876         * platform/gtk/CursorGtk.cpp:
877         (WebCore::customCursorNew):
878         (WebCore::verticalTextCursor):
879         (WebCore::cellCursor):
880         (WebCore::contextMenuCursor):
881         (WebCore::noDropCursor):
882         (WebCore::copyCursor):
883         (WebCore::progressCursor):
884         (WebCore::aliasCursor):
885         (WebCore::noneCursor):
886         (WebCore::notAllowedCursor):
887         (WebCore::zoomInCursor):
888         (WebCore::zoomOutCursor):
889         * platform/gtk/CursorGtk.h: Added.
890
891 2007-12-10  Oliver Hunt  <oliver@apple.com>
892
893         Reviewed by Weinig, Dan, and Alexey.
894
895         Fix character set used for dynamically loaded scripts.
896
897         Fix for:
898             <rdar://problem/5333163> Safari can not display the mouse over pop menu on ChinaTimes News site correctly.
899             <rdar://problem/5530048> [Safari]? :Leopard9A576: The typed CH characters displays as garbage in Sina website after reloading the webpage.
900             <rdar://problem/5416588> All menus for chinese IBM site have wrong encoding
901             
902         Use the same logic to determine the charset for a script loaded dynamically
903         as we do for a statically loaded script.
904
905         * html/HTMLScriptElement.cpp:
906         (WebCore::HTMLScriptElement::insertedIntoDocument):
907
908 2007-12-10  Justin Garcia  <justin.garcia@apple.com>
909
910         Reviewed by Oliver Hunt.
911
912         <rdar://problem/5482023> GoogleDocs: After FormatBlock in an empty document, certain functions are disabled
913         
914         We were trying to insert a block of the requested type before the body element.
915         
916         * editing/FormatBlockCommand.cpp:
917         (WebCore::FormatBlockCommand::doApply): 
918         Removed unnecessary ()s in the if condition.
919         Removed "|| !upstreamStart.node()->isDescendantOf(root)" from the if condition, since
920         a) upstreamStart will never be outside the root editable element, since in that case
921         there would be no block inside the editable root to Format, and b) if upstreamStart.node() 
922         *is* the root, then refNode is the root, and we shouldn't insert before the root, we should insert
923         at [root, 0].
924         Added comments to explain the use of upstream() in the second if-clause.
925         Added an early return for case where there is nothing selected, in that case, there is nothing
926         to move.
927
928 2007-12-10  Adele Peterson  <adele@apple.com>
929
930         Reviewed and partially fixed by Tim Hatcher.
931
932         Remaining part of fix for <rdar://problem/5633400>
933         Transformed <video> is not clipped correctly until a repaint is forced
934
935         Replace the implementation of a QTKit method to avoid repaints from the NSView system associated with the QTMovie
936         from clobbering the WebCore repaints.
937
938         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::mediaPlayerRepaint): Added.
939         * html/HTMLMediaElement.h:
940         * platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::repaint): Added.
941         * platform/graphics/MediaPlayer.h: (WebCore::MediaPlayerClient::mediaPlayerRepaint): Added.
942
943         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
944         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
945         (method_setImplementation): Added for Tiger.
946
947         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): Call detachQTMovieView, which now does more cleanup.
948         (WebCore::MediaPlayerPrivate::cancelLoad): ditto.
949         (WebCore::MediaPlayerPrivate::setVisible): ditto.
950         (WebCore::MediaPlayerPrivate::detachQTMovieView): Clear the delegate as well as m_qtMovieView pointer.
951
952         (WebCore::MediaPlayerPrivate::repaint): Added.  Triggers a repaint on the video renderer.
953         (-[WebCoreMovieObserver repaint]): ditto.
954
955         (WebCore::mainThreadSetNeedsDisplay): Added.
956          Does a WebCore repaint instead of going through the view repaint system for QTMovieView.
957         (WebCore::MediaPlayerPrivate::createQTMovieView): Replace the implementation of _mainThreadSetNeedsDisplay.
958
959 2007-12-10  Geoffrey Garen  <ggaren@apple.com>
960
961         Reviewed by Sam Weinig.
962
963         Updated for rename in JavaScriptCore.
964
965         * bridge/mac/WebCoreScriptDebugger.mm:
966         (-[WebCoreScriptCallFrame scopeChain]):
967         (-[WebCoreScriptCallFrame functionName]):
968         (-[WebCoreScriptCallFrame evaluateWebScript:]):
969
970 2007-12-10  Rodney Dawes  <dobey@wayofthemonkey.com>
971
972         Bug 16383: Ambiguous Window Usage in kjs_dom.cpp
973         <http://bugs.webkit.org/show_bug.cgi?id=16383>
974
975         Use KJS::Window not the ambiguous Window
976
977         Reviewed by ddkilzer.
978
979         * bindings/js/kjs_dom.cpp (checkNodeSecurity):
980
981 2007-12-10  Sam Weinig  <sam@webkit.org>
982
983         Fix non-mac builds.
984
985         * page/WindowFeatures.cpp: #include <wtf/MathExtras.h> for isnan.
986
987 2007-12-10  Marvin Decker  <marv.decker@gmail.com>
988
989         Reviewed by Darin.
990
991         Fix a divide by 0 in the progress tracker.
992         http://bugs.webkit.org/show_bug.cgi?id=15055
993
994         * loader/ProgressTracker.cpp:
995         (WebCore::ProgressTracker::incrementProgress):
996
997 2007-12-09  Sam Weinig  <sam@webkit.org>
998
999         Reviewed by Darin.
1000
1001         More cleanup of kjs_window.
1002         - Move WindowFeatures from bridge/ to page/
1003         - Move functions related to WindowFeatures (boolFeature,
1004           floatFeature, setWindowFeature, parseWindowFeatures) into the class.
1005         - Fix up whitespace.
1006
1007         * WebCore.vcproj/WebCore.vcproj:
1008         * WebCore.xcodeproj/project.pbxproj:
1009         * bindings/js/kjs_window.cpp:
1010         (KJS::DOMWindowTimer::~DOMWindowTimer):
1011         (KJS::createWindow):
1012         (KJS::showModalDialog):
1013         (KJS::Window::getOwnPropertySlot):
1014         (KJS::Window::allowsAccessFrom):
1015         (KJS::Window::shouldInterruptScript):
1016         (KJS::WindowProtoFuncAToB::callAsFunction):
1017         (KJS::WindowProtoFuncOpen::callAsFunction):
1018         (KJS::Window::setReturnValueSlot):
1019         (KJS::ScheduledAction::execute):
1020         (KJS::Window::timerFired):
1021         (KJS::Location::Location):
1022         (KJS::Location::getValueProperty):
1023         (KJS::Location::getOwnPropertySlot):
1024         (KJS::Location::put):
1025         (KJS::LocationProtoFuncReplace::callAsFunction): Use better variable names.
1026         (KJS::LocationProtoFuncAssign::callAsFunction): Ditto.
1027         (KJS::LocationProtoFuncToString::callAsFunction): Remove extraneous calls to
1028         allowsAccessFrom, cleanup the function a little.
1029         (KJS::PausedTimeouts::~PausedTimeouts):
1030         * bridge/WindowFeatures.h: Removed.
1031         * page/WindowFeatures.cpp: Added.
1032         (WebCore::isSeparator):
1033         (WebCore::WindowFeatures::WindowFeatures):
1034         (WebCore::WindowFeatures::setWindowFeature):
1035         (WebCore::WindowFeatures::boolFeature):
1036         (WebCore::WindowFeatures::floatFeature):
1037         * page/WindowFeatures.h: Copied from WebCore/bridge/WindowFeatures.h.
1038         (WebCore::WindowFeatures::WindowFeatures):
1039
1040 2007-12-10  Timothy Hatcher  <timothy@apple.com>
1041
1042         Reviewed by Mark Rowe.
1043
1044         <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
1045
1046         * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
1047           so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
1048
1049 2007-12-10  Alp Toker  <alp@atoker.com>
1050
1051         Reviewed by Niko.
1052
1053         Cairo implementation of GraphicsContext::setUseAntialiasing().
1054
1055         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1056         (WebCore::GraphicsContext::setUseAntialiasing):
1057
1058 2007-12-10  Rob Buis  <buis@kde.org>
1059
1060         Reviewed by Darin.
1061
1062         http://bugs.webkit.org/show_bug.cgi?id=16182
1063         SVG should disable antialiasing for shape-rendering="crispEdges"
1064
1065         Turn off anti-aliasing of shapes when shape-rendering="crispEdges".
1066
1067         * platform/graphics/GraphicsContext.h:
1068         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1069         (WebCore::GraphicsContext::setUseAntialiasing):
1070         * platform/graphics/cg/GraphicsContextCG.cpp:
1071         (WebCore::GraphicsContext::setUseAntialiasing):
1072         * platform/graphics/qt/GraphicsContextQt.cpp:
1073         (WebCore::GraphicsContext::setUseAntialiasing):
1074         * platform/graphics/wx/GraphicsContextWx.cpp:
1075         (WebCore::GraphicsContext::setUseAntialiasing):
1076         * rendering/RenderPath.cpp:
1077         (WebCore::RenderPath::paint):
1078
1079 2007-12-09  Rob Buis  <buis@kde.org>
1080
1081         Reviewed by Niko.
1082
1083         http://bugs.webkit.org/show_bug.cgi?id=16163
1084         SVG crash in Node::setChanged() on Debug builds only (trashed parent)
1085
1086         Fix the crash by properly unregistering as client from SVGResource
1087         when deleting a styled svg node.
1088
1089         * svg/SVGStyledElement.cpp:
1090         (WebCore::SVGStyledElement::~SVGStyledElement):
1091
1092 2007-12-10  Brady Eidson  <beidson@apple.com>
1093
1094         Rubberstamped by John
1095
1096         * storage/DatabaseTracker.cpp:
1097         (WebCore::DatabaseTracker::canEstablishDatabase): If the UI Delegate returns *exactly* the estimated size
1098           for the new quota, we should allow the database to be created
1099
1100 2007-12-10  David D. Kilzer  <ddkilzer@webkit.org>
1101
1102         Bug 9683: Implement select.options.remove() method
1103         <http://bugs.webkit.org/show_bug.cgi?id=9683>
1104
1105         Reviewed by Maciej.
1106
1107         Implement select.options.remove() by calling select.remove()
1108         with the same arguments.  This is what MSIE 7 does, although its
1109         select.remove() method differs from WebKit's by throwing an
1110         exception when called with no arguments or with a negative
1111         integer argument.  Note that the DOM Level 1 documentation
1112         specifies that select.remove() does not throw an exception.
1113
1114         Tests: fast/js/select-options-remove-gc.html
1115                fast/js/select-options-remove.html
1116
1117         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
1118         (WebCore::JSHTMLOptionsCollection::remove): Added.
1119         * html/HTMLOptionsCollection.cpp:
1120         (WebCore::HTMLOptionsCollection::remove): Added.
1121         * html/HTMLOptionsCollection.h:
1122         * html/HTMLOptionsCollection.idl:
1123
1124 2007-12-09  Sam Weinig  <sam@webkit.org>
1125
1126         Rubber stamped by Mark Rowe.
1127
1128         * WebCore.xcodeproj/project.pbxproj: Add missing DerivedSources files.
1129
1130 2007-12-09  Oliver Hunt  <oliver@apple.com>
1131
1132         Reviewed by Niko.
1133
1134         Correction, 'z' and 'Z' are the only commands that cannot have an extended
1135         list of arguments.
1136
1137         * svg/SVGParserUtilities.cpp:
1138         (WebCore::SVGPathParser::parseSVG):
1139
1140 2007-12-09  Oliver Hunt  <oliver@apple.com>
1141
1142         Reviewed by Niko.
1143
1144         Prevent unlimited iteration in the case of invalid path data.
1145         
1146         The only path commands that can leave numbers trailing the command processing
1147         are 'm' and 'M', in which trailing numbers are parsed as arguments to an
1148         implicit lineto command.  In any case we should just terminate as an invalid
1149         path.
1150
1151         * svg/SVGParserUtilities.cpp:
1152         (WebCore::SVGPathParser::parseSVG):
1153
1154 2007-12-09  Luca Bruno  <lethalman88@gmail.com>
1155
1156         Reviewed by Alp Toker.
1157
1158         http://bugs.webkit.org/show_bug.cgi?id=15825
1159         [GTK] curl - slow dns causing hangs.
1160
1161         Create a vector of jobs, to satisfy requests in the right order.
1162         Set a limit to the number of simultaneous connections.
1163
1164         * platform/network/curl/ResourceHandleManager.cpp:
1165         (WebCore::maxRunningJobs): added
1166         (WebCore::ResourceHandleManager::ResourceHandleManager):
1167         (WebCore::ResourceHandleManager::removeFromCurl):
1168         (WebCore::ResourceHandleManager::startScheduledJobs):
1169
1170         * platform/network/curl/ResourceHandleManager.h:
1171         (WebCore::ResourceHandleList): removed
1172         (WebCore::ResourceHandleManager::m_runningJobs): added
1173         (WebCore::ResourceHandleManager::m_resourceHandleListHead): removed
1174         (WebCore::ResourceHandleManager::m_resourceHandleList): added
1175
1176 2007-12-08  Sam Weinig  <sam@webkit.org>
1177
1178         Reviewed by Oliver.
1179
1180         Cleanup kjs_window.h/cpp.
1181
1182         * bindings/js/kjs_window.cpp:
1183         (KJS::WindowPrivate::WindowPrivate):
1184         (KJS::DOMWindowTimer::DOMWindowTimer):
1185         (KJS::Window::Window):
1186         (KJS::Window::retrieveWindow):
1187         (KJS::Window::retrieveActive):
1188         (KJS::Window::retrieve):
1189         (KJS::Window::location):
1190         (KJS::Window::mark):
1191         (KJS::allowPopUp):
1192         (KJS::parseModalDialogFeatures):
1193         (KJS::floatFeature):
1194         (KJS::canShowModalDialog):
1195         (KJS::canShowModalDialogNow):
1196         (KJS::showModalDialog):
1197         (KJS::Window::getValueProperty):
1198         (KJS::Window::getOwnPropertySlot):
1199         (KJS::Window::globalExec):
1200         (KJS::Window::setListener):
1201         (KJS::Window::getListener):
1202         (KJS::Window::findOrCreateJSEventListener):
1203         (KJS::Window::findOrCreateJSUnprotectedEventListener):
1204         (KJS::Window::clearHelperObjectProperties):
1205         (KJS::Window::setCurrentEvent):
1206         (KJS::WindowProtoFuncAToB::callAsFunction):
1207         (KJS::WindowProtoFuncBToA::callAsFunction):
1208         (KJS::WindowProtoFuncOpen::callAsFunction):
1209         (KJS::WindowProtoFuncSetTimeout::callAsFunction):
1210         (KJS::WindowProtoFuncClearTimeout::callAsFunction):
1211         (KJS::WindowProtoFuncSetInterval::callAsFunction):
1212         (KJS::WindowProtoFuncAddEventListener::callAsFunction):
1213         (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
1214         (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
1215         (KJS::WindowProtoFuncNotImplemented::callAsFunction):
1216         * bindings/js/kjs_window.h:
1217         (KJS::PausedTimeouts::PausedTimeouts):
1218         (KJS::PausedTimeouts::takeTimeouts):
1219         (KJS::ScheduledAction::ScheduledAction):
1220
1221 2007-12-08  Sam Weinig  <sam@webkit.org>
1222
1223         Reviewed by Mitz.
1224
1225         Move window scrolling, moving and resizing methods from KJS::Window
1226         to WebCore::DOMWindow so that there bindings can be autogenerated.
1227
1228         Tests: fast/dom/Window/window-resize-and-move-arguments.html
1229                fast/dom/Window/window-scroll-arguments.html
1230
1231         * WebCore.xcodeproj/project.pbxproj:
1232         * bindings/js/kjs_window.cpp:
1233         (KJS::Window::getValueProperty): Remove extraneous allowsAccessFrom check.
1234         (KJS::WindowProtoFuncOpen::callAsFunction):
1235         (KJS::WindowProtoFuncNotImplemented::callAsFunction): Remove extraneous allowsAccessFrom check.
1236         * bindings/js/kjs_window.h:
1237         * bindings/scripts/CodeGeneratorJS.pm: Add new extended attribute
1238         to ensure that the no less than the declared number of attributes
1239         is allowed.
1240         * page/DOMWindow.cpp:
1241         (WebCore::DOMWindow::adjustWindowRect): Moved from kjs_window.
1242         (WebCore::DOMWindow::scrollBy):
1243         (WebCore::DOMWindow::scrollTo):
1244         (WebCore::DOMWindow::moveBy):
1245         (WebCore::DOMWindow::moveTo):
1246         (WebCore::DOMWindow::resizeBy):
1247         (WebCore::DOMWindow::resizeTo):
1248         * page/DOMWindow.h:
1249         (WebCore::DOMWindow::scroll):
1250         * page/DOMWindow.idl:
1251
1252 2007-12-08  Kevin Ollivier  <kevino@theolliviers.com>
1253
1254         Reviewed by Alp Toker.
1255
1256         http://bugs.webkit.org/show_bug.cgi?id=14651
1257         [CURL] didReceiveResponse() only called for HTTP loads
1258
1259         http://bugs.webkit.org/show_bug.cgi?id=14583
1260         [GDK] file:// relative CSS include URLs handled incorrectly
1261
1262         Make sure CURL sets the ResourceResponse URL and calls
1263         didReceiveResponse for local files too. 
1264
1265         * platform/network/curl/ResourceHandleManager.cpp:
1266         (WebCore::writeCallback):
1267
1268 2007-12-08  Oliver Hunt  <oliver@apple.com>
1269
1270         Reviewed by Sam W.
1271
1272         Split the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags.
1273         
1274         Fixes <rdar://problem/5620249> Must disable SVG animation
1275         <rdar://problem/5612772> Disable SVG filters on Mac to match Windows behavior
1276         
1277         In order to allow finer grained control over the set of SVG features
1278         this patch splits ENABLE_SVG_EXPERIMENTAL_FEATURES into the following
1279         distinct flags:
1280         ENABLE_SVG_ANIMATION
1281         ENABLE_SVG_FILTERS
1282         ENABLE_SVG_FONTS
1283         ENABLE_SVG_AS_IMAGE
1284         ENABLE_SVG_USE
1285         
1286         by default only ENABLE_SVG_AS_IMAGE and ENABLE_SVG_USE are set.
1287
1288         * Configurations/WebCore.xcconfig:
1289         * DerivedSources.make:
1290           Handle the increased number of build flags that may be necessary
1291           
1292         * WebCore.SVG.Animation.exp: Added.
1293         * WebCore.SVG.Filters.exp: Added.
1294         * WebCore.SVG.exp:
1295           We now may not need the animation or filter exports so 
1296           these need to be separate.
1297           
1298         * WebCore.vcproj/WebCore.vcproj:
1299         * WebCore.vcproj/build-generated-files.sh:
1300           Update for new flags
1301           
1302         Remainder of changes are to swap ENABLE(SVG_EXPERIMENTAL_FEATURES) 
1303         with the appropriate specific feature flag.  
1304         * bindings/js/JSSVGElementWrapperFactory.cpp:
1305         (WebCore::createJSSVGWrapper):
1306         * bindings/objc/DOM.mm:
1307         (WebCore::createElementClassMap):
1308         * dom/make_names.pl:
1309         * loader/CachedImage.cpp:
1310         (WebCore::CachedImage::createImage):
1311         * page/DOMWindow.idl:
1312         * rendering/RenderPath.cpp:
1313         (WebCore::RenderPath::absoluteClippedOverflowRect):
1314         * rendering/RenderSVGContainer.cpp:
1315         (WebCore::RenderSVGContainer::absoluteClippedOverflowRect):
1316         * rendering/RenderSVGImage.cpp:
1317         (WebCore::RenderSVGImage::absoluteClippedOverflowRect):
1318         * rendering/RenderSVGRoot.cpp:
1319         (WebCore::RenderSVGRoot::paint):
1320         (WebCore::RenderSVGRoot::absoluteClippedOverflowRect):
1321         * rendering/RenderSVGText.cpp:
1322         (WebCore::RenderSVGText::absoluteClippedOverflowRect):
1323         * rendering/SVGRenderSupport.cpp:
1324         (WebCore::prepareToRenderSVGContent):
1325         (WebCore::finishRenderSVGContent):
1326         * svg/SVGAnimateElement.cpp:
1327         * svg/SVGAnimateElement.h:
1328         * svg/SVGAnimateElement.idl:
1329         * svg/SVGAnimateMotionElement.cpp:
1330         * svg/SVGAnimateMotionElement.h:
1331         * svg/SVGAnimateTransformElement.cpp:
1332         * svg/SVGAnimateTransformElement.h:
1333         * svg/SVGAnimateTransformElement.idl:
1334         * svg/SVGComponentTransferFunctionElement.cpp:
1335         * svg/SVGComponentTransferFunctionElement.h:
1336         * svg/SVGComponentTransferFunctionElement.idl:
1337         * svg/SVGDocumentExtensions.cpp:
1338         (WebCore::SVGDocumentExtensions::startAnimations):
1339         * svg/SVGFEBlendElement.cpp:
1340         * svg/SVGFEBlendElement.h:
1341         * svg/SVGFEBlendElement.idl:
1342         * svg/SVGFEColorMatrixElement.cpp:
1343         * svg/SVGFEColorMatrixElement.h:
1344         * svg/SVGFEColorMatrixElement.idl:
1345         * svg/SVGFEComponentTransferElement.cpp:
1346         * svg/SVGFEComponentTransferElement.h:
1347         * svg/SVGFEComponentTransferElement.idl:
1348         * svg/SVGFECompositeElement.cpp:
1349         * svg/SVGFECompositeElement.h:
1350         * svg/SVGFECompositeElement.idl:
1351         * svg/SVGFEDiffuseLightingElement.cpp:
1352         * svg/SVGFEDiffuseLightingElement.h:
1353         * svg/SVGFEDiffuseLightingElement.idl:
1354         * svg/SVGFEDisplacementMapElement.cpp:
1355         * svg/SVGFEDisplacementMapElement.h:
1356         * svg/SVGFEDisplacementMapElement.idl:
1357         * svg/SVGFEDistantLightElement.cpp:
1358         * svg/SVGFEDistantLightElement.h:
1359         * svg/SVGFEDistantLightElement.idl:
1360         * svg/SVGFEFloodElement.cpp:
1361         * svg/SVGFEFloodElement.h:
1362         * svg/SVGFEFloodElement.idl:
1363         * svg/SVGFEFuncAElement.cpp:
1364         * svg/SVGFEFuncAElement.h:
1365         * svg/SVGFEFuncAElement.idl:
1366         * svg/SVGFEFuncBElement.cpp:
1367         * svg/SVGFEFuncBElement.h:
1368         * svg/SVGFEFuncBElement.idl:
1369         * svg/SVGFEFuncGElement.cpp:
1370         * svg/SVGFEFuncGElement.h:
1371         * svg/SVGFEFuncGElement.idl:
1372         * svg/SVGFEFuncRElement.cpp:
1373         * svg/SVGFEFuncRElement.h:
1374         * svg/SVGFEFuncRElement.idl:
1375         * svg/SVGFEGaussianBlurElement.cpp:
1376         * svg/SVGFEGaussianBlurElement.h:
1377         * svg/SVGFEGaussianBlurElement.idl:
1378         * svg/SVGFEImageElement.cpp:
1379         * svg/SVGFEImageElement.h:
1380         * svg/SVGFEImageElement.idl:
1381         * svg/SVGFELightElement.cpp:
1382         * svg/SVGFELightElement.h:
1383         * svg/SVGFEMergeElement.cpp:
1384         * svg/SVGFEMergeElement.h:
1385         * svg/SVGFEMergeElement.idl:
1386         * svg/SVGFEMergeNodeElement.cpp:
1387         * svg/SVGFEMergeNodeElement.h:
1388         * svg/SVGFEMergeNodeElement.idl:
1389         * svg/SVGFEOffsetElement.cpp:
1390         * svg/SVGFEOffsetElement.h:
1391         * svg/SVGFEOffsetElement.idl:
1392         * svg/SVGFEPointLightElement.cpp:
1393         * svg/SVGFEPointLightElement.h:
1394         * svg/SVGFEPointLightElement.idl:
1395         * svg/SVGFESpecularLightingElement.cpp:
1396         * svg/SVGFESpecularLightingElement.h:
1397         * svg/SVGFESpecularLightingElement.idl:
1398         * svg/SVGFESpotLightElement.cpp:
1399         * svg/SVGFESpotLightElement.h:
1400         * svg/SVGFESpotLightElement.idl:
1401         * svg/SVGFETileElement.cpp:
1402         * svg/SVGFETileElement.h:
1403         * svg/SVGFETileElement.idl:
1404         * svg/SVGFETurbulenceElement.cpp:
1405         * svg/SVGFETurbulenceElement.h:
1406         * svg/SVGFETurbulenceElement.idl:
1407         * svg/SVGFilterElement.cpp:
1408         * svg/SVGFilterElement.h:
1409         * svg/SVGFilterElement.idl:
1410         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1411         * svg/SVGTimer.cpp:
1412         (WebCore::SVGTimer::animationsByElement):
1413         * svg/SVGUseElement.cpp:
1414         (WebCore::SVGUseElement::buildPendingResource):
1415         (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
1416         * svg/SVGUseElement.h:
1417         * svg/TimeScheduler.cpp:
1418         (WebCore::TimeScheduler::connectIntervalTimer):
1419         (WebCore::TimeScheduler::disconnectIntervalTimer):
1420         * svg/graphics/SVGResourceFilter.cpp:
1421         * svg/graphics/SVGResourceFilter.h:
1422         * svg/graphics/cg/SVGResourceFilterCg.cpp:
1423         * svg/graphics/cg/SVGResourceFilterCg.mm:
1424         * svg/graphics/filters/SVGDistantLightSource.h:
1425         * svg/graphics/filters/SVGFEBlend.cpp:
1426         * svg/graphics/filters/SVGFEBlend.h:
1427         * svg/graphics/filters/SVGFEColorMatrix.cpp:
1428         * svg/graphics/filters/SVGFEColorMatrix.h:
1429         * svg/graphics/filters/SVGFEComponentTransfer.cpp:
1430         * svg/graphics/filters/SVGFEComponentTransfer.h:
1431         * svg/graphics/filters/SVGFEComposite.cpp:
1432         * svg/graphics/filters/SVGFEComposite.h:
1433         * svg/graphics/filters/SVGFEConvolveMatrix.cpp:
1434         * svg/graphics/filters/SVGFEConvolveMatrix.h:
1435         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
1436         * svg/graphics/filters/SVGFEDiffuseLighting.h:
1437         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
1438         * svg/graphics/filters/SVGFEDisplacementMap.h:
1439         * svg/graphics/filters/SVGFEFlood.cpp:
1440         * svg/graphics/filters/SVGFEFlood.h:
1441         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
1442         * svg/graphics/filters/SVGFEGaussianBlur.h:
1443         * svg/graphics/filters/SVGFEImage.cpp:
1444         * svg/graphics/filters/SVGFEImage.h:
1445         * svg/graphics/filters/SVGFEMerge.cpp:
1446         * svg/graphics/filters/SVGFEMerge.h:
1447         * svg/graphics/filters/SVGFEMorphology.cpp:
1448         * svg/graphics/filters/SVGFEMorphology.h:
1449         * svg/graphics/filters/SVGFEOffset.cpp:
1450         * svg/graphics/filters/SVGFEOffset.h:
1451         * svg/graphics/filters/SVGFESpecularLighting.cpp:
1452         * svg/graphics/filters/SVGFESpecularLighting.h:
1453         * svg/graphics/filters/SVGFETile.h:
1454         * svg/graphics/filters/SVGFETurbulence.cpp:
1455         * svg/graphics/filters/SVGFETurbulence.h:
1456         * svg/graphics/filters/SVGFilterEffect.cpp:
1457         * svg/graphics/filters/SVGFilterEffect.h:
1458         * svg/graphics/filters/SVGLightSource.cpp:
1459         * svg/graphics/filters/SVGLightSource.h:
1460         * svg/graphics/filters/SVGPointLightSource.h:
1461         * svg/graphics/filters/SVGSpotLightSource.h:
1462         * svg/graphics/filters/cg/SVGFEBlendCg.mm:
1463         * svg/graphics/filters/cg/SVGFEColorMatrixCg.mm:
1464         * svg/graphics/filters/cg/SVGFEComponentTransferCg.mm:
1465         * svg/graphics/filters/cg/SVGFECompositeCg.mm:
1466         * svg/graphics/filters/cg/SVGFEDiffuseLightingCg.mm:
1467         * svg/graphics/filters/cg/SVGFEDisplacementMapCg.mm:
1468         * svg/graphics/filters/cg/SVGFEFloodCg.mm:
1469         * svg/graphics/filters/cg/SVGFEGaussianBlurCg.mm:
1470         * svg/graphics/filters/cg/SVGFEHelpersCg.h:
1471         * svg/graphics/filters/cg/SVGFEHelpersCg.mm:
1472         * svg/graphics/filters/cg/SVGFEImageCg.mm:
1473         * svg/graphics/filters/cg/SVGFEMergeCg.mm:
1474         * svg/graphics/filters/cg/SVGFEOffsetCg.mm:
1475         * svg/graphics/filters/cg/SVGFESpecularLightingCg.mm:
1476         * svg/graphics/filters/cg/SVGFETileCg.mm:
1477         * svg/graphics/filters/cg/SVGFilterEffectCg.mm:
1478         * svg/graphics/filters/cg/WKArithmeticFilter.h:
1479         * svg/graphics/filters/cg/WKArithmeticFilter.m:
1480         * svg/graphics/filters/cg/WKComponentMergeFilter.h:
1481         * svg/graphics/filters/cg/WKComponentMergeFilter.m:
1482         * svg/graphics/filters/cg/WKDiffuseLightingFilter.h:
1483         * svg/graphics/filters/cg/WKDiffuseLightingFilter.m:
1484         * svg/graphics/filters/cg/WKDiscreteTransferFilter.h:
1485         * svg/graphics/filters/cg/WKDiscreteTransferFilter.m:
1486         * svg/graphics/filters/cg/WKDisplacementMapFilter.h:
1487         * svg/graphics/filters/cg/WKDisplacementMapFilter.m:
1488         * svg/graphics/filters/cg/WKDistantLightFilter.h:
1489         * svg/graphics/filters/cg/WKDistantLightFilter.m:
1490         * svg/graphics/filters/cg/WKGammaTransferFilter.h:
1491         * svg/graphics/filters/cg/WKGammaTransferFilter.m:
1492         * svg/graphics/filters/cg/WKIdentityTransferFilter.h:
1493         * svg/graphics/filters/cg/WKIdentityTransferFilter.m:
1494         * svg/graphics/filters/cg/WKLinearTransferFilter.h:
1495         * svg/graphics/filters/cg/WKLinearTransferFilter.m:
1496         * svg/graphics/filters/cg/WKNormalMapFilter.h:
1497         * svg/graphics/filters/cg/WKNormalMapFilter.m:
1498         * svg/graphics/filters/cg/WKPointLightFilter.h:
1499         * svg/graphics/filters/cg/WKPointLightFilter.m:
1500         * svg/graphics/filters/cg/WKSpecularLightingFilter.h:
1501         * svg/graphics/filters/cg/WKSpecularLightingFilter.m:
1502         * svg/graphics/filters/cg/WKSpotLightFilter.h:
1503         * svg/graphics/filters/cg/WKSpotLightFilter.m:
1504         * svg/graphics/filters/cg/WKTableTransferFilter.h:
1505         * svg/graphics/filters/cg/WKTableTransferFilter.m:
1506         * svg/graphics/mac/SVGResourceFilterPlatformDataMac.h:
1507         * svg/graphics/mac/SVGResourceFilterPlatformDataMac.mm:
1508         * svg/svgtags.in:
1509
1510 2007-12-08  Dan Bernstein  <mitz@apple.com>
1511
1512         Reviewed by Adele Peterson.
1513
1514         - fix two bugs in parsing of stylesheets in <style> elements created by
1515           the parser:
1516           1. each such stylesheet is parsed twice, once when the text node is
1517              added and again when the </style> tag is reached
1518           2. re-inserting such a <style> element into the document fails to
1519              re-parse and apply its stylesheet.
1520
1521         Test for bug #2: fast/dom/HTMLStyleElement/insert-parser-generated.html
1522
1523         * html/HTMLStyleElement.cpp:
1524         (WebCore::HTMLStyleElement::finishedParsing):
1525         * svg/SVGStyleElement.cpp:
1526         (WebCore::SVGStyleElement::finishedParsing):
1527
1528 2007-12-07  Sam Weinig  <sam@webkit.org>
1529
1530         Reviewed by Darin.
1531
1532         - Removes the faulty isSafeScript implementation that was only
1533           used for plugins.
1534         - Renames isSafeScript to allowsAccessFrom.
1535
1536         * bindings/js/JSDOMWindowCustom.cpp:
1537         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
1538         (WebCore::JSDOMWindow::customPut):
1539         * bindings/js/kjs_dom.cpp:
1540         (WebCore::checkNodeSecurity):
1541         * bindings/js/kjs_window.cpp:
1542         (KJS::createWindow):
1543         (KJS::Window::getValueProperty):
1544         (KJS::Window::namedItemGetter):
1545         (KJS::Window::getOwnPropertySlot):
1546         (KJS::Window::put):
1547         (KJS::Window::allowsAccessFrom):
1548         (KJS::Window::setListener):
1549         (KJS::Window::getListener):
1550         (KJS::WindowProtoFuncOpen::callAsFunction):
1551         (KJS::WindowProtoFuncSetTimeout::callAsFunction):
1552         (KJS::WindowProtoFuncClearTimeout::callAsFunction):
1553         (KJS::WindowProtoFuncSetInterval::callAsFunction):
1554         (KJS::WindowProtoFuncAddEventListener::callAsFunction):
1555         (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
1556         (KJS::WindowProtoFuncNotImplemented::callAsFunction):
1557         (KJS::Location::getOwnPropertySlot):
1558         (KJS::Location::put):
1559         (KJS::LocationProtoFuncReplace::callAsFunction):
1560         (KJS::LocationProtoFuncReload::callAsFunction):
1561         (KJS::LocationProtoFuncAssign::callAsFunction):
1562         (KJS::LocationProtoFuncToString::callAsFunction):
1563         * bindings/js/kjs_window.h:
1564         (KJS::Window::allowsAccessFrom):
1565         * bindings/objc/WebScriptObject.mm:
1566         (-[WebScriptObject _isSafeScript]): Reverse caller/argument of allowsAccessFrom to match
1567         the new call.
1568         * bindings/scripts/CodeGeneratorJS.pm:
1569
1570 2007-12-08  Rob Buis  <buis@kde.org>
1571
1572         Reviewed by Darin.
1573
1574         http://bugs.webkit.org/show_bug.cgi?id=15464
1575         SVGLengthList allows bad values
1576
1577         Be more strict with svg lengths without a unit identifier.
1578
1579         Test: svg/custom/invalid-lengthlist.svg
1580
1581         * svg/SVGLength.cpp:
1582         (WebCore::SVGLength::setValueAsString):
1583
1584 2007-12-08  Rob Buis  <buis@kde.org>
1585
1586         Mac Tiger build fix.
1587
1588         Use the wtf prefix when including MathExtras.h.
1589
1590         * rendering/RenderMedia.cpp:
1591
1592 2007-12-08  Alp Toker  <alp@atoker.com>
1593
1594         GTK+ build fix (for ENABLE_VIDEO builds):
1595
1596         Include MathExtras.h to get isfinite().
1597
1598         * rendering/RenderMedia.cpp:
1599
1600 2007-12-08  Rob Buis  <buis@kde.org>
1601
1602         Reviewed by Darin.
1603
1604         http://bugs.webkit.org/show_bug.cgi?id=15528
1605         svg_dynamic_cast should be removed
1606
1607         Replace svg_dynamic_cast with a combination of
1608         isSVGElement and static_cast.
1609
1610         * rendering/SVGRootInlineBox.cpp:
1611         (WebCore::SVGRootInlineBox::buildLayoutInformation):
1612         (WebCore::SVGRootInlineBox::buildTextChunks):
1613         * svg/SVGAnimationElement.cpp:
1614         (WebCore::SVGAnimationElement::targetElement):
1615         * svg/SVGElement.h:
1616         * svg/SVGElementInstance.cpp:
1617         (WebCore::SVGElementInstance::updateInstance):
1618         * svg/SVGFilterElement.cpp:
1619         (WebCore::SVGFilterElement::canvasResource):
1620         * svg/SVGGradientElement.cpp:
1621         (WebCore::SVGGradientElement::buildStops):
1622         * svg/SVGLocatable.cpp:
1623         (WebCore::SVGLocatable::getTransformToElement):
1624         * svg/SVGMaskElement.cpp:
1625         (WebCore::SVGMaskElement::drawMaskerContent):
1626         * svg/SVGSwitchElement.cpp:
1627         (WebCore::SVGSwitchElement::childShouldCreateRenderer):
1628         * svg/SVGUseElement.cpp:
1629         (WebCore::SVGUseElement::insertedIntoDocument):
1630         (WebCore::SVGUseElement::buildPendingResource):
1631         (WebCore::SVGUseElement::buildInstanceTree):
1632         (WebCore::SVGUseElement::handleDeepUseReferencing):
1633         (WebCore::SVGUseElement::buildShadowTree):
1634         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
1635         (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
1636         * svg/graphics/SVGResource.cpp:
1637         (WebCore::getResourceById):
1638
1639 2007-12-07  Antti Koivisto  <antti@apple.com>
1640
1641         Reviewed by Adele.
1642         
1643         Partial fix for <rdar://problem/5633400>
1644         Transformed <video>, <img>, <embed> are not clipped correctly until a repaint is forced
1645         
1646         Fix video painting when transform is applied.
1647
1648         Test: media/video-transformed.html
1649
1650         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1651         (WebCore::MediaPlayerPrivate::paint):
1652
1653 2007-12-07  Dan Bernstein  <mitz@apple.com>
1654
1655         Reviewed by Sam Weinig.
1656
1657         - fix http://bugs.webkit.org/show_bug.cgi?id=16348
1658           @font-face does not affect the default style
1659
1660         Test: fast/css/font-face-default-font.html
1661
1662         * dom/Document.cpp:
1663         (WebCore::Document::recalcStyle): Pass our font selector to
1664         Font::update() if we already have one.
1665
1666 2007-12-07  Darin Adler  <darin@apple.com>
1667
1668         - fix Windows build
1669
1670         * bridge/win/GlobalHistoryWin.cpp:
1671         (WebCore::historyContains): Missed a rename.
1672
1673 2007-12-07  Brady Eidson  <beidson@apple.com>
1674
1675         Reviewed by Anders and Darin
1676
1677         When a statement bumps up against the quota and the UI Delegate grants more space, we need to
1678         actually set the new maximum size on the SQLiteDatabase (in addition to storing the new max quota
1679         in the DatabaseTracker, which was already done)
1680
1681         * storage/SQLTransaction.cpp:
1682         (WebCore::SQLTransaction::runStatements): If a statement is being retried, set the maximum size on
1683           the SQLiteDatabase to the new maximum size
1684
1685 2007-12-07  Darin Adler  <darin@apple.com>
1686
1687         - fix Tiger build
1688
1689         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Tiger didn't even have
1690         QTKIT_VERSION_MAX_ALLOWED, so add logic to work without that.
1691
1692 2007-12-07  Darin Adler  <darin@apple.com>
1693
1694         - fix 64-bit build, hopefully without breaking Tiger build
1695
1696         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1697         (WebCore::MediaPlayerPrivate::updateStates):
1698         Don't use Movies.h constants that are nonexistent in 64-bit.
1699         Define the new QTMovie.h constants, though, when using an older QTKit.
1700
1701 2007-12-07  Brady Eidson  <beidson@apple.com>
1702
1703         Reviewed by Anders
1704
1705         Fix <rdar://problem/5636115> - Prompted for quota increase to create database when it already existed
1706
1707         * storage/DatabaseTracker.cpp:
1708         (WebCore::DatabaseTracker::canEstablishDatabase): Check hasEntryForDatabase before doing any prompting
1709         (WebCore::DatabaseTracker::hasEntryForDatabase): Check and see if this database already exists
1710         * storage/DatabaseTracker.h:
1711
1712 2007-12-07  Darin Adler  <darin@apple.com>
1713
1714         Reviewed by Mitz.
1715
1716         - http://bugs.webkit.org/show_bug.cgi?id=15981
1717           speed up visited-link code a bit
1718
1719         * bridge/GlobalHistory.h: Change historyContains to take a character pointer plus length
1720         instead of requiring a DeprecatedString.
1721
1722         * bridge/mac/GlobalHistoryMac.mm: (WebCore::historyContains): Updated for above change.
1723         Also removes pointless "fast Latin-1" case that was never used.
1724         * bridge/win/GlobalHistoryWin.cpp: (WebCore::historyContains): Ditto.
1725         * platform/gtk/TemporaryLinkStubs.cpp: (WebCore::historyContains): Ditto.
1726         * platform/wx/TemporaryLinkStubs.cpp: (WebCore::historyContains): Ditto.
1727
1728         * css/CSSStyleSelector.cpp:
1729         (WebCore::findHash): Added. Helper for cleanpath.
1730         (WebCore::findSlashDotDotSlash): Ditto.
1731         (WebCore::findSlashSlash): Ditto.
1732         (WebCore::findSlashDotSlash): Ditto.
1733         (WebCore::cleanpath): Changed to use fast helper functions instead of slower general-purpose
1734         DeprecatedString find function.
1735         (WebCore::containsColonSlashSlash): Added. Helper for checkPseudoState.
1736         (WebCore::checkPseudoState): Got rid of reference count churn by using an AtomicString*
1737         instead of an AtomicString for the attribute value. Changed to use fast helper function
1738         instead of slower DeprecatedString::contains function, and also made the fast case not
1739         bother allocating a DeprecatedConstString.
1740
1741         - unrelated tiny cleanup
1742
1743         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
1744         (WebCore::releaseCachedStops): Use static_cast instead of reinterpret_cast.
1745         (WebCore::cgGradientCallback): Ditto.
1746
1747 2007-12-07  Darin Adler  <darin@apple.com>
1748
1749         Fix build on Tiger (Mark Rowe told me how).
1750
1751         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1752         Include <objc/objc-runtime.h>, which existed back on Tiger,
1753         rather than <objc/runtime.h>, which did not.
1754
1755 2007-12-07  Geoffrey Garen  <ggaren@apple.com>
1756
1757         Build fix: rolling out last build fix to change #include path.
1758
1759         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1760
1761 2007-12-07  Steve Falkenburg  <sfalken@apple.com>
1762
1763         Re-named our B&I flag from BUILDBOT to PRODUCTION.
1764
1765         Reviewed by Sam Weinig.
1766
1767         * WebCore.vcproj/WebCore.make:
1768
1769 2007-12-07  Geoffrey Garen  <ggaren@apple.com>
1770
1771         Build fix: corrected #include path.
1772
1773         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1774
1775 2007-12-07  Geoffrey Garen  <ggaren@apple.com>
1776
1777         Reviewed by Sam Weinig.
1778
1779         Added some namespace qualifications and a forwarding header, now that
1780         KJS::Node is sometimes #included in WebCore by JavaScriptCore headers.
1781
1782         * ForwardingHeaders/wtf/ListRefPtr.h: Added.
1783         * bindings/js/JSXSLTProcessor.cpp:
1784         (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
1785         * bindings/js/kjs_binding.cpp:
1786         (KJS::ScriptInterpreter::getDOMNodeForDocument):
1787         (KJS::ScriptInterpreter::forgetDOMNodeForDocument):
1788         (KJS::ScriptInterpreter::putDOMNodeForDocument):
1789         (KJS::ScriptInterpreter::markDOMNodesForDocument):
1790         (KJS::ScriptInterpreter::updateDOMNodeDocument):
1791
1792 2007-12-07  Adam Roben  <aroben@apple.com>
1793
1794         Add SoftLinking.h for Windows and use it in a few places
1795
1796         Reviewed by Oliver.
1797
1798         * WebCore.vcproj/WebCore.vcproj: Added new file to project.
1799         * platform/win/PlatformScrollBarSafari.cpp: Use SoftLinking.h.
1800         (WebCore::PlatformScrollbar::PlatformScrollbar): Removed manual
1801         soft-linking calls.
1802         (WebCore::PlatformScrollbar::paintButton): Check for the presence of
1803         the SafariTheme library now that we can't check for the presence of
1804         paintThemePart directly.
1805         (WebCore::PlatformScrollbar::paintTrack): Ditto.
1806         (WebCore::PlatformScrollbar::paintThumb): Ditto.
1807         * platform/win/SoftLinking.h: Copied from WebCore/platform/mac/SoftLinking.h.
1808         * rendering/RenderThemeSafari.cpp: Same basic changes as to
1809         PlatformScrollBarSafari.cpp.
1810         (WebCore::RenderThemeSafari::RenderThemeSafari):
1811         (WebCore::RenderThemeSafari::isControlStyled):
1812         (WebCore::RenderThemeSafari::paintCapsLockIndicator):
1813         * rendering/RenderThemeSafari.h: Removed m_themeDLL member.
1814
1815 2007-12-07  Darin Adler  <darin@apple.com>
1816
1817         Reviewed by Adele.
1818
1819         - fix <rdar://problem/5608795> CrashTracer: 481 crashes in Safari
1820           at WebCore::HTMLSelectElement::saveState const + 152
1821
1822         Test: fast/forms/select-set-inner.html
1823
1824         * dom/ContainerNode.cpp:
1825         (WebCore::ContainerNode::removeChildren): Added a return value, as with other
1826         calls that change children, so we can optimize for the case where it does nothing.
1827         (WebCore::ContainerNode::cloneChildNodes): Changed parameter type to ContainerNode.
1828         * dom/ContainerNode.h: See above.
1829
1830         * html/HTMLOptGroupElement.cpp:
1831         (WebCore::HTMLOptGroupElement::removeChildren): Override removeChildren and call
1832         recalcSelectOptions in that case.
1833         (WebCore::HTMLOptGroupElement::childrenChanged): Override childrenChanged instead of
1834         addChild, for consistency with HTMLSelectElement; no need to override both.
1835         (WebCore::HTMLOptGroupElement::groupLabelText): Made const.
1836         * html/HTMLOptGroupElement.h: See above.
1837
1838         * html/HTMLSelectElement.cpp: Don't override addChild any more, because we already
1839         override childrenChanged, and addChild calls that.
1840         (WebCore::HTMLSelectElement::removeChildren): Override removeChildren and call
1841         recalcSelectOptions in that case.
1842         (WebCore::HTMLSelectElement::recalcListItems): Tightened up the code a little bit
1843         by using a for loop and traverseNextSibling. Also added some new comments and
1844         removed some obsolete ones.
1845         (WebCore::HTMLSelectElement::checkListItems): Added. Debug-only check to make
1846         sure we don't have a stale list items vector.
1847         * html/HTMLSelectElement.h: Changed listItems() to invoke checkListItems().
1848         This will help us catch cases where we have too few calls to setRecalcListItems.
1849
1850 2007-12-07  Dan Bernstein  <mitz@apple.com>
1851
1852         Reviewed by Darin Adler.
1853
1854         - WebCore part of fixing <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges
1855
1856         Test: fast/repaint/focus-ring.html
1857
1858         * editing/SelectionController.cpp:
1859         (WebCore::SelectionController::caretRepaintRect): Changed to return just
1860         the caret rect without any padding.
1861         (WebCore::SelectionController::recomputeCaretRect): Changed to repaint
1862         just the caret rect without any padding.
1863         * platform/graphics/GraphicsContext.h: Removed setFocusRingClip() and
1864         clearFocusRingClip().
1865         * platform/graphics/cairo/GraphicsContextCairo.cpp: Ditto.
1866         * platform/graphics/cg/GraphicsContextCG.cpp: Ditto.
1867         * platform/graphics/cg/GraphicsContextPlatformPrivate.h: Removed
1868         m_focusRingClip member.
1869         * platform/graphics/mac/GraphicsContextMac.mm:
1870         (WebCore::GraphicsContext::drawFocusRing): Changed to call
1871         wkDrawFocusRing() once without setting up additional clip. On Leopard,
1872         wkDrawFocusRing() respects the context clip now. On Tiger, a
1873         transparency layer is used to apply clipping to the focus ring.
1874         * platform/graphics/qt/GraphicsContextQt.cpp: Removed focus ring clip
1875         methods and member.
1876         * platform/graphics/wx/GraphicsContextWx.cpp: Ditto.
1877         * platform/mac/WebCoreSystemInterface.h: Removed the clipRect argument
1878         to wkDrawFocusRing().
1879         * platform/mac/WebCoreSystemInterface.mm: Ditto.
1880         * rendering/RenderLayer.cpp:
1881         (WebCore::setClip): Removed call to set the focus ring clip.
1882         (WebCore::restoreClip): Removed call to reset the focus ring clip.
1883
1884 2007-12-07  Darin Adler  <darin@apple.com>
1885
1886         Reviewed by Antti Koivisto and Kevin Decker.
1887
1888         - fix <rdar://problem/5601586> QtKit should be dynamically loaded upon need, not linked at startup
1889
1890         Also did a lot of small tweaks to MediaPlayerPrivateQTKit.
1891
1892         * WebCore.xcodeproj/project.pbxproj: Don't link to QTKit.
1893
1894         * platform/graphics/mac/MediaPlayerPrivateQTKit.h: Omit unneeded includes and declarations.
1895         Made a lot more functions const. Made a few more members private and a couple inline.
1896         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Added soft linking machinery for all the
1897         things we currently use in QTKit. It's a little more awkward for classes and other data objects
1898         than it is for functions, but still relatively straightforward, with no changes needed to the
1899         client code. Added using namespace directives. Made a cuePointTimerInterval constant and put
1900         it at the top of the file. Use 0 consistently instead of sometimes 0 and sometimes 0.0f.
1901         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Removed unneeded initialization of RetainPtr
1902         members to nil.
1903         (WebCore::MediaPlayerPrivate::createQTMovie): Use adoptNS instead of autorelease.
1904         (WebCore::MediaPlayerPrivate::createQTMovieView): Ditto. Also use -[NSColor clearColor].
1905         (WebCore::MediaPlayerPrivate::createQTTime): Remove an unneeded type cast that had no effect.
1906         Changed to use long instead of int because that's the type for a QTTime time scale anyway.
1907         (WebCore::MediaPlayerPrivate::duration): Use a static_cast instead of a C-style cast.
1908         (WebCore::MediaPlayerPrivate::currentTime): Ditto. Also merged into a single expression.
1909         (WebCore::MediaPlayerPrivate::cuePointTimerFired): Added code to make a copy of the cue
1910         points set to avoid a potential problem with a set being modified as we iterate it.
1911         (WebCore::MediaPlayerPrivate::bytesLoaded): Removed unneeded null check of m_qtMovie.
1912         (WebCore::MediaPlayerPrivate::updateStates): Instead of comments explaining the numeric
1913         values, used the constants from the headers directly.
1914         (WebCore::MediaPlayerPrivate::getSupportedTypes): Instead of (QTMovieFileTypeOptions)0,
1915         pass the named constant with value 0, QTIncludeCommonTypes. Skipped the intermediate type
1916         of NSString to remove one cast. Replaced C-style cast with reinterpret_cast (arguably
1917         no better). Used RetainPtr instead of explicit CFRelease calls.
1918
1919         * platform/mac/SoftLinking.h: Added macros to do soft linking for classes and for pointers.
1920         It's not quite as automatic as the soft linking we can do for functions, since these define
1921         functions to get the values, so you need to define macros to make what look like variable
1922         accesses turn into function calls. See MediaPlayerPrivateQTKit for the details.
1923
1924         * html/HTMLMediaElement.h:
1925         * html/TimeRanges.h:
1926         * html/VoidCallback.h:
1927         * platform/graphics/MediaPlayer.h:
1928         Use angle brackets for wtf includes. Omit unneeded includes.
1929
1930 2007-12-07  Dan Bernstein  <mitz@apple.com>
1931
1932         Reviewed by Darin Adler.
1933
1934         - fix http://bugs.webkit.org/show_bug.cgi?id=16334
1935           <rdar://problem/5634923> REGRESSION (r28299): Homepage of any DotMac Web Gallery won't load completely
1936
1937         Test: fast/dynamic/subtree-no-common-root-static-y.html
1938
1939         * rendering/RenderObject.cpp:
1940         (WebCore::RenderObject::markContainingBlocksForLayout): Changed the call
1941         to setChildNeedsLayout() to not mark containing blocks and added a
1942         separate call to markContainingBlocksForLayout() that will not schedule
1943         a layout if we are already in the middle of scheduleRelayoutOfSubtree().
1944
1945 2007-12-07  Alexey Proskuryakov  <ap@webkit.org>
1946
1947         Reviewed by Darin.
1948
1949         http://bugs.webkit.org/show_bug.cgi?id=16325
1950         <rdar://problem/5632997> REGRESSION: www.xerox.ru doesn't work
1951         
1952         Test: http/tests/misc/empty-cookie.html
1953
1954         * platform/mac/CookieJar.mm:
1955         (WebCore::setCookies): Don't store empty cookies.
1956         (WebCore::cookies): Filter out empty cookies if we have them, as they could have been set
1957         with an earlier version of Leopard!
1958
1959 2007-12-06  Ada Chan  <adachan@apple.com>
1960
1961         Fixed the if statement (ERROR_SUCCESS is 0 and we were actually
1962         returning true when there's an error).
1963
1964         Reviewed by Steve.
1965
1966         * platform/win/FileSystemWin.cpp:
1967         (WebCore::makeAllDirectories):
1968
1969 2007-12-06  Darin Adler  <darin@apple.com>
1970
1971         - fix broken regression test
1972
1973         * bindings/js/kjs_binding.cpp:
1974         (KJS::setDOMException): Oops, this was just supposed to be PERMISSION_DENIED.
1975
1976 2007-12-06  Darin Adler  <darin@apple.com>
1977
1978         Reviewed by Sam Weinig.
1979
1980         - fix http://bugs.webkit.org/show_bug.cgi?id=16332
1981           ObjC DOM exception object descriptions should include the exception name
1982
1983         * WebCore.pro: Added ExceptionCode.cpp.
1984         * WebCore.vcproj/WebCore.vcproj: Added ExceptionCode.cpp.
1985         * WebCore.xcodeproj/project.pbxproj: Added ExceptionCode.cpp.
1986         * WebCoreSources.bkl: Added ExceptionCode.cpp.
1987
1988         * bindings/js/kjs_binding.cpp: (KJS::setDOMException): Moved the code to decompose an
1989         ExceptionCode into ExceptionCode.h/cpp -- getExceptionCodeDescription. Also removed
1990         the many unneeded includes that were here. Had to keep one special case here, for
1991         SECURITY_ERR.
1992
1993         * bindings/objc/ExceptionHandlers.mm: (WebCore::raiseDOMException): Changed to use the
1994         new getExceptionCodeDescription function so that this shares the exception name
1995         information that was previously only available to JavaScript.
1996
1997         * dom/ExceptionCode.cpp: Copied from bindings/js/kjs_binding.cpp.
1998         (WebCore::getExceptionCodeDescription): Added some assertions, and made the function
1999         handle exception names in a slightly more robust way that is not subject to integer
2000         overflow. (Not a real world issue since we should never receive a bad exception code.)
2001
2002         * dom/ExceptionCode.h: Added the ExceptionCodeDescription struct and the
2003         getExceptionCodeDescription function.
2004
2005         * svg/SVGException.h: Added a missing #include and got rid of some comments. Some of
2006         the comments were mildly helpful, but others were incorrect. This now matches the other
2007         exception-related headers such as RangeException.h.
2008
2009 2007-12-06  Brady Eidson  <beidson@apple.com>
2010
2011         Reviewed by Darin
2012
2013         Fixed a glaring bug that would prevent a statement from getting run a second time
2014
2015         * storage/SQLStatement.cpp:
2016         (WebCore::SQLStatement::execute): Clear failure due to quota *before* we check the error
2017           and return early
2018         (WebCore::SQLStatement::clearFailureDueToQuota): Only clear the error if it was a quota error
2019
2020 2007-12-06  Timothy Hatcher  <timothy@apple.com>
2021
2022         Reviewed by Oliver Hunt.
2023
2024         Use keydown instead of keypress so keyIdentifier can be used.
2025
2026         * page/inspector/ConsolePanel.js: Use keydown instead of keypress.
2027         * page/inspector/DatabasePanel.js: Ditto.
2028         * page/inspector/inspector.js: Ditto. Plus call removeEventListener
2029         before deleting windowLoaded.
2030
2031 2007-12-06  Adam Roben  <aroben@apple.com>
2032
2033         Rename FontsTable.plist to FontsList.plist
2034
2035         Rubberstamped by Hyatt.
2036
2037         * platform/graphics/win/FontDatabase.cpp:
2038
2039 2007-12-06  Brady Eidson  <beidson@apple.com>
2040
2041         Reviewed by Darin
2042
2043         Tweaked a comment and a few assertions from my last checkin
2044
2045         * storage/SQLStatement.cpp:
2046         (WebCore::SQLStatement::execute):
2047         (WebCore::SQLStatement::clearFailureDueToQuota):
2048         (WebCore::SQLStatement::lastExecutionFailedDueToQuota):
2049
2050 2007-12-06  Brady Eidson <beidson@apple.com>
2051
2052         Reviewed by Darin
2053
2054         Finished hooking up UI Delegate for databases - Database operations will now enforce a size quota and
2055         will ask the UI Delegate for more space when that quota is met
2056
2057         * platform/sql/SQLiteDatabase.cpp: Add the new SQLResultFull constant
2058         * platform/sql/SQLiteDatabase.h: Ditto
2059
2060         * storage/Database.cpp:
2061         (WebCore::Database::securityOriginData): Added this accessor, copying for thread safety
2062         (WebCore::Database::stringIdentifier): Ditto
2063         * storage/Database.h:
2064
2065         * storage/SQLStatement.cpp:
2066         (WebCore::SQLStatement::SQLStatement):
2067         (WebCore::SQLStatement::execute): Change to return an enum that represents 3 states - success, error, and quota.
2068           If the result is quota, this statement expects that it might be run again, presumably after the user increases 
2069           the quota
2070         (WebCore::SQLStatement::setFailureDueToQuota): Setup a quota failure, including a flag and the error
2071         (WebCore::SQLStatement::clearFailureDueToQuota): Clear a quota failure, for when the statement is rerun
2072         (WebCore::SQLStatement::lastExecutionFailedDueToQuota):
2073         * storage/SQLStatement.h:
2074
2075         * storage/SQLTransaction.cpp:
2076         (WebCore::SQLTransaction::SQLTransaction):
2077         (WebCore::SQLTransaction::performPendingCallback): Added an acceptable callback pointer
2078         (WebCore::SQLTransaction::openTransactionAndPreflight): Setup the quota in the database that will remain for this 
2079           transaction.  Note that in this patch, the quota being set is wrong - it makes sense to fix that in a follow up patch
2080         (WebCore::SQLTransaction::runStatements): Modified to add the ability to re-run a statement based on the UI delegate
2081           decision and whether the current statement was already run
2082         (WebCore::SQLTransaction::runCurrentStatement): Added another result condition - the Quota result - and handle it
2083         (WebCore::SQLTransaction::handleCurrentStatementError): Statements can now error-out from two places, so the code
2084           that handles a statement error was moved here
2085         (WebCore::SQLTransaction::deliverQuotaIncreaseCallback): Added - Consult the UI delegate for more quota, then 
2086           reschedule the current statement on the database thread
2087         * storage/SQLTransaction.h:
2088
2089 2007-12-06  Steve Falkenburg  <sfalken@apple.com>
2090
2091         <rdar://problem/5614257> Crash in timer / hashtable code due to uncaught exception
2092         
2093         Don't use callback-based timers, since these cause Windows to eat Windows crashes
2094         in code the timers call.
2095         
2096         Windows appears to be defending against "shatter" attacks partially by setting
2097         up a structured exception block while dispatching callback-based WM_TIMERs.
2098         
2099         I verified this by adding a divide by zero into some timer callback code.
2100         In the case where the timer was dispatched via a callback, the divide by zero
2101         exception was silently handled and ignored, with execution continuing after
2102         our call to DispatchMessage.  When processed via the WNDPROC, no SEH
2103         block was established by Windows, and our divide by zero generated a real
2104         crash (which is what we wanted).
2105         
2106         Windows handling our crashes for us led us to leave the timer data structures
2107         in an invalid state so the next time a timer was set, we'd crash accessing an
2108         invalid HashMap of timer data.
2109         
2110         Reviewed by Hyatt.
2111
2112         * platform/win/SharedTimerWin.cpp:
2113         (WebCore::TimerWindowWndProc):
2114         (WebCore::setSharedTimerFireTime):
2115
2116 2007-12-06  Adam Roben  <aroben@apple.com>
2117
2118         Fix <rdar://5108390> Feed title is too low in blue banner
2119
2120         Way back in r23069 we started applying the same font ascent hack that
2121         Mac WebKit applies to Helvetica, Times, and Courier. We did this so
2122         that those fonts would match the Mac metrics when we run the
2123         regression tests. However, this hack was applying to Arial on Windows
2124         when a site would specify the Helvetica font face because Windows will
2125         alias the font names. Instead of removing the hack entirely, we
2126         turn it off by default but provide some SPI so that DumpRenderTree can
2127         turn it on.
2128
2129         Reviewed by Hyatt.
2130
2131         All tests pass.
2132
2133         * platform/graphics/FontData.h: Add a new static method to turn on the
2134         hack on Windows only.
2135         * platform/graphics/win/FontDataWin.cpp:
2136         (WebCore::FontData::setShouldApplyMacAscentHack): Added.
2137         (WebCore::FontData::platformInit): Only perform the hack if
2138         shouldApplyMacAscentHack is true.
2139
2140 2007-12-06  Geoffrey Garen  <ggaren@apple.com>
2141
2142         Reviewed by Sam Weinig.
2143
2144         Fixed http://bugs.webkit.org/show_bug.cgi?id=16328
2145         REGRESSION (r28470): Crash expanding a GMail conversation
2146         
2147         * page/Frame.cpp:
2148         (WebCore::Frame::scriptProxy): Only return 0 if JS seems disabled *and*
2149         we haven't created the proxy yet. If we've created the proxy already, a
2150         script may be in the midst of execution, even though we've lost our
2151         settings object. During execution, scripts assume they have free access
2152         to the proxy.
2153
2154 2007-12-06  Adele Peterson  <adele@apple.com>
2155
2156         Reviewed by Oliver.
2157
2158         Fix for <rdar://problem/5631356> Toggling display property on video causes controls to get lost
2159
2160         * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::attach): Call updateFromElement.
2161         * html/HTMLMediaElement.h:
2162
2163 2007-12-05  Antti Koivisto  <antti@apple.com>
2164
2165         Reviewed by Oliver.
2166
2167         Rename
2168
2169         Movie -> MediaPlayer
2170         MoviePrivate -> MediaPlayerPrivate
2171         
2172         Movie is QuickTime terminology and clashes with its C API.
2173
2174         * WebCore.xcodeproj/project.pbxproj:
2175         * html/HTMLMediaElement.cpp:
2176         (WebCore::HTMLMediaElement::HTMLMediaElement):
2177         (WebCore::HTMLMediaElement::~HTMLMediaElement):
2178         (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
2179         (WebCore::HTMLMediaElement::bufferingRate):
2180         (WebCore::HTMLMediaElement::load):
2181         (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
2182         (WebCore::HTMLMediaElement::mediaPlayerReadyStateChanged):
2183         (WebCore::HTMLMediaElement::setReadyState):
2184         (WebCore::HTMLMediaElement::progressEventTimerFired):
2185         (WebCore::HTMLMediaElement::seek):
2186         (WebCore::HTMLMediaElement::currentTime):
2187         (WebCore::HTMLMediaElement::duration):
2188         (WebCore::HTMLMediaElement::playbackRate):
2189         (WebCore::HTMLMediaElement::setPlaybackRate):
2190         (WebCore::HTMLMediaElement::play):
2191         (WebCore::HTMLMediaElement::pause):
2192         (WebCore::HTMLMediaElement::setVolume):
2193         (WebCore::HTMLMediaElement::setMuted):
2194         (WebCore::HTMLMediaElement::pickMedia):
2195         (WebCore::HTMLMediaElement::checkIfSeekNeeded):
2196         (WebCore::HTMLMediaElement::mediaPlayerVolumeChanged):
2197         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
2198         (WebCore::HTMLMediaElement::mediaPlayerCuePointReached):
2199         (WebCore::HTMLMediaElement::addCuePoint):
2200         (WebCore::HTMLMediaElement::buffered):
2201         (WebCore::HTMLMediaElement::seekable):
2202         (WebCore::HTMLMediaElement::effectiveStart):
2203         (WebCore::HTMLMediaElement::effectiveEnd):
2204         (WebCore::HTMLMediaElement::effectiveLoopStart):
2205         (WebCore::HTMLMediaElement::effectiveLoopEnd):
2206         (WebCore::HTMLMediaElement::updateMediaPlayer):
2207         (WebCore::HTMLMediaElement::willSaveToCache):
2208         * html/HTMLMediaElement.h:
2209         (WebCore::HTMLMediaElement::player):
2210         * html/HTMLVideoElement.cpp:
2211         (WebCore::HTMLVideoElement::videoWidth):
2212         (WebCore::HTMLVideoElement::videoHeight):
2213         * platform/MIMETypeRegistry.cpp:
2214         (WebCore::initialiseSupportedMediaMIMETypes):
2215         (WebCore::MIMETypeRegistry::isSupportedMediaMIMEType):
2216         (WebCore::MIMETypeRegistry::getSupportedMediaMIMETypes):
2217         * platform/MIMETypeRegistry.h:
2218         * platform/graphics/MediaPlayer.cpp: Copied from WebCore/platform/graphics/Movie.cpp.
2219         (WebCore::MediaPlayer::MediaPlayer):
2220         (WebCore::MediaPlayer::~MediaPlayer):
2221         (WebCore::MediaPlayer::load):
2222         (WebCore::MediaPlayer::cancelLoad):
2223         (WebCore::MediaPlayer::play):
2224         (WebCore::MediaPlayer::pause):
2225         (WebCore::MediaPlayer::duration):
2226         (WebCore::MediaPlayer::currentTime):
2227         (WebCore::MediaPlayer::seek):
2228         (WebCore::MediaPlayer::paused):
2229         (WebCore::MediaPlayer::seeking):
2230         (WebCore::MediaPlayer::naturalSize):
2231         (WebCore::MediaPlayer::hasVideo):
2232         (WebCore::MediaPlayer::networkState):
2233         (WebCore::MediaPlayer::readyState):
2234         (WebCore::MediaPlayer::volume):
2235         (WebCore::MediaPlayer::setVolume):
2236         (WebCore::MediaPlayer::rate):
2237         (WebCore::MediaPlayer::setRate):
2238         (WebCore::MediaPlayer::muted):
2239         (WebCore::MediaPlayer::setMuted):
2240         (WebCore::MediaPlayer::dataRate):
2241         (WebCore::MediaPlayer::setEndTime):
2242         (WebCore::MediaPlayer::addCuePoint):
2243         (WebCore::MediaPlayer::removeCuePoint):
2244         (WebCore::MediaPlayer::clearCuePoints):
2245         (WebCore::MediaPlayer::maxTimeBuffered):
2246         (WebCore::MediaPlayer::maxTimeSeekable):
2247         (WebCore::MediaPlayer::bytesLoaded):
2248         (WebCore::MediaPlayer::totalBytesKnown):
2249         (WebCore::MediaPlayer::totalBytes):
2250         (WebCore::MediaPlayer::setRect):
2251         (WebCore::MediaPlayer::visible):
2252         (WebCore::MediaPlayer::setVisible):
2253         (WebCore::MediaPlayer::paint):
2254         (WebCore::MediaPlayer::getSupportedTypes):
2255         (WebCore::MediaPlayer::networkStateChanged):
2256         (WebCore::MediaPlayer::readyStateChanged):
2257         (WebCore::MediaPlayer::volumeChanged):
2258         (WebCore::MediaPlayer::timeChanged):
2259         (WebCore::MediaPlayer::cuePointReached):
2260         * platform/graphics/MediaPlayer.h: Copied from WebCore/platform/graphics/Movie.h.
2261         (WebCore::MediaPlayerClient::~MediaPlayerClient):
2262         (WebCore::MediaPlayerClient::mediaPlayerNetworkStateChanged):
2263         (WebCore::MediaPlayerClient::mediaPlayerReadyStateChanged):
2264         (WebCore::MediaPlayerClient::mediaPlayerVolumeChanged):
2265         (WebCore::MediaPlayerClient::mediaPlayerTimeChanged):
2266         (WebCore::MediaPlayerClient::mediaPlayerCuePointReached):
2267         * platform/graphics/Movie.cpp: Removed.
2268         * platform/graphics/Movie.h: Removed.
2269         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: Copied from WebCore/platform/graphics/gtk/MoviePrivateGStreamer.cpp.
2270         (WebCore::mediaPlayerPrivateErrorCallback):
2271         (WebCore::mediaPlayerPrivateEOSCallback):
2272         (WebCore::mediaPlayerPrivateStateCallback):
2273         (WebCore::mediaPlayerPrivateBufferingCallback):
2274         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2275         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
2276         (WebCore::MediaPlayerPrivate::load):
2277         (WebCore::MediaPlayerPrivate::play):
2278         (WebCore::MediaPlayerPrivate::pause):
2279         (WebCore::MediaPlayerPrivate::duration):
2280         (WebCore::MediaPlayerPrivate::currentTime):
2281         (WebCore::MediaPlayerPrivate::seek):
2282         (WebCore::MediaPlayerPrivate::setEndTime):
2283         (WebCore::MediaPlayerPrivate::addCuePoint):
2284         (WebCore::MediaPlayerPrivate::removeCuePoint):
2285         (WebCore::MediaPlayerPrivate::clearCuePoints):
2286         (WebCore::MediaPlayerPrivate::startCuePointTimerIfNeeded):
2287         (WebCore::MediaPlayerPrivate::cancelSeek):
2288         (WebCore::MediaPlayerPrivate::cuePointTimerFired):
2289         (WebCore::MediaPlayerPrivate::paused):
2290         (WebCore::MediaPlayerPrivate::seeking):
2291         (WebCore::MediaPlayerPrivate::naturalSize):
2292         (WebCore::MediaPlayerPrivate::hasVideo):
2293         (WebCore::MediaPlayerPrivate::setVolume):
2294         (WebCore::MediaPlayerPrivate::setMuted):
2295         (WebCore::MediaPlayerPrivate::setRate):
2296         (WebCore::MediaPlayerPrivate::dataRate):
2297         (WebCore::MediaPlayerPrivate::networkState):
2298         (WebCore::MediaPlayerPrivate::readyState):
2299         (WebCore::MediaPlayerPrivate::maxTimeBuffered):
2300         (WebCore::MediaPlayerPrivate::maxTimeSeekable):
2301         (WebCore::MediaPlayerPrivate::maxTimeLoaded):
2302         (WebCore::MediaPlayerPrivate::bytesLoaded):
2303         (WebCore::MediaPlayerPrivate::totalBytesKnown):
2304         (WebCore::MediaPlayerPrivate::totalBytes):
2305         (WebCore::MediaPlayerPrivate::cancelLoad):
2306         (WebCore::MediaPlayerPrivate::updateStates):
2307         (WebCore::MediaPlayerPrivate::loadStateChanged):
2308         (WebCore::MediaPlayerPrivate::rateChanged):
2309         (WebCore::MediaPlayerPrivate::sizeChanged):
2310         (WebCore::MediaPlayerPrivate::timeChanged):
2311         (WebCore::MediaPlayerPrivate::volumeChanged):
2312         (WebCore::MediaPlayerPrivate::didEnd):
2313         (WebCore::MediaPlayerPrivate::loadingFailed):
2314         (WebCore::MediaPlayerPrivate::setRect):
2315         (WebCore::MediaPlayerPrivate::setVisible):
2316         (WebCore::MediaPlayerPrivate::paint):
2317         (WebCore::MediaPlayerPrivate::getSupportedTypes):
2318         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
2319         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: Copied from WebCore/platform/graphics/gtk/MoviePrivateGStreamer.h.
2320         * platform/graphics/gtk/MoviePrivateGStreamer.cpp: Removed.
2321         * platform/graphics/gtk/MoviePrivateGStreamer.h: Removed.
2322         * platform/graphics/mac/MediaPlayerPrivateQTKit.h: Copied from WebCore/platform/graphics/mac/MoviePrivateQTKit.h.
2323         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Copied from WebCore/platform/graphics/mac/MoviePrivateQTKit.mm.
2324         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
2325         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
2326         (WebCore::MediaPlayerPrivate::createQTMovie):
2327         (WebCore::MediaPlayerPrivate::createQTMovieView):
2328         (WebCore::MediaPlayerPrivate::createQTTime):
2329         (WebCore::MediaPlayerPrivate::load):
2330         (WebCore::MediaPlayerPrivate::play):
2331         (WebCore::MediaPlayerPrivate::pause):
2332         (WebCore::MediaPlayerPrivate::duration):
2333         (WebCore::MediaPlayerPrivate::currentTime):
2334         (WebCore::MediaPlayerPrivate::seek):
2335         (WebCore::MediaPlayerPrivate::doSeek):
2336         (WebCore::MediaPlayerPrivate::cancelSeek):
2337         (WebCore::MediaPlayerPrivate::seekTimerFired):
2338         (WebCore::MediaPlayerPrivate::setEndTime):
2339         (WebCore::MediaPlayerPrivate::addCuePoint):
2340         (WebCore::MediaPlayerPrivate::removeCuePoint):
2341         (WebCore::MediaPlayerPrivate::clearCuePoints):
2342         (WebCore::MediaPlayerPrivate::startCuePointTimerIfNeeded):
2343         (WebCore::MediaPlayerPrivate::cuePointTimerFired):
2344         (WebCore::MediaPlayerPrivate::paused):
2345         (WebCore::MediaPlayerPrivate::seeking):
2346         (WebCore::MediaPlayerPrivate::naturalSize):
2347         (WebCore::MediaPlayerPrivate::hasVideo):
2348         (WebCore::MediaPlayerPrivate::setVolume):
2349         (WebCore::MediaPlayerPrivate::setMuted):
2350         (WebCore::MediaPlayerPrivate::setRate):
2351         (WebCore::MediaPlayerPrivate::dataRate):
2352         (WebCore::MediaPlayerPrivate::networkState):
2353         (WebCore::MediaPlayerPrivate::readyState):
2354         (WebCore::MediaPlayerPrivate::maxTimeBuffered):
2355         (WebCore::MediaPlayerPrivate::maxTimeSeekable):
2356         (WebCore::MediaPlayerPrivate::maxTimeLoaded):
2357         (WebCore::MediaPlayerPrivate::bytesLoaded):
2358         (WebCore::MediaPlayerPrivate::totalBytesKnown):
2359         (WebCore::MediaPlayerPrivate::totalBytes):
2360         (WebCore::MediaPlayerPrivate::cancelLoad):
2361         (WebCore::MediaPlayerPrivate::updateStates):
2362         (WebCore::MediaPlayerPrivate::loadStateChanged):
2363         (WebCore::MediaPlayerPrivate::rateChanged):
2364         (WebCore::MediaPlayerPrivate::sizeChanged):
2365         (WebCore::MediaPlayerPrivate::timeChanged):
2366         (WebCore::MediaPlayerPrivate::volumeChanged):
2367         (WebCore::MediaPlayerPrivate::didEnd):
2368         (WebCore::MediaPlayerPrivate::setRect):
2369         (WebCore::MediaPlayerPrivate::setVisible):
2370         (WebCore::MediaPlayerPrivate::paint):
2371         (WebCore::MediaPlayerPrivate::getSupportedTypes):
2372         (-[WebCoreMovieObserver initWithCallback:WebCore::]):
2373         * platform/graphics/mac/MoviePrivateQTKit.h: Removed.
2374         * platform/graphics/mac/MoviePrivateQTKit.mm: Removed.
2375         * rendering/RenderMedia.cpp:
2376         (WebCore::RenderMedia::player):
2377         * rendering/RenderMedia.h:
2378         * rendering/RenderVideo.cpp:
2379         (WebCore::RenderVideo::RenderVideo):
2380         (WebCore::RenderVideo::~RenderVideo):
2381         (WebCore::RenderVideo::videoSizeChanged):
2382         (WebCore::RenderVideo::paintReplaced):
2383         (WebCore::RenderVideo::layout):
2384         (WebCore::RenderVideo::updateFromElement):
2385         (WebCore::RenderVideo::updatePlayer):
2386         * rendering/RenderVideo.h:
2387
2388 2007-12-06  Geoffrey Garen  <ggaren@apple.com>
2389
2390         Build fix: access global object directly.
2391
2392         * plugins/win/PluginViewWin.cpp:
2393         (WebCore::PluginViewWin::bindingInstance):
2394
2395 2007-12-06  Mark Rowe  <mrowe@apple.com>
2396
2397         Reviewed by Eric.
2398
2399         Fix bug spotted by GCC 4.2.
2400
2401         * bindings/js/kjs_window.cpp:
2402         (KJS::allowPopUp): Remove extraneous semicolon that completely changed the meaning of allowPopUp.
2403
2404 2007-12-06  Holger Hans Peter Freyther <holger.freyther@trolltech.com>
2405
2406         Reviewed by Alp Toker.
2407
2408         http://bugs.webkit.org/show_bug.cgi?id=16173
2409         Licensing change
2410
2411         Change license from BSD to LGPL.
2412
2413         * platform/gtk/FileSystemGtk.cpp:
2414
2415 2007-12-05  Rob Buis  <buis@kde.org>
2416
2417         Reviewed by Mitz.
2418
2419         http://bugs.webkit.org/show_bug.cgi?id=15289
2420         WebKit does not respect clip paths of a 0x0 rect
2421
2422         Make empty clip paths clip the whole referencing graphic.
2423
2424         * svg/SVGClipPathElement.cpp:
2425         (WebCore::SVGClipPathElement::canvasResource):
2426         * svg/graphics/SVGResourceClipper.h:
2427         (WebCore::ClipDataList::isEmpty):
2428
2429 2007-12-05  Darin Adler  <darin@apple.com>
2430
2431         Reviewed by Maciej.
2432
2433         - fix http://bugs.webkit.org/show_bug.cgi?id=16266
2434           <rdar://problem/5625279> REGRESSION: crash loading CNN.com at
2435           Interpreter::createObjectsForGlobalObjectProperties()
2436
2437         I don't know how to reproduce this in a test.
2438
2439         * bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::mark):
2440         Call JSEventTargetNode::mark instead of DOMObject::mark. There's no difference
2441         right now, but it's best to call your base class, not your base's base.
2442
2443         * bindings/js/kjs_events.h: Removed unneeded virtual from the
2444         JSUnprotectedEventListener::mark() function; it neither derives from or is
2445         derived from anyone else with a mark() function so there's no need for virtual.
2446
2447         * bindings/js/kjs_window.cpp: (KJS::Window::mark): Call JSGlobalObject::mark,
2448         not JSObject::mark. This is the actual bug fix.
2449
2450 2007-12-05  Pierre-Luc Beaudoin  <pierre-luc.beaudoin@collabora.co.uk>
2451
2452         http://bugs.webkit.org/show_bug.cgi?id=16145
2453         [gtk] Implement media support in GTK backend
2454
2455         Reviewed by Alp Toker.
2456
2457         Remove old comments, fix variable names, match WebKit coding style.
2458
2459         * platform/graphics/gtk/MoviePrivateGStreamer.cpp:
2460         (WebCore::moviePrivateEOSCallback):
2461         (WebCore::MoviePrivate::MoviePrivate):
2462         (WebCore::MoviePrivate::load):
2463         (WebCore::MoviePrivate::play):
2464         (WebCore::MoviePrivate::pause):
2465         (WebCore::MoviePrivate::currentTime):
2466         (WebCore::MoviePrivate::seek):
2467         (WebCore::MoviePrivate::cancelSeek):
2468         (WebCore::MoviePrivate::seeking):
2469         (WebCore::MoviePrivate::naturalSize):
2470         (WebCore::MoviePrivate::setVolume):
2471         (WebCore::MoviePrivate::setMuted):
2472         (WebCore::MoviePrivate::maxTimeBuffered):
2473         (WebCore::MoviePrivate::bytesLoaded):
2474         (WebCore::MoviePrivate::totalBytesKnown):
2475         (WebCore::MoviePrivate::totalBytes):
2476         (WebCore::MoviePrivate::updateStates):
2477         (WebCore::MoviePrivate::didEnd):
2478         (WebCore::MoviePrivate::paint):
2479         (WebCore::MoviePrivate::createGSTPlayBin):
2480         * platform/graphics/gtk/MoviePrivateGStreamer.h:
2481
2482 2007-12-05  Mark Rowe  <mrowe@apple.com>
2483
2484         Speculative wx build fix.  Add PlugInInfoStore::pluginNameForMIMEType to the temporary link stubs.
2485
2486         * platform/wx/TemporaryLinkStubs.cpp:
2487
2488 2007-12-05  Alp Toker  <alp@atoker.com>
2489
2490         Rubber stamped by Mark Rowe.
2491
2492         Remove DEPENDPATH on the generated sources directory. This causes
2493         trouble and is no longer necessary following the glib-genmarshal
2494         generator split.
2495
2496         * WebCore.pro:
2497
2498 2007-12-04  Geoffrey Garen  <ggaren@apple.com>
2499
2500         Reviewed by Darin Adler.
2501
2502         Third step in refactoring JSGlobalObject: Moved data members and data
2503         member access from Interpreter to JSGlobalObject. Changed Interpreter
2504         member functions to static functions. Same for the subclass, 
2505         ScriptInterpreter.
2506         
2507         This is a big change, but it's mostly code motion and renaming.
2508         
2509 2007-12-05  Darin Adler  <darin@apple.com>
2510
2511         "Reviewed" by Geoff.
2512
2513         * loader/FrameLoader.cpp:
2514         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Removed assertion.
2515         (WebCore::FrameLoader::dispatchDidCommitLoad): This one too.
2516         The assertions are firing like crazy. Not sure why yet.
2517
2518 2007-12-05  Darin Adler  <darin@apple.com>
2519
2520         Reviewed by Adam Roben.
2521
2522         - fix http://bugs.webkit.org/show_bug.cgi?id=16306
2523           Assertion failed in WebCore/loader/FrameLoader.cpp:4642
2524
2525         * loader/FrameLoader.cpp:
2526         (WebCore::FrameLoader::dispatchDidCommitLoad): Check m_creatingInitialEmptyDocument
2527         and don't deliver the client call in that case.
2528
2529 2007-12-05  Mark Rowe  <mrowe@apple.com>
2530
2531         Reviewed by Kevin Decker.
2532
2533         Fix 64-bit debug build.
2534
2535         * platform/text/mac/TextCodecMac.cpp:
2536         (WebCore::TextCodecMac::decode): OSStatus is a long for 32-bit but int on 64-bit,
2537         so we need to cast it to be able to use a single format specifier on both.
2538
2539 2007-12-05  Kevin Decker  <kdecker@apple.com>
2540
2541         Reviewed by Hyatt.
2542
2543         <rdar://problem/5613106> Acordex: REGRESSION (Tiger-Leopard): plug-ins can no longer take over TIFF images (affects uspto.gov)
2544        
2545         * loader/FrameLoader.cpp:
2546         (WebCore::FrameLoader::shouldUsePlugin): Allow plug-ins (with the exception of QuickTime) to
2547         takeover TIFF once again.
2548         
2549 2007-12-05  Luca Bruno  <lethalman88@gmail.com>
2550
2551         Reviewed by Alp Toker.
2552
2553         http://bugs.webkit.org/show_bug.cgi?id=16290
2554         [GTK] Pasting clipboard in rich text.
2555
2556         * platform/gtk/PasteboardGtk.cpp:
2557         (Pasteboard::documentFragment): Implement rich text paste support.
2558
2559 2007-12-05  Adele Peterson  <adele@apple.com>
2560
2561         Reviewed by Hyatt.
2562
2563         Reverting fix for <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges
2564
2565         We need to just fix the underlying focus ring repaint problem.
2566
2567         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::setStyle):
2568
2569 2007-12-04  Kevin McCullough  <kmccullough@apple.com>
2570
2571         Reviewed by Darin.
2572
2573         - <rdar://5621435>
2574         - Security Fix. Instead of having it off by default, WebKit now must
2575         explicitly turn off local-resource restriction when needed for backwards
2576         compatibility reasons.
2577
2578         * loader/FrameLoader.cpp:
2579
2580 2007-12-05  Adam Roben  <aroben@apple.com>
2581
2582         Set the menu item identifier for all menu items
2583
2584         This allows WebKit clients to distinguish between submenus in the
2585         context menu.
2586
2587         Reviewed by Darin.
2588
2589         No test possible.
2590
2591         * platform/win/ContextMenuItemWin.cpp:
2592         (WebCore::ContextMenuItem::ContextMenuItem):
2593
2594 2007-12-05  Dan Bernstein  <mitz@apple.com>
2595
2596         Reviewed by Darin Adler.
2597
2598         - WebCore part of fixing <rdar://problem/5111082> Flash popup video ad doesn't close when clicked at http://www.firestonecompleteautocare.com/
2599
2600         * manual-tests/nested-plug-ins.html: Added.
2601         * manual-tests/resources/nested-plug-ins-inner-frame.html: Added.
2602         * manual-tests/resources/nested-plug-ins-outer-frame.html: Added.
2603         * platform/ScrollView.h:
2604         * platform/Widget.h:
2605         (WebCore::Widget::attachToWindow): Added. Tells the widget that it is connected
2606         via visible ScrollViews to the root ScrollView of the WebView.
2607         (WebCore::Widget::detachFromWindow): Added. Tells the widget that it is no longer
2608         connected via visible ScrollViews to the root ScrollView of the WebView.
2609         * platform/win/ScrollViewWin.cpp:
2610         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate): Added
2611         m_visible and m_attachedToWindow members.
2612         (WebCore::ScrollView::attachToWindow): Added. Attaches all children if this
2613         view is visible.
2614         (WebCore::ScrollView::detachFromWindow): Added. Detaches all children if this
2615         view is visible (otherwise they would be detached already).
2616         (WebCore::ScrollView::show): Added. Attaches all children if this view
2617         is attached.
2618         (WebCore::ScrollView::hide): Added. Detaches all children if this view
2619         is attached (otherwise they would be detached already).
2620         (WebCore::ScrollView::isAttachedToWindow): Added.
2621         * platform/win/WidgetWin.cpp:
2622         (WebCore::Widget::setParent): Added calls to attachToWindow() and detachFromWindow()
2623         depending on whether the parent is set and attached or not.
2624         * plugins/win/PluginViewWin.cpp:
2625         (WebCore::PluginViewWin::setFocus):
2626         (WebCore::PluginViewWin::show): Changed to show the plug-in only if
2627         this view is attached.
2628         (WebCore::PluginViewWin::hide): Changed to hide the plug-in only if this
2629         view is attached (otherwise it would be hidden already).
2630         (WebCore::PluginViewWin::attachToWindow): Added. Shows the plug-in if this view
2631         is visible.
2632         (WebCore::PluginViewWin::detachFromWindow): Added. Hides the plug-in if this view
2633         is visible (otherwise it would be hidden already).
2634         (WebCore::PluginViewWin::PluginViewWin):
2635         * plugins/win/PluginViewWin.h: Added m_attachedToWindow member.
2636
2637 2007-12-04  Alp Toker  <alp@atoker.com>
2638
2639         Potential GTK+ build fix for the glib-genmarshal issue.
2640
2641         Split the glib-genmarshal qmake generator in two; one for the source
2642         file, another for the header.
2643
2644         * WebCore.pro:
2645
2646 2007-12-04  Alp Toker  <alp@atoker.com>
2647
2648         GTK+ build fix.
2649
2650         * platform/PlugInInfoStore.h:
2651
2652 2007-12-04  Kevin Decker  <kdecker@apple.com>
2653
2654         Reviewed by Anders.
2655
2656         <rdar://problem/5629125> PluginInfoStore needs the ability to return the name of a plug-in for a given MIME type
2657
2658         * page/mac/WebCoreViewFactory.h: Added pluginNameForMIMEType: method.
2659         * platform/PlugInInfoStore.h:
2660         * platform/gtk/TemporaryLinkStubs.cpp: Added stub version of pluginNameForMIMEType.
2661         (PlugInInfoStore::pluginNameForMIMEType):
2662         * platform/mac/PlugInInfoStoreMac.mm:
2663         (WebCore::PlugInInfoStore::pluginNameForMIMEType): Added.
2664         * platform/qt/PlugInInfoStoreQt.cpp: 
2665         (WebCore::PlugInInfoStore::pluginNameForMIMEType): Added stub version of pluginNameForMIMEType.
2666         * plugins/win/PlugInInfoStoreWin.cpp: 
2667         (WebCore::PlugInInfoStore::pluginNameForMIMEType): Added stub version of pluginNameForMIMEType.
2668
2669 2007-12-04  Adele Peterson  <adele@apple.com>
2670
2671         Reviewed by Darin.
2672
2673         Fix for <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges
2674
2675         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::setStyle):
2676         Adjust outline-offset so it doesn't extend beyond the border to interfere with typing
2677
2678 2007-12-04  Anders Carlsson  <andersca@apple.com>
2679
2680         Reviewed by Jon.
2681
2682         Always call NPP_NewStream, NPP_DestroyStream and NPP_URLNotify for JavaScript
2683         result streams, even if the JavaScript expression threw an exception or returned undefined.
2684         This matches what Firefox does.
2685         
2686         * plugins/win/PluginStreamWin.cpp:
2687         (WebCore::PluginStreamWin::sendJavaScriptStream):
2688         Handle the result string being null, and set the correct NPReason if it is.
2689         
2690         * plugins/win/PluginViewWin.cpp:
2691         (WebCore::PluginViewWin::performRequest):
2692         Always send the JavaScript stream, regardless of the result could be converted to a string or not.
2693
2694 2007-12-04  Adele Peterson  <adele@apple.com>
2695
2696         Reviewed by Hyatt.
2697
2698         Fix for <rdar://problem/5622464> controls should show up for audio element
2699
2700         * css/html4.css: Added styles for audio controls.  This will need to be refined, since we may want a different look for audio controls.
2701         * html/HTMLMediaElement.cpp:
2702         (WebCore::HTMLMediaElement::attributeChanged): When the controls attribute changes detach and reattach if necessary. 
2703         (WebCore::HTMLMediaElement::rendererIsNeeded): Added.
2704         (WebCore::HTMLMediaElement::createRenderer): Added.  Uses RenderMedia.
2705         * html/HTMLMediaElement.h:
2706         * rendering/RenderMedia.cpp: (WebCore::RenderMedia::RenderMedia): Added constructor that doesn't take intrinsic size.
2707         * rendering/RenderMedia.h:
2708
2709 2007-12-04  Anders Carlsson  <andersca@apple.com>
2710
2711         Reviewed by Sam.
2712
2713         Add isSafeScript(const JSGlobalObject*) so we won't get the JSGlobalObject
2714         implementation, which always returns true(!).
2715         
2716         * bindings/js/kjs_window.cpp:
2717         (KJS::Window::isSafeScript):
2718         Make the static isSafeScript method take two JSGlobalObjects.
2719         
2720         * bindings/js/kjs_window.h:
2721         (KJS::Window::isSafeScript):
2722         Implement isSafeScript and have it call the static method.
2723
2724 2007-11-27  Adam Roben  <aroben@apple.com>
2725
2726         Make the implementation of Frame::setNeedsReapplyStyles cross-platform
2727
2728         Reviewed by Hyatt.
2729
2730         No change in functionality.
2731
2732         * page/Frame.cpp:
2733         (WebCore::Frame::setNeedsReapplyStyles): Added. Invalidates the
2734         FrameView so that FrameView::layout will be called, which ends up
2735         calling reapplyStyles.
2736         (WebCore::Frame::needsReapplyStyles): Added.
2737         (WebCore::Frame::reapplyStyles): Renamed from reparseConfiguration.
2738         (WebCore::FramePrivate::FramePrivate):
2739         * page/Frame.h:
2740         * page/FramePrivate.h: Added new boolean member.
2741         * page/FrameView.cpp:
2742         (WebCore::FrameView::layout): Call Frame::reapplyStyles if needed.
2743         (WebCore::FrameView::needsLayout): Say that we need layout if the
2744         Frame needs styles reapplied.
2745         * page/mac/WebCoreFrameBridge.h: Removed setNeedsReapplyStyles.
2746         * page/mac/WebCoreFrameBridge.mm:
2747         (-[WebCoreFrameBridge reapplyStylesForDeviceType:]): Updated for
2748         rename.
2749
2750         * bridge/win/FrameWin.cpp: Removed Frame::setNeedsReapplyStyles.
2751         * page/gtk/FrameGtk.cpp: Ditto.
2752         * page/mac/FrameMac.mm: Ditto.
2753         * page/qt/FrameQt.cpp: Ditto.
2754         * platform/wx/TemporaryLinkStubs.cpp: Ditto.
2755
2756 2007-12-04  Antti Koivisto  <antti@apple.com>
2757
2758         Reviewed by Adele.
2759
2760         Pass intrinsic size to the base class.
2761
2762         * rendering/RenderMedia.cpp:
2763         (WebCore::RenderMedia::RenderMedia):
2764
2765 2007-12-04  Adele Peterson  <adele@apple.com>
2766
2767         Reviewed by Darin.
2768
2769         Fix for <rdar://problem/5578209> REGRESSION: Crash in WebCore::DeprecatedValueListImpl::Private::copyList when going back on zoomerang.com/survey
2770
2771         * loader/FrameLoader.cpp: (WebCore::FrameLoader::scheduleHistoryNavigation):
2772           When the new url is exactly the same as the old url, don't treat it like a fragment navigation, since its going to cause a reload.
2773
2774 2007-12-04  Darin Adler  <darin@apple.com>
2775
2776         Reviewed by Kevin Decker.
2777
2778         - added an assertion for a situation that leads to a Safari assertion:
2779           a commit that is not followed by a load completion
2780
2781         - removed some unneeded FrameLoader stuff -- maybe some day we'll get this
2782           class cut down to size
2783
2784         * loader/FrameLoader.cpp:
2785         (WebCore::FrameLoader::FrameLoader): Added boolean for assertion.
2786         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Added code to assert
2787         that we already sent a commit before sending a complete.
2788         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy): Call
2789         client directly instead of indirecting through a function.
2790         (WebCore::FrameLoader::loadItem): Ditto.
2791         (WebCore::FrameLoader::goToItem): Ditto.
2792         (WebCore::FrameLoader::addHistoryForCurrentLocation): Get the private browsing
2793         state from Settings instead of FrameLoaderClient. Also call client directly
2794         instead of indirecting through a function.
2795         (WebCore::FrameLoader::updateHistoryForReload): Call client directly instead
2796         of indirecting through a function.
2797         (WebCore::FrameLoader::dispatchDidCommitLoad): Added code to assert
2798         that we did not yet send a commit and set the flag that will be used to check
2799         that we don't do this twice in a row without an intervening completion call.
2800
2801         * loader/FrameLoader.h: Added a boolean for the assertion. Removed six
2802         now-unneeded functions.
2803
2804         * loader/FrameLoaderClient.h: Removed now-unneeded privateBrowsingEnabled function.
2805
2806         * loader/ResourceLoader.cpp: (WebCore::ResourceLoader::willCacheResponse): Get
2807         the private browsing state from Settings instead of FrameLoaderClient.
2808
2809         * svg/graphics/SVGImageEmptyClients.h: Removed obsolete privateBrowsingEnabled.
2810
2811 2007-12-03  Antti Koivisto  <antti@apple.com>
2812
2813         Reviewed by Adele.
2814         
2815         Fix <rdar://problem/5624802> 
2816         Controller displays outside of <video> element when width and height aren't specified 
2817
2818         - Explicitly adjust size of the controls tree root.
2819         - Switch RenderMedia base class back to RenderReplaced. It is easier to manage the shadow tree
2820           by hand. This also allows better code sharing with other replaced element classes.
2821         - Move duplicated layout and painting code from subclasses up to RenderReplaced.
2822
2823         Test: media/video-controls-rendering.html
2824
2825         * rendering/RenderHTMLCanvas.cpp:
2826         (WebCore::RenderHTMLCanvas::paintReplaced):
2827         * rendering/RenderHTMLCanvas.h:
2828             Share code.
2829         * rendering/RenderImage.cpp:
2830         (WebCore::RenderImage::paintReplaced):
2831         (WebCore::RenderImage::minimumReplacedHeight):
2832         * rendering/RenderImage.h:
2833             Share code.
2834         * rendering/RenderMedia.cpp:
2835         (WebCore::RenderMediaControlShadowRoot::RenderMediaControlShadowRoot):
2836         (WebCore::RenderMediaControlShadowRoot::setParent):
2837             Add a subclass just to get through encapsulation to use setParent().
2838         (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
2839             Move initialization to the constructor.
2840         (WebCore::RenderMedia::RenderMedia):
2841         (WebCore::RenderMedia::~RenderMedia):
2842         (WebCore::RenderMedia::layout):
2843             Resize and layout the controller root by hand.
2844         (WebCore::RenderMedia::firstChild):
2845         (WebCore::RenderMedia::lastChild):
2846         (WebCore::RenderMedia::removeChild):
2847             Support one child renderer for controls.
2848         (WebCore::RenderMedia::createControlsShadowRoot):
2849         * rendering/RenderMedia.h:
2850         (WebCore::RenderMedia::isMedia):
2851             Switch base class to RenderReplaced, delete the now unnecessary stuff.
2852         * rendering/RenderReplaced.cpp:
2853         (WebCore::RenderReplaced::layout):
2854         (WebCore::RenderReplaced::paint):
2855         * rendering/RenderReplaced.h:
2856         (WebCore::RenderReplaced::minimumReplacedHeight):
2857         (WebCore::RenderReplaced::paintReplaced):
2858             Share code.
2859         * rendering/RenderVideo.cpp:
2860         (WebCore::RenderVideo::videoSizeChanged):
2861             Simplify, just request relayout.
2862         (WebCore::RenderVideo::paintReplaced):
2863         (WebCore::RenderVideo::layout):
2864         * rendering/RenderVideo.h:
2865             Share code.
2866
2867 2007-12-04  Michael Natterer  <mitch@imendio.com>
2868
2869         Reviewed by Alp Toker.
2870
2871         * WebCore.pro: fix build of webkit-marshal by building the
2872         functions into a separate .cpp file instead of including them in
2873         the header. This way we can use the marshallers from more than one
2874         file without using bad hacks.
2875
2876         Add the generated sources directory to DEPENDPATH.
2877
2878 2007-12-04  Pierre-Luc Beaudoin  <pierre-luc.beaudoin@collabora.co.uk>
2879
2880         Reviewed by Alp Toker.
2881
2882         http://bugs.webkit.org/show_bug.cgi?id=16145
2883         [gtk] Implement media support in GTK backend
2884
2885         This implements the media tags of HTML5 on the GTK+ port based on the 
2886         Mac port. Media tests pass although some tests required a small modifications: 
2887         As per the HTML5 spec, the loading of the clip should start only after 
2888         all script are done.  But in the case of the tests, the loading starts 
2889         before some callbacks get registered.  This has been discussed with 
2890         Antti Koivisto, and the tests should be updated.
2891
2892         There is only one known issue: one time in 10 tries, loading a buffered 
2893         clip will never end buffering.  The buffering will stall at 97% for no 
2894         apparent reasons.  Reloading the page usually works around the problem.
2895         On the GStreamer side, some codecs don't return correct values, therefore
2896         they make the tests fail.  For instance H.264 will make the video-end 
2897         test fail.  This should be fixed in GStreamer 0.10.15.
2898
2899         This version displays video in a pop up window.  A place holder is drawn
2900         on the page where the video should appear.
2901
2902         By default, it is turned off in WebCore.pro until GStreamer/X
2903         detection issues are sorted out.
2904
2905         * WebCore.pro:
2906         Disable video for now
2907         * platform/Logging.cpp:
2908         (WebCore::):
2909         * platform/Logging.h:
2910         Added a logging level for Media stuff
2911         * platform/graphics/Movie.cpp:
2912         * platform/graphics/gtk/MoviePrivateGStreamer.cpp: Added.
2913         (WebCore::moviePrivateErrorCallback):
2914         (WebCore::moviePrivateEOSCallback):
2915         (WebCore::moviePrivateStateCallback):
2916         (WebCore::moviePrivateBufferingCallback):
2917         (WebCore::moviePrivateWindowIDCallback):
2918         (WebCore::MoviePrivate::MoviePrivate):
2919         (WebCore::MoviePrivate::~MoviePrivate):
2920         (WebCore::MoviePrivate::load):
2921         (WebCore::MoviePrivate::play):
2922         (WebCore::MoviePrivate::pause):
2923         (WebCore::MoviePrivate::duration):
2924         (WebCore::MoviePrivate::currentTime):
2925         (WebCore::MoviePrivate::seek):
2926         (WebCore::MoviePrivate::setEndTime):
2927         (WebCore::MoviePrivate::addCuePoint):
2928         (WebCore::MoviePrivate::removeCuePoint):
2929         (WebCore::MoviePrivate::clearCuePoints):
2930         (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
2931         (WebCore::MoviePrivate::cancelSeek):
2932         (WebCore::MoviePrivate::cuePointTimerFired):
2933         (WebCore::MoviePrivate::paused):
2934         (WebCore::MoviePrivate::seeking):
2935         (WebCore::MoviePrivate::naturalSize):
2936         (WebCore::MoviePrivate::hasVideo):
2937         (WebCore::MoviePrivate::setVolume):
2938         (WebCore::MoviePrivate::setMuted):
2939         (WebCore::MoviePrivate::setRate):
2940         (WebCore::MoviePrivate::dataRate):
2941         (WebCore::MoviePrivate::networkState):
2942         (WebCore::MoviePrivate::readyState):
2943         (WebCore::MoviePrivate::maxTimeBuffered):
2944         (WebCore::MoviePrivate::maxTimeSeekable):
2945         (WebCore::MoviePrivate::maxTimeLoaded):
2946         (WebCore::MoviePrivate::bytesLoaded):
2947         (WebCore::MoviePrivate::totalBytesKnown):
2948         (WebCore::MoviePrivate::totalBytes):
2949         (WebCore::MoviePrivate::cancelLoad):
2950         (WebCore::MoviePrivate::updateStates):
2951         (WebCore::MoviePrivate::loadStateChanged):
2952         (WebCore::MoviePrivate::rateChanged):
2953         (WebCore::MoviePrivate::sizeChanged):
2954         (WebCore::MoviePrivate::timeChanged):
2955         (WebCore::MoviePrivate::volumeChanged):
2956         (WebCore::MoviePrivate::didEnd):
2957         (WebCore::MoviePrivate::loadingFailed):
2958         (WebCore::MoviePrivate::setRect):
2959         (WebCore::MoviePrivate::setVisible):
2960         (WebCore::MoviePrivate::paint):
2961         (WebCore::MoviePrivate::getSupportedTypes):
2962         (WebCore::MoviePrivate::createGSTPlayBin):
2963         * platform/graphics/gtk/MoviePrivateGStreamer.h: Added.
2964
2965 2007-12-04  Holger Hans Peter Freyther <holger.freyther@trolltech.com>
2966
2967         Reviewed by Simon.
2968
2969         * Implement the InspectorClient for the Qt port
2970         * It does not support highlighting of nodes yet
2971         * Use QRC to open the internal page. The important thing is the
2972         '/' in the URL to make WebCore::Document::completeURL behave the
2973         way we want.
2974         * To make the InspectorClient work we will have to mark qrc as secure.
2975
2976         * WebCore.pro:
2977         * loader/FrameLoader.cpp:
2978         (WebCore::localSchemes):
2979         * page/inspector/WebKit.qrc: Added.
2980
2981 2007-12-04  Alp Toker  <alp@atoker.com>
2982
2983         Rubber stamped by Mark Rowe.
2984
2985         Remove two unused variables to silence warnings.
2986
2987         * html/CanvasRenderingContext2D.cpp:
2988         (WebCore::CanvasRenderingContext2D::fill):
2989         (WebCore::CanvasRenderingContext2D::stroke):
2990
2991 2007-12-03  Dan Bernstein  <mitz@apple.com>
2992
2993         Reviewed by Darin Adler.
2994
2995         - fix <rdar://problem/5134044> fast/frames/frame-src-attribute.html fails on Windows
2996
2997         * platform/win/ScrollViewWin.cpp:
2998         (WebCore::ScrollView::visibleWidth): Do not return negative values.
2999         (WebCore::ScrollView::visibleHeight): Ditto.
3000
3001 2007-12-03  Dan Bernstein  <mitz@apple.com>
3002
3003         Reviewed by Dave Hyatt.
3004
3005         - fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
3006
3007         Test: fast/events/resize-subframe.html
3008
3009         * page/FrameView.cpp:
3010         (WebCore::FrameViewPrivate::FrameViewPrivate): Added a timer used when
3011         deferring tasks that need to be done after layout.
3012         (WebCore::FrameViewPrivate::reset):
3013         (WebCore::FrameView::~FrameView):
3014         (WebCore::FrameView::layout): Moved the updating of widget positions,
3015         loading plug-ins and sending events queued up during layout into
3016         performPostLayoutTasks(). performPostLayoutTasks() is called after
3017         layout unless the layout was triggered by a previous layout's post-
3018         layout tasks. In the latter case, performPostLayoutTasks() is scheduled
3019         to run later.
3020         (WebCore::FrameView::performPostLayoutTasks): Performs work that needs
3021         to be done after layout but which can result in arbitrary code
3022         execution and therefore may re-invalidate the layout. This includes
3023         updating widget positions, loading plug-ins, and dispatching layout-
3024         related DOM events (scroll, overflow and resize).
3025         (WebCore::FrameView::postLayoutTimerFired):
3026         (WebCore::FrameView::dispatchScheduledEvents):
3027         * page/FrameView.h:
3028         * page/mac/WebCoreFrameBridge.h:
3029         * page/mac/WebCoreFrameBridge.mm: Removed -sendResizeEvent since this
3030         is handled by FrameView now.
3031
3032 2007-12-03  Rob Buis  <buis@kde.org>
3033
3034         Reviewed by Darin.
3035
3036         http://bugs.webkit.org/show_bug.cgi?id=15767
3037         Text decorations do not respect "visibility" property
3038
3039         Only paint decorations if visibility is "visible".
3040
3041         * rendering/SVGInlineTextBox.cpp:
3042         (WebCore::SVGInlineTextBox::paintDecoration):
3043
3044 2007-12-03  Steve Falkenburg  <sfalken@apple.com>
3045
3046         Fix build.
3047
3048         * WebCore.vcproj/WebCore.vcproj:
3049
3050 2007-12-03  Nikolas Zimmermann  <zimmermann@kde.org>
3051
3052         Reviewed by David.
3053
3054         Fixes: http://bugs.webkit.org/show_bug.cgi?id=15645
3055         Don't allow selectors to interfere with the SVG shadow tree (<use> internal non-exposed tree).
3056
3057         * css/CSSStyleSelector.cpp:
3058         (WebCore::CSSStyleSelector::checkSelector):
3059
3060 2007-12-03  Dan Bernstein  <mitz@apple.com>
3061
3062         Reviewed by Adam Roben.
3063
3064         - fix <rdar://problem/5538651> REGRESSSION: domfuzz: null deref in WebCore::Document::canReplaceChild
3065
3066         Test: fast/dom/Document/replaceChild-null-oldChild.html
3067
3068         * dom/Document.cpp:
3069         (WebCore::Document::canReplaceChild):
3070
3071 2007-12-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
3072
3073         Reviewed by Simon.
3074
3075         * Avoid crashes by making sure everything is layouted before
3076         we start painting. This avoids a crash in Widget::invalidateRect
3077         because QPainter::begin would fail
3078         * The QWebFrame::layout() methods and calls are left untouched because
3079         this would be an API decision.
3080         
3081
3082         WARNING: NO TEST CASES ADDED OR CHANGED
3083
3084         * page/FrameView.cpp:
3085         (WebCore::FrameView::updateControlTints):
3086         * page/FrameView.h:
3087         * platform/ScrollView.h:
3088         * platform/qt/ScrollViewQt.cpp:
3089         (WebCore::ScrollView::children):
3090
3091 2007-12-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
3092
3093         Reviewed by Simon.
3094
3095         * Implement GraphicsContext::fillRoundedRect similiar to the
3096         CoreGraphics implementation only addPath is not called this
3097         seems to be only needed for CoreGraphics.
3098         
3099
3100         WARNING: NO TEST CASES ADDED OR CHANGED
3101
3102         * platform/graphics/qt/GraphicsContextQt.cpp:
3103         (WebCore::GraphicsContext::fillRoundedRect):
3104
3105 2007-12-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
3106
3107         Reviewed by Simon.
3108
3109         * Coding Style fixes
3110         
3111
3112         WARNING: NO TEST CASES ADDED OR CHANGED
3113
3114         * platform/qt/ScrollViewQt.cpp:
3115         (WebCore::ScrollView::addChild):
3116         (WebCore::ScrollView::removeChild):
3117
3118 2007-12-03  Alp Toker  <alp@atoker.com>
3119
3120         Reviewed by Mark Rowe.
3121
3122         Don't delete the decoder if it's already been created. The one we have
3123         is fine.
3124
3125         Cairo image cleanups. Nothing substantial.
3126
3127         Notify ImageObservers where appropriate.
3128
3129         * platform/graphics/cairo/ImageCairo.cpp:
3130         (WebCore::BitmapImage::draw):
3131         (WebCore::Image::drawPattern):
3132         * platform/graphics/cairo/ImageSourceCairo.cpp:
3133         (WebCore::ImageSource::setData):
3134         * platform/graphics/gtk/ImageGtk.cpp:
3135
3136 2007-12-03  Simon Hausmann  <hausmann@webkit.org>
3137
3138         Reviewed by Lars.
3139
3140         Fixed crash when rendering form elements with Qt 4.4
3141
3142         QPainter::device() is not guaranteed to return a QWidget, so do the safe "cast" with the
3143         help of QPaintDevice::devType().
3144         Also fall back to the QApplication::style() if we don't have a widget.
3145
3146         * platform/qt/RenderThemeQt.cpp:
3147         (WebCore::RenderThemeQt::paintButton):
3148         (WebCore::RenderThemeQt::paintTextField):
3149         (WebCore::RenderThemeQt::paintMenuList):
3150         (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
3151
3152 2007-12-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
3153
3154         Reviewed by Sam Weinig.
3155
3156         * Add FrameLoader::shouldTreatSchemeAsLocal which is similar to
3157         shouldTreatURLAsLocal.
3158         * Make use of FrameLoader::shouldTreatSchemeAsLocal in SecurityOrigin
3159         and do not hardcode "file". This is needed for the WebKit/qt port to make
3160         the Web Inspector work as it using the qrc protocol instead of file.
3161
3162
3163         * loader/FrameLoader.cpp:
3164         (WebCore::FrameLoader::shouldTreatSchemeAsLocal):
3165         * loader/FrameLoader.h:
3166         * platform/SecurityOrigin.cpp:
3167         (WebCore::SecurityOrigin::isSecureTransitionTo):
3168
3169 2007-12-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
3170
3171         Rubber stamped by Sam Weinig.
3172
3173         Only add applewebdata to the localSchemes when building for the
3174         mac. This is in preparation of adding qrc for the Qt port there
3175         as well and http://bugs.webkit.org/show_bug.cgi?id=15938.
3176
3177         According to Anders applewebdata is not used on the win port.
3178
3179         * loader/FrameLoader.cpp:
3180         (WebCore::localSchemes):
3181
3182 2007-12-02  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
3183
3184         Rubber stamped by Sam Weinig.
3185
3186         Fix a typo. It is contains and not containts
3187
3188         * loader/FrameLoader.cpp:
3189
3190 2007-12-03  Alp Toker  <alp@atoker.com>
3191
3192         Add another missing DEPENDPATH.
3193
3194         Noticed when fixing the build.
3195
3196         * WebCore.pro:
3197
3198 2007-12-03  Adam Roben  <aroben@apple.com>
3199
3200         Speculative Windows build fix
3201
3202         * plugins/win/PluginViewWin.cpp:
3203         (WebCore::getString):
3204
3205 2007-12-03  Geoffrey Garen  <ggaren@apple.com>
3206
3207         Build fix: added symbols to the right .exp file.
3208
3209         * WebCore.base.exp:
3210
3211 2007-12-02  Geoffrey Garen  <ggaren@apple.com>
3212
3213         Reviewed by Eric Seidel.
3214
3215         Updated to match the JavaScriptCore change to move virtual methods from
3216         Interpreter to JSGlobalObject.
3217         
3218         Moved virtual ScriptInterpreter functions to Window.
3219
3220 2007-12-02  Darin Adler  <darin@apple.com>
3221
3222         Reviewed by Mitz.
3223
3224         - fix <rdar://problem/5601995> Hang/crash on http://ebay-uk.custhelp.com/
3225
3226         There were two problems here:
3227
3228             1) Incorrect HTMLCollection behavior led to us trying to insert a
3229                new row inside an existing row instead of next to it. The fix for
3230                this is to make HTMLCollection work better for table-related
3231                collections.
3232
3233             2) HTMLTableRowElement::insertCell would return a bad pointer if
3234                the insertion failed. The code should have failed, but not crashed,
3235                so it's worth fixing that too.
3236
3237         While fixing the HTMLCollection issues, I did some clean-up of that
3238         class and its derived classes.
3239
3240         Test: fast/dom/HTMLTableElement/rows.html
3241         Test: fast/dom/HTMLTableElement/tBodies.html
3242         Test: fast/dom/HTMLTableRowElement/cells.html
3243         Test: fast/dom/HTMLTableRowElement/insertCell.html
3244         Test: fast/dom/HTMLTableSectionElement/rows.html
3245
3246         * bindings/js/JSHTMLCollectionCustom.cpp:
3247         (WebCore::toJS): Updated because collectionType() was renamed to type().
3248
3249         * html/HTMLCollection.cpp:
3250         (WebCore::HTMLCollection::HTMLCollection): Updated for data member name
3251         changes. Also added a protected constructor for use by derived classes
3252         that pass in a CollectionInfo.
3253         (WebCore::HTMLCollection::CollectionInfo::copyCacheMap): Moved out of
3254         the header.
3255         (WebCore::isTableSection): Added.
3256         (WebCore::HTMLCollection::itemAfter): Renamed from traverseNextItem,
3257         because the old name was grammatically incorrect and thus a bit confusing.
3258         Changed to operate on Element* instead of Node*, and use 0 to start
3259         rather than passing in the base node (required since the base node can be
3260         a document, which is not an element). Generalized the code that made
3261         NodeChildren not descend into deeper descendants so it can be used for
3262         TRCells, TSectionRows, TableTBodies, and TableRows. Reformatted the
3263         switch statement and got rid of the "found" boolean since we can just
3264         return when we find something. Got rid of the default case, and instead
3265         listed all the enum values. Also changed to use a for loop for clarity.
3266         (WebCore::HTMLCollection::calcLength): Updated for itemAfter changes.
3267         (WebCore::HTMLCollection::item): Ditto.
3268         (WebCore::HTMLCollection::nextItem): Ditto.
3269         (WebCore::HTMLCollection::checkForNameMatch): Updated to take an Element
3270         instead of a Node pointer.
3271         (WebCore::HTMLCollection::namedItem): More of the same.
3272         (WebCore::HTMLCollection::updateNameCache): Ditto.
3273         (WebCore::HTMLCollection::namedItems): Ditto.
3274         (WebCore::HTMLCollection::nextNamedItem): Ditto.
3275         (WebCore::HTMLCollection::tags): Ditto.
3276
3277         * html/HTMLCollection.h: Added a type FormElements, so that the
3278         HTMLFormCollection would not have a type of DocImages, which is what
3279         it previously did. Changed the base parameter to be a PassRefPtr to
3280         make it clear we take ownership of it. Added a comment explaining
3281         why we should change the name CollectionInfo. Made a lot more members
3282         private instead of protected. Renamed traverseNextItem to itemAfter.
3283         Changed most functions to take Element* instead of Node*.
3284
3285         * html/HTMLFormCollection.cpp:
3286         (WebCore::HTMLFormCollection::formCollectionInfo): Added.
3287         (WebCore::HTMLFormCollection::HTMLFormCollection): Updated to pass
3288         collection info into the base class.
3289         (WebCore::HTMLFormCollection::calcLength): Updated to use base() so we
3290         don't need to get at m_base directly.
3291         (WebCore::HTMLFormCollection::item): Same, but for info().
3292         (WebCore::HTMLFormCollection::getNamedItem): Removed unused first
3293         argument.
3294         (WebCore::HTMLFormCollection::getNamedFormItem): Got rid of unneeded
3295         checks that the base is still an element and still a form, since that's
3296         guaranteed.
3297         (WebCore::HTMLFormCollection::nextItem): Use info().
3298         (WebCore::HTMLFormCollection::nextNamedItemInternal): Node instead of
3299         Element, some name changes.
3300         (WebCore::HTMLFormCollection::namedItem): Update for changes elsewhere.
3301         (WebCore::HTMLFormCollection::nextNamedItem): Ditto, also rewrote loop
3302         to be much simpler.
3303         (WebCore::HTMLFormCollection::updateNameCache): More of the same.
3304
3305         * html/HTMLFormCollection.h: Changed constructor to take an
3306         HTMLFormElement, using a PassRefPtr to communicate transfer of
3307         ownership. Made everything private instead of protected. Removed
3308         unneeded override of firstItem. Made getNamedItem and
3309         nextNamedItemInternal non-virtual. Removed unused first argument of
3310         getNamedItem. Added declaration of formCollectionInfo.
3311
3312         * html/HTMLNameCollection.cpp:
3313         (WebCore::HTMLNameCollection::HTMLNameCollection): Updated to pass
3314         collection info into the base class.
3315         (WebCore::HTMLNameCollection::itemAfter): Reformatted a bit and
3316         changed into a for loop.
3317
3318         * html/HTMLNameCollection.h: Updated for name changes. Made function
3319         private instead of public. Used PassRefPtr in constructor.
3320
3321         * html/HTMLOptionsCollection.cpp:
3322         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection): Updated to
3323         pass collection info into the base class.
3324         (WebCore::HTMLOptionsCollection::add): Updated for public/private
3325         changes in the base class.
3326         (WebCore::HTMLOptionsCollection::selectedIndex): Ditto.
3327         (WebCore::HTMLOptionsCollection::setSelectedIndex): Ditto.
3328         (WebCore::HTMLOptionsCollection::setLength): Ditto.
3329
3330         * html/HTMLOptionsCollection.h: Changed constructor parameter to be a
3331         PassRefPtr.
3332
3333         * html/HTMLTableRowElement.cpp:
3334         (WebCore::HTMLTableRowElement::insertCell): Changed code to use RefPtr
3335         and PassRefPtr since this creates a new object. This alone fixed the
3336         crash. Also cleaned up logic a bit to be more readable.
3337
3338         * html/HTMLTableRowElement.h: Changed insertCell to return a PassRefPtr.
3339         Also reordered functions a bit to make things a little more logical and
3340         removed the unused ncols data member.
3341
3342         * html/HTMLTableSectionElement.cpp:
3343         (WebCore::HTMLTableSectionElement::rows): Pass TSectionRows, not
3344         TableRows. This mistake was harmless before because TableRows and
3345         TSectionRows were handled identically inside HTMLCollection, but that is
3346         no longer the case with this fix.
3347
3348         * bindings/scripts/CodeGeneratorJS.pm: Add an include to cope with the
3349         fact that HTMLOptionsCollection no longer includes HTMLOptionElement.
3350         I don't think this really should be a special case -- might be worth
3351         returning later to see if this can be optimized.
3352
3353 2007-12-02  Nikolas Zimmermann  <zimmermann@kde.org>
3354
3355         Reviewed by Adam.
3356
3357         RenderSVGViewportContainer sets wrong width/height.
3358         Share code with RenderSVGContainer in a central calcBounds() function.
3359
3360         Fixes:
3361         - svg/custom/use-css-events.svg (http://bugs.webkit.org/show_bug.cgi?id=15403)
3362         - svg/custom/deep-dynamic-updates.svg
3363         - svg/custom/use-clipped-hit.svg
3364         - svg/custom/image-clipped-hit.svg
3365
3366         * rendering/RenderSVGContainer.cpp:
3367         (WebCore::RenderSVGContainer::layout):
3368         (WebCore::RenderSVGContainer::calcBounds):
3369         * rendering/RenderSVGContainer.h:
3370         * rendering/RenderSVGViewportContainer.cpp:
3371         (WebCore::RenderSVGViewportContainer::layout):
3372
3373 2007-12-02  Brady Eidson <beidson@apple.com>
3374
3375         Reviewed by Darin
3376
3377         databaseChanged notifications were being sent out on the database thread - they need to be on the main thread
3378         like all other notifications we send out!
3379
3380         * platform/SecurityOriginData.cpp:
3381         (WebCore::SecurityOriginData::copy): Add a deep copy method, for when an object thread hops
3382         * platform/SecurityOriginData.h:
3383
3384         * storage/DatabaseTracker.cpp:
3385         (WebCore::notificationMutex):
3386         (WebCore::notificationQueue):
3387         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged): Add the origin/name pair to a queue
3388         (WebCore::DatabaseTracker::scheduleForNotification): Schedule to deliver this queue of notifications
3389           on the main thread
3390         (WebCore::DatabaseTracker::notifyDatabasesChanged): Deliver all notifications in the queue
3391         * storage/DatabaseTracker.h:
3392
3393         * storage/SQLTransaction.cpp:
3394         (WebCore::SQLTransaction::postflightAndCommit): scheduleNotifyDatabaseChanged() instead of "notify now!"
3395         (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Ditto
3396
3397 2007-12-02  Rob Buis  <buis@kde.org>
3398
3399         Reviewed by Darin.
3400
3401         http://bugs.webkit.org/show_bug.cgi?id=16002
3402         Load SVG (and other) UA StyleSheets dynamically when needed
3403
3404         Load svg sheet when needed.
3405
3406         * css/CSSStyleSelector.cpp:
3407         (WebCore::screenEval):
3408         (WebCore::printEval):
3409         (WebCore::CSSStyleSelector::CSSStyleSelector):
3410         (WebCore::CSSStyleSelector::loadDefaultStyle):
3411         (WebCore::CSSStyleSelector::styleForElement):
3412         (WebCore::CSSRuleSet::addRulesFromSheet):
3413
3414 2007-12-02  Mark Rowe  <mrowe@apple.com>
3415
3416         Try and fix the Windows build.
3417
3418         * plugins/win/PluginViewWin.cpp:
3419         (WebCore::PluginViewWin::bindingInstance):
3420
3421 2007-12-02  Nikolas Zimmermann  <zimmermann@kde.org>
3422
3423         Rubber stamped by Eric.
3424
3425         Move platform/graphics/svg to graphics/svg as discussed on webkit-dev.
3426         Updated all project files.
3427
3428         * WebCore.pro:
3429         * WebCore.vcproj/WebCore.vcproj:
3430         * WebCore.xcodeproj/project.pbxproj:
3431         * platform/graphics/svg: Removed.
3432         * platform/graphics/svg/SVGImage.cpp: Removed.
3433         * platform/graphics/svg/SVGImage.h: Removed.
3434         * platform/graphics/svg/SVGImageEmptyClients.h: Removed.
3435         * platform/graphics/svg/SVGPaintServer.cpp: Removed.
3436         * platform/graphics/svg/SVGPaintServer.h: Removed.
3437         * platform/graphics/svg/SVGPaintServerGradient.cpp: Removed.
3438         * platform/graphics/svg/SVGPaintServerGradient.h: Removed.
3439         * platform/graphics/svg/SVGPaintServerLinearGradient.cpp: Removed.
3440         * platform/graphics/svg/SVGPaintServerLinearGradient.h: Removed.
3441         * platform/graphics/svg/SVGPaintServerPattern.cpp: Removed.
3442         * platform/graphics/svg/SVGPaintServerPattern.h: Removed.
3443         * platform/graphics/svg/SVGPaintServerRadialGradient.cpp: Removed.
3444         * platform/graphics/svg/SVGPaintServerRadialGradient.h: Removed.
3445         * platform/graphics/svg/SVGPaintServerSolid.cpp: Removed.
3446         * platform/graphics/svg/SVGPaintServerSolid.h: Removed.
3447         * platform/graphics/svg/SVGResource.cpp: Removed.
3448         * platform/graphics/svg/SVGResource.h: Removed.
3449         * platform/graphics/svg/SVGResourceClipper.cpp: Removed.
3450         * platform/graphics/svg/SVGResourceClipper.h: Removed.
3451         * platform/graphics/svg/SVGResourceFilter.cpp: Removed.
3452         * platform/graphics/svg/SVGResourceFilter.h: Removed.
3453         * platform/graphics/svg/SVGResourceListener.h: Removed.
3454         * platform/graphics/svg/SVGResourceMarker.cpp: Removed.
3455         * platform/graphics/svg/SVGResourceMarker.h: Removed.
3456         * platform/graphics/svg/SVGResourceMasker.cpp: Removed.
3457         * platform/graphics/svg/SVGResourceMasker.h: Removed.
3458         * platform/graphics/svg/cairo: Removed.
3459         * platform/graphics/svg/cairo/RenderPathCairo.cpp: Removed.
3460         * platform/graphics/svg/cairo/SVGPaintServerCairo.cpp: Removed.
3461         * platform/graphics/svg/cairo/SVGPaintServerGradientCairo.cpp: Removed.
3462         * platform/graphics/svg/cairo/SVGPaintServerPatternCairo.cpp: Removed.
3463         * platform/graphics/svg/cairo/SVGPaintServerSolidCairo.cpp: Removed.
3464         * platform/graphics/svg/cairo/SVGResourceClipperCairo.cpp: Removed.
3465         * platform/graphics/svg/cairo/SVGResourceMaskerCairo.cpp: Removed.
3466         * platform/graphics/svg/cg: Removed.
3467         * platform/graphics/svg/cg/CgSupport.cpp: Removed.
3468         * platform/graphics/svg/cg/CgSupport.h: Removed.
3469         * platform/graphics/svg/cg/RenderPathCg.cpp: Removed.
3470         * platform/graphics/svg/cg/SVGPaintServerCg.cpp: Removed.
3471         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp: Removed.
3472         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp: Removed.
3473         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp: Removed.
3474         * platform/graphics/svg/cg/SVGResourceClipperCg.cpp: Removed.
3475         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp: Removed.
3476         * platform/graphics/svg/cg/SVGResourceFilterCg.mm: Removed.
3477         * platform/graphics/svg/cg/SVGResourceMaskerCg.cpp: Removed.
3478         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm: Removed.
3479         * platform/graphics/svg/filters: Removed.
3480         * platform/graphics/svg/filters/SVGDistantLightSource.h: Removed.
3481         * platform/graphics/svg/filters/SVGFEBlend.cpp: Removed.
3482         * platform/graphics/svg/filters/SVGFEBlend.h: Removed.
3483         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp: Removed.
3484         * platform/graphics/svg/filters/SVGFEColorMatrix.h: Removed.
3485         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp: Removed.
3486         * platform/graphics/svg/filters/SVGFEComponentTransfer.h: Removed.
3487         * platform/graphics/svg/filters/SVGFEComposite.cpp: Removed.
3488         * platform/graphics/svg/filters/SVGFEComposite.h: Removed.
3489         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp: Removed.
3490         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h: Removed.
3491         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp: Removed.
3492         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h: Removed.
3493         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp: Removed.
3494         * platform/graphics/svg/filters/SVGFEDisplacementMap.h: Removed.
3495         * platform/graphics/svg/filters/SVGFEFlood.cpp: Removed.
3496         * platform/graphics/svg/filters/SVGFEFlood.h: Removed.
3497         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp: Removed.
3498         * platform/graphics/svg/filters/SVGFEGaussianBlur.h: Removed.
3499         * platform/graphics/svg/filters/SVGFEImage.cpp: Removed.
3500         * platform/graphics/svg/filters/SVGFEImage.h: Removed.
3501         * platform/graphics/svg/filters/SVGFEMerge.cpp: Removed.
3502         * platform/graphics/svg/filters/SVGFEMerge.h: Removed.
3503         * platform/graphics/svg/filters/SVGFEMorphology.cpp: Removed.
3504         * platform/graphics/svg/filters/SVGFEMorphology.h: Removed.
3505         * platform/graphics/svg/filters/SVGFEOffset.cpp: Removed.
3506         * platform/graphics/svg/filters/SVGFEOffset.h: Removed.
3507         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp: Removed.
3508         * platform/graphics/svg/filters/SVGFESpecularLighting.h: Removed.
3509         * platform/graphics/svg/filters/SVGFETile.h: Removed.
3510         * platform/graphics/svg/filters/SVGFETurbulence.cpp: Removed.
3511         * platform/graphics/svg/filters/SVGFETurbulence.h: Removed.
3512         * platform/graphics/svg/filters/SVGFilterEffect.cpp: Removed.
3513         * platform/graphics/svg/filters/SVGFilterEffect.h: Removed.
3514         * platform/graphics/svg/filters/SVGLightSource.cpp: Removed.
3515         * platform/graphics/svg/filters/SVGLightSource.h: Removed.
3516         * platform/graphics/svg/filters/SVGPointLightSource.h: Removed.
3517         * platform/graphics/svg/filters/SVGSpotLightSource.h: Removed.
3518         * platform/graphics/svg/filters/cg: Removed.
3519         * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm: Removed.
3520         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm: Removed.
3521         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm: Removed.
3522         * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm: Removed.
3523         * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm: Removed.
3524         * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm: Removed.