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