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