ee5a06a273d63b7252cb6496166462e0728a4ffe
[WebKit-https.git] / WebCore / ChangeLog
1 2009-01-19  Steve Falkenburg  <sfalken@apple.com>
2
3         Fix Windows release build.
4         Move SVG files into all-in-one file for Windows build.
5
6         * WebCore.vcproj/WebCore.vcproj:
7         * svg/SVGAllInOne.cpp: Added.
8
9 2009-01-19  Steve Falkenburg  <sfalken@apple.com>
10
11         Partial build fix.
12         Move new derived sources into all-in-one DerivedSources.cpp
13
14         * DerivedSources.cpp:
15         * WebCore.vcproj/WebCore.vcproj:
16
17 2009-01-19  Sam Weinig  <sam@webkit.org>
18
19         Fix Qt build.
20
21         * bridge/qt/qt_instance.cpp:
22         (JSC::Bindings::QtInstance::mark):
23         * bridge/qt/qt_runtime.cpp:
24         (JSC::Bindings::valueRealType):
25         (JSC::Bindings::convertValueToQVariant):
26         (JSC::Bindings::QtRuntimeConnectionMethod::call):
27         (JSC::Bindings::QtConnectionObject::execute):
28
29 2009-01-19  Sam Weinig  <sam@webkit.org>
30
31         Fix wx build.
32
33         * plugins/PluginView.cpp:
34         (WebCore::getString):
35
36 2009-01-19  Sam Weinig  <sam@webkit.org>
37
38         Rubber-stamped by Gavin Barraclough.
39
40         Remove temporary operator-> from JSValuePtr.
41
42         * WebCore.xcodeproj/project.pbxproj:
43         * bindings/js/JSAudioConstructor.cpp:
44         (WebCore::constructAudio):
45         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
46         (WebCore::toHTMLCanvasStyle):
47         (WebCore::JSCanvasRenderingContext2D::setFillColor):
48         (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
49         (WebCore::JSCanvasRenderingContext2D::strokeRect):
50         (WebCore::JSCanvasRenderingContext2D::drawImage):
51         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
52         (WebCore::JSCanvasRenderingContext2D::setShadow):
53         (WebCore::JSCanvasRenderingContext2D::createPattern):
54         (WebCore::JSCanvasRenderingContext2D::putImageData):
55         (WebCore::JSCanvasRenderingContext2D::fillText):
56         (WebCore::JSCanvasRenderingContext2D::strokeText):
57         * bindings/js/JSClipboardCustom.cpp:
58         (WebCore::JSClipboard::clearData):
59         (WebCore::JSClipboard::getData):
60         (WebCore::JSClipboard::setData):
61         (WebCore::JSClipboard::setDragImage):
62         * bindings/js/JSCustomPositionCallback.cpp:
63         (WebCore::JSCustomPositionCallback::handleEvent):
64         * bindings/js/JSCustomPositionErrorCallback.cpp:
65         (WebCore::JSCustomPositionErrorCallback::handleEvent):
66         * bindings/js/JSCustomSQLStatementCallback.cpp:
67         (WebCore::JSCustomSQLStatementCallback::handleEvent):
68         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
69         (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
70         * bindings/js/JSCustomSQLTransactionCallback.cpp:
71         (WebCore::JSCustomSQLTransactionCallback::handleEvent):
72         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
73         (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
74         * bindings/js/JSCustomVoidCallback.cpp:
75         (WebCore::JSCustomVoidCallback::handleEvent):
76         (WebCore::toVoidCallback):
77         * bindings/js/JSCustomXPathNSResolver.cpp:
78         (WebCore::JSCustomXPathNSResolver::create):
79         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
80         * bindings/js/JSDOMApplicationCacheCustom.cpp:
81         (WebCore::JSDOMApplicationCache::hasItem):
82         (WebCore::JSDOMApplicationCache::add):
83         (WebCore::JSDOMApplicationCache::remove):
84         (WebCore::JSDOMApplicationCache::addEventListener):
85         (WebCore::JSDOMApplicationCache::removeEventListener):
86         * bindings/js/JSDOMBinding.cpp:
87         (WebCore::valueToStringWithNullCheck):
88         (WebCore::valueToStringWithUndefinedOrNullCheck):
89         (WebCore::reportException):
90         * bindings/js/JSDOMGlobalObject.cpp:
91         (WebCore::JSDOMGlobalObject::findJSEventListener):
92         (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
93         (WebCore::JSDOMGlobalObject::findJSUnprotectedEventListener):
94         (WebCore::JSDOMGlobalObject::findOrCreateJSUnprotectedEventListener):
95         * bindings/js/JSDOMStringListCustom.cpp:
96         (WebCore::JSDOMStringList::item):
97         * bindings/js/JSDOMWindowBase.cpp:
98         (WebCore::JSDOMWindowBase::getOwnPropertySlot):
99         (windowProtoFuncOpen):
100         (WebCore::toJSDOMWindow):
101         * bindings/js/JSDOMWindowCustom.cpp:
102         (WebCore::JSDOMWindow::setLocation):
103         (WebCore::JSDOMWindow::postMessage):
104         (WebCore::setTimeoutOrInterval):
105         (WebCore::JSDOMWindow::clearTimeout):
106         (WebCore::JSDOMWindow::clearInterval):
107         (WebCore::JSDOMWindow::atob):
108         (WebCore::JSDOMWindow::btoa):
109         (WebCore::JSDOMWindow::addEventListener):
110         (WebCore::JSDOMWindow::removeEventListener):
111         (WebCore::toDOMWindow):
112         * bindings/js/JSDatabaseCustom.cpp:
113         (WebCore::JSDatabase::changeVersion):
114         (WebCore::JSDatabase::transaction):
115         * bindings/js/JSDocumentCustom.cpp:
116         (WebCore::JSDocument::setLocation):
117         * bindings/js/JSElementCustom.cpp:
118         (WebCore::JSElement::setAttribute):
119         (WebCore::JSElement::setAttributeNS):
120         * bindings/js/JSEventListener.cpp:
121         (WebCore::JSAbstractEventListener::handleEvent):
122         (WebCore::JSLazyEventListener::parseCode):
123         * bindings/js/JSEventTargetNodeCustom.cpp:
124         (WebCore::JSEventTargetNode::addEventListener):
125         (WebCore::JSEventTargetNode::removeEventListener):
126         * bindings/js/JSGeolocationCustom.cpp:
127         (WebCore::createPositionOptions):
128         (WebCore::JSGeolocation::getCurrentPosition):
129         (WebCore::JSGeolocation::watchPosition):
130         * bindings/js/JSHTMLCollectionCustom.cpp:
131         (WebCore::callHTMLCollection):
132         (WebCore::JSHTMLCollection::canGetItemsForName):
133         (WebCore::JSHTMLCollection::item):
134         (WebCore::JSHTMLCollection::namedItem):
135         * bindings/js/JSHTMLDocumentCustom.cpp:
136         (WebCore::JSHTMLDocument::open):
137         (WebCore::writeHelper):
138         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
139         (WebCore::JSHTMLOptionsCollection::setLength):
140         (WebCore::JSHTMLOptionsCollection::add):
141         * bindings/js/JSHTMLSelectElementCustom.cpp:
142         (WebCore::JSHTMLSelectElement::remove):
143         (WebCore::selectIndexSetter):
144         * bindings/js/JSImageConstructor.cpp:
145         (WebCore::constructImage):
146         * bindings/js/JSInspectedObjectWrapper.cpp:
147         (WebCore::JSInspectedObjectWrapper::wrap):
148         (WebCore::JSInspectedObjectWrapper::prepareIncomingValue):
149         * bindings/js/JSInspectorCallbackWrapper.cpp:
150         (WebCore::JSInspectorCallbackWrapper::wrap):
151         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
152         (WebCore::JSJavaScriptCallFrame::evaluate):
153         * bindings/js/JSLocationCustom.cpp:
154         (WebCore::JSLocation::setHref):
155         (WebCore::JSLocation::setProtocol):
156         (WebCore::JSLocation::setHost):
157         (WebCore::JSLocation::setHostname):
158         (WebCore::JSLocation::setPort):
159         (WebCore::JSLocation::setPathname):
160         (WebCore::JSLocation::setSearch):
161         (WebCore::JSLocation::setHash):
162         (WebCore::JSLocation::replace):
163         (WebCore::JSLocation::assign):
164         * bindings/js/JSMessageChannelConstructor.cpp:
165         (WebCore::JSMessageChannelConstructor::mark):
166         * bindings/js/JSMessagePortCustom.cpp:
167         (WebCore::JSMessagePort::startConversation):
168         (WebCore::JSMessagePort::addEventListener):
169         (WebCore::JSMessagePort::removeEventListener):
170         * bindings/js/JSNodeFilterCondition.cpp:
171         (WebCore::JSNodeFilterCondition::mark):
172         (WebCore::JSNodeFilterCondition::acceptNode):
173         * bindings/js/JSNodeFilterCondition.h:
174         * bindings/js/JSNodeFilterCustom.cpp:
175         (WebCore::toNodeFilter):
176         * bindings/js/JSNodeListCustom.cpp:
177         (WebCore::callNodeList):
178         * bindings/js/JSOptionConstructor.cpp:
179         (WebCore::constructHTMLOptionElement):
180         * bindings/js/JSQuarantinedObjectWrapper.cpp:
181         (WebCore::JSQuarantinedObjectWrapper::asWrapper):
182         (WebCore::JSQuarantinedObjectWrapper::construct):
183         * bindings/js/JSSQLResultSetRowListCustom.cpp:
184         (WebCore::JSSQLResultSetRowList::item):
185         * bindings/js/JSSQLTransactionCustom.cpp:
186         (WebCore::JSSQLTransaction::executeSql):
187         * bindings/js/JSSVGElementInstanceCustom.cpp:
188         (WebCore::JSSVGElementInstance::addEventListener):
189         (WebCore::JSSVGElementInstance::removeEventListener):
190         * bindings/js/JSSVGLengthCustom.cpp:
191         (WebCore::JSSVGLength::convertToSpecifiedUnits):
192         * bindings/js/JSSVGMatrixCustom.cpp:
193         (WebCore::JSSVGMatrix::translate):
194         (WebCore::JSSVGMatrix::scale):
195         (WebCore::JSSVGMatrix::scaleNonUniform):
196         (WebCore::JSSVGMatrix::rotate):
197         (WebCore::JSSVGMatrix::rotateFromVector):
198         (WebCore::JSSVGMatrix::skewX):
199         (WebCore::JSSVGMatrix::skewY):
200         * bindings/js/JSSVGPathSegListCustom.cpp:
201         (WebCore::JSSVGPathSegList::getItem):
202         (WebCore::JSSVGPathSegList::insertItemBefore):
203         (WebCore::JSSVGPathSegList::replaceItem):
204         (WebCore::JSSVGPathSegList::removeItem):
205         * bindings/js/JSSVGPointListCustom.cpp:
206         (WebCore::JSSVGPointList::getItem):
207         (WebCore::JSSVGPointList::insertItemBefore):
208         (WebCore::JSSVGPointList::replaceItem):
209         (WebCore::JSSVGPointList::removeItem):
210         * bindings/js/JSSVGTransformListCustom.cpp:
211         (WebCore::JSSVGTransformList::getItem):
212         (WebCore::JSSVGTransformList::insertItemBefore):
213         (WebCore::JSSVGTransformList::replaceItem):
214         (WebCore::JSSVGTransformList::removeItem):
215         * bindings/js/JSStorageCustom.cpp:
216         (WebCore::JSStorage::deleteProperty):
217         (WebCore::JSStorage::customPut):
218         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
219         (WebCore::constructWebKitCSSMatrix):
220         * bindings/js/JSWorkerConstructor.cpp:
221         (WebCore::constructWorker):
222         * bindings/js/JSWorkerContextCustom.cpp:
223         (WebCore::JSWorkerContext::addEventListener):
224         (WebCore::JSWorkerContext::removeEventListener):
225         * bindings/js/JSWorkerCustom.cpp:
226         (WebCore::JSWorker::addEventListener):
227         (WebCore::JSWorker::removeEventListener):
228         * bindings/js/JSXMLHttpRequestCustom.cpp:
229         (WebCore::JSXMLHttpRequest::open):
230         (WebCore::JSXMLHttpRequest::setRequestHeader):
231         (WebCore::JSXMLHttpRequest::send):
232         (WebCore::JSXMLHttpRequest::getResponseHeader):
233         (WebCore::JSXMLHttpRequest::overrideMimeType):
234         (WebCore::JSXMLHttpRequest::addEventListener):
235         (WebCore::JSXMLHttpRequest::removeEventListener):
236         * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
237         (WebCore::JSXMLHttpRequestUpload::addEventListener):
238         (WebCore::JSXMLHttpRequestUpload::removeEventListener):
239         * bindings/js/JSXSLTProcessorCustom.cpp:
240         (WebCore::JSXSLTProcessor::importStylesheet):
241         (WebCore::JSXSLTProcessor::transformToFragment):
242         (WebCore::JSXSLTProcessor::transformToDocument):
243         (WebCore::JSXSLTProcessor::setParameter):
244         (WebCore::JSXSLTProcessor::getParameter):
245         (WebCore::JSXSLTProcessor::removeParameter):
246         * bindings/js/ScheduledAction.cpp:
247         (WebCore::ScheduledAction::executeFunctionInContext):
248         * bindings/js/ScriptCallStack.cpp:
249         (WebCore::ScriptCallStack::initialize):
250         * bindings/js/ScriptController.cpp:
251         (WebCore::ScriptController::createScriptObjectForPluginElement):
252         * bindings/js/ScriptValue.cpp:
253         (WebCore::ScriptValue::getString):
254         (WebCore::ScriptValue::isNull):
255         (WebCore::ScriptValue::isUndefined):
256         * bindings/objc/WebScriptObject.mm:
257         (-[WebScriptObject callWebScriptMethod:withArguments:]):
258         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
259         * bindings/scripts/CodeGeneratorJS.pm:
260         * bridge/NP_jsobject.cpp:
261         (_NPN_InvokeDefault):
262         (_NPN_Invoke):
263         (_NPN_HasMethod):
264         (_NPN_Construct):
265         * bridge/c/c_utility.cpp:
266         (JSC::Bindings::convertValueToNPVariant):
267         * bridge/jni/jni_instance.cpp:
268         (JavaInstance::invokeMethod):
269         * bridge/jni/jni_jsobject.mm:
270         (JavaJSObject::call):
271         (JavaJSObject::convertValueToJObject):
272         * bridge/jni/jni_runtime.cpp:
273         (JavaField::dispatchValueFromInstance):
274         (JavaField::valueFromInstance):
275         (JavaField::dispatchSetValueToInstance):
276         (JavaField::setValueToInstance):
277         * bridge/jni/jni_utility.cpp:
278         (JSC::Bindings::convertArrayInstanceToJavaArray):
279         (JSC::Bindings::convertValueToJValue):
280         * bridge/objc/objc_runtime.mm:
281         (JSC::Bindings::callObjCFallbackObject):
282         * bridge/objc/objc_utility.mm:
283         (JSC::Bindings::convertValueToObjcValue):
284         * bridge/runtime_method.cpp:
285         (JSC::callRuntimeMethod):
286         * bridge/runtime_object.cpp:
287         (JSC::RuntimeObjectImp::getOwnPropertySlot):
288         (JSC::callRuntimeConstructor):
289
290 2009-01-20  Gustavo Noronha Silva  <gns@gnome.org>
291
292          Reviewed by Mark Rowe.
293
294          https://bugs.webkit.org/show_bug.cgi?id=23419
295          removal of FramePrivate.h breaks GTK+'s make dist
296
297          * GNUmakefile.am: No longer mention FramePrivate.h in our build,
298          since it was removed.
299
300 2009-01-20  Alexander V. Butenko  <alex@digiqube.com>
301
302         Reviewed by Holger Freyther.
303
304         http://bugs.webkit.org/show_bug.cgi?id=23116
305         [GTK] Fix crash due a callback called from GIO after the
306         destruction of the ResourceHandle
307
308         * platform/network/soup/ResourceHandleSoup.cpp:
309         (WebCore::ResourceHandle::cancel): Only call didFinishLoading if
310         'client' is set, otherwise cancelling a load could lead to a crash.
311
312 2009-01-19  Simon Fraser  <simon.fraser@apple.com>
313
314         Build fix: remove duplicate entries in the Xcode project, and
315         sort the project with sort-Xcode-project-file .
316         
317         * WebCore.xcodeproj/project.pbxproj:
318
319 2009-01-19  Simon Fraser  <simon.fraser@apple.com>
320
321         Reviewed by Dave Hyatt
322
323         https://bugs.webkit.org/show_bug.cgi?id=18078
324
325         Support animations and transitions of shorthand properties by creating
326         PropertyWrappers that simply wrap a vector of atomic wrappers, and implement
327         equal() and blend(). Build that collection of shorthand wrappers using the
328         shorthand map that CSSMutableStyleDeclaration already has. Skip comparing these
329         shorthand wrappers during 'all' transitions.
330
331         * GNUmakefile.am:
332         * WebCore.pro:
333         * WebCore.scons:
334         * WebCore.vcproj/WebCore.vcproj:
335         * WebCore.xcodeproj/project.pbxproj:
336         * WebCoreSources.bkl:
337         Add CSSPropertyLonghand.h/cpp.
338         
339         * css/CSSMutableStyleDeclaration.cpp:
340         (WebCore::CSSMutableStyleDeclaration::removeShorthandProperty):
341         Move CSSPropertyLonghand to its own file.
342         
343         * css/CSSPropertyLonghand.cpp: Added.
344         (WebCore::initShorthandMap):
345         (WebCore::longhandForProperty):
346         * css/CSSPropertyLonghand.h: Added.
347         (WebCore::CSSPropertyLonghand::CSSPropertyLonghand):
348         (WebCore::CSSPropertyLonghand::properties):
349         (WebCore::CSSPropertyLonghand::length):
350         Code moved from CSSMutableStyleDeclaration.h/cpp
351
352         * page/animation/AnimationBase.cpp:
353         (WebCore::PropertyWrapperBase::isShorthandWrapper):
354         (WebCore::ShorthandPropertyWrapper::ShorthandPropertyWrapper):
355         (WebCore::ShorthandPropertyWrapper::isShorthandWrapper):
356         (WebCore::ShorthandPropertyWrapper::equals):
357         (WebCore::ShorthandPropertyWrapper::blend):
358         Add a wrapper class for shorthand properties that simply wraps an
359         array of atomic property wrappers.
360
361         (WebCore::ensurePropertyMap):
362         (WebCore::addPropertyWrapper):
363         (WebCore::addShorthandProperties):
364         (WebCore::wrapperForProperty):
365         (WebCore::AnimationBase::propertiesEqual):
366         (WebCore::AnimationBase::getPropertyAtIndex):
367         Some minor refactoring to re-use wrapperForProperty(), and ensure that gPropertyWrapperMap
368         is filled with an invalid index (-1), not 0.
369
370         (WebCore::AnimationBase::blendProperties):
371         * page/animation/AnimationBase.h:
372         * page/animation/CompositeAnimation.cpp:
373         (WebCore::CompositeAnimationPrivate::updateTransitions):
374         When doing 'all' transitions, skip shorthand wrappers, since 'all' transitions
375         just need to compare all the atomic property wrappers.
376
377 2009-01-19  Oliver Hunt  <oliver@apple.com>
378
379         Reviewed by NOBODY (Build fix).
380
381         Actually add the new header.
382
383         * dom/GenericWorkerTask.h: Added.
384
385 2009-01-19  David Levin  <levin@chromium.org>
386
387         Reviewed by Alexey Proskuryakov.
388
389         https://bugs.webkit.org/show_bug.cgi?id=22720
390
391         Provide a generic class to handle the pattern of task callbacks across worker/parent threads.  It
392         only works for methods that need 6 parameters but similar classes could be added as needed for
393         other numbers of parameters.
394
395         Add addMessage and resourceRetrievedByXMLHttpRequest to ScriptExecutionContext.
396
397         Use these methods and others to remove document() from XMLHttpRequest in a few more places.
398
399         No observable change in behavior, so no test.
400
401         * GNUmakefile.am:
402         * WebCore.vcproj/WebCore.vcproj:
403         * WebCore.xcodeproj/project.pbxproj:
404         Sorted project file while adding GenericWorkerTask.h
405
406         * bindings/js/ScriptString.h:
407         (WebCore::ScriptString::operator=):
408         (WebCore::ScriptString::operator+=):
409         (WebCore::ScriptString::operator==):
410         (WebCore::ScriptString::operator!=):
411         Removed unnecessary JSLock.
412
413         * dom/Document.cpp:
414         (WebCore::Document::addMessage):
415         (WebCore::Document::resourceRetrievedByXMLHttpRequest):
416         * dom/Document.h:
417         * dom/GenericWorkerTask.h: Added.
418         (WebCore::GenericWorkerTaskBase::GenericWorkerTaskBase):
419         (WebCore::GenericWorkerTaskBase::canPerformTask):
420         (WebCore::GenericWorkerTask6::create):
421         (WebCore::GenericWorkerTask6::GenericWorkerTask6):
422         (WebCore::GenericWorkerTask6::performTask):
423         (WebCore::createCallbackTask):
424         * dom/ScriptExecutionContext.h:
425         * dom/WorkerContext.cpp:
426         (WebCore::addMessageTask):
427         (WebCore::WorkerContext::addMessage):
428         (WebCore::WorkerContext::resourceRetrievedByXMLHttpRequest):
429         (WebCore::WorkerContext::postTaskToParentContext):
430         * dom/WorkerContext.h:
431         * dom/WorkerMessagingProxy.cpp:
432         (WebCore::WorkerMessagingProxy::postTaskToParentContext):
433         * dom/WorkerMessagingProxy.h:
434         * dom/WorkerThread.h:
435         * xml/XMLHttpRequest.cpp:
436         (WebCore::XMLHttpRequest::XMLHttpRequest):
437         (WebCore::XMLHttpRequest::dropProtection):
438         (WebCore::reportUnsafeUsage):
439         (WebCore::XMLHttpRequest::setRequestHeader):
440         (WebCore::XMLHttpRequest::getResponseHeader):
441         (WebCore::XMLHttpRequest::didFinishLoading):
442         * xml/XMLHttpRequest.h:
443         (WebCore::XMLHttpRequest::create):
444
445
446 2009-01-19  Chris Fleizach  <cfleizach@apple.com>
447
448         Reviewed by Beth Dakin.
449
450         Bug 23422: AX: AXLinks should expose access key information
451         https://bugs.webkit.org/show_bug.cgi?id=23422
452
453         Test: accessibility/accesskey.html
454
455         * page/mac/AccessibilityObjectWrapper.mm:
456         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
457         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
458
459 2009-01-19  Alexey Proskuryakov  <ap@webkit.org>
460
461         Reviewed by Anders Carlsson.
462
463         https://bugs.webkit.org/show_bug.cgi?id=23417
464         Implement application cache obsolete state
465
466         Test: http/tests/appcache/remove-cache.html
467
468         * bindings/js/JSDOMApplicationCacheCustom.cpp:
469         (WebCore::JSDOMApplicationCache::mark):
470         * dom/EventNames.h:
471         * loader/appcache/DOMApplicationCache.h:
472         (WebCore::DOMApplicationCache::Status):
473         (WebCore::DOMApplicationCache::setOnobsolete):
474         (WebCore::DOMApplicationCache::onobsolete):
475         * loader/appcache/DOMApplicationCache.idl:
476         Added "obsolete" event and status.
477
478         * loader/appcache/ApplicationCacheGroup.h:
479         (WebCore::ApplicationCacheGroup::savedNewestCachePointer): Removed, there is no longer
480         any need to track what the newest cache was during teardown.
481         (WebCore::ApplicationCacheGroup::updateStatus): Renamed Status to UpdateStatus, reducing
482         confusion with cache group lifecycle status.
483         (WebCore::ApplicationCacheGroup::m_isObsolete): Added an obsolete state flag.
484
485         * loader/appcache/ApplicationCacheGroup.cpp:
486         (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): Initialize m_isObsolete.
487         (WebCore::ApplicationCacheGroup::cacheForMainRequest): Assert that the returned cache does
488         not belong to an obsolete group.
489         (WebCore::ApplicationCacheGroup::fallbackCacheForMainRequest): Ditto.
490         (WebCore::ApplicationCacheGroup::disassociateDocumentLoader): Disassociation can now happen
491         via a JS swapCache() call, not only when the loader is destroyed.
492         (WebCore::ApplicationCacheGroup::cacheDestroyed): Don't track m_savedNewestCachePointer.
493         (WebCore::ApplicationCacheGroup::setNewestCache): Remove old newest cache from storage is
494         a caller responsibility, because this method is also used when loading caches from disk.
495         (WebCore::ApplicationCacheGroup::makeObsolete): Added. Mark the cache group as obsolete, and
496         inform cache storage, so that it could be removed.
497         (WebCore::ApplicationCacheGroup::didFailToLoadManifest): Removed, as all this method did
498         was call cacheUpdateFailed().
499         (WebCore::ApplicationCacheGroup::didReceiveResponse): Added a FIXME about correct failure
500         handing.
501         (WebCore::ApplicationCacheGroup::didFail): Ditto.
502         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse): Call a new manifestNotFound()
503         method for 404 and 410 responses.
504         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): Call cacheUpdateFailed()
505         directly, instead of the removed didFailToLoadManifest().
506         (WebCore::ApplicationCacheGroup::manifestNotFound): Implement "remove a cache" algorithm.
507         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): Remove superceded cache from storage
508         after update successfully finishes (moved from setNewestCache()).
509         (WebCore::ApplicationCacheGroup::associateDocumentLoaderWithCache): Revive the group using
510         an explicitly passed pointer, without the need to save it during teardown.
511
512         * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::~DocumentLoader):
513         Call the general ApplicationCacheGroup::disassociateDocumentLoader() method.
514
515         * loader/appcache/ApplicationCacheStorage.h: Added a cacheGroupMadeObsolete() method, updated
516         some comments.
517
518         * loader/appcache/ApplicationCacheStorage.cpp:
519         (WebCore::ApplicationCacheStorage::cacheGroupForURL): Assert that iterated caches are not
520         obsolete.
521         (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL): Ditto.
522         (WebCore::ApplicationCacheStorage::cacheGroupDestroyed): Don't do anything for obsolete
523         groups, as they cannot be in storage.
524         (WebCore::ApplicationCacheStorage::cacheGroupMadeObsolete): Remove the cache group from storage
525         completely, so that a new one could replace it, if necessary.
526         (WebCore::ApplicationCacheStorage::storeNewestCache): Added assertions.
527         (WebCore::ApplicationCacheStorage::remove): Remove cache group if its newest cache is removed.
528
529         * loader/appcache/DOMApplicationCache.cpp:
530         (WebCore::DOMApplicationCache::status): Added support for OBSOLETE state.
531         (WebCore::DOMApplicationCache::swapCache): Disassociate document loader from cache if the
532         application was removed server-side.
533         (WebCore::DOMApplicationCache::callObsoleteListener): Added support for obsolete event.
534
535         * loader/appcache/DOMApplicationCache.h:
536         (WebCore::DOMApplicationCache::Status):
537         (WebCore::DOMApplicationCache::setOnobsolete):
538         (WebCore::DOMApplicationCache::onobsolete):
539         Added support for OBSOLETE state and obsolete event.
540
541         * loader/appcache/DOMApplicationCache.idl: Ditto.
542
543 2009-01-19  Anders Carlsson  <andersca@apple.com>
544
545         Reviewed by Kevin Decker.
546
547         Allow plug-in views to return an instance directly.
548         
549         * bindings/js/ScriptControllerMac.mm:
550         (WebCore::ScriptController::createScriptInstanceForWidget):
551
552 2009-01-19  Chris Fleizach  <cfleizach@apple.com>
553
554         Reviewed by David Hyatt.
555
556         AX: some buttons don't expose AXPress as an action
557         https://bugs.webkit.org/show_bug.cgi?id=23399
558
559         Test: accessibility/button-press-action.html
560
561         * page/AccessibilityRenderObject.cpp:
562         (WebCore::AccessibilityRenderObject::actionElement):
563
564 2009-01-19  Adam Roben  <aroben@apple.com>
565
566         Windows build fix
567
568         * WebCore.vcproj/WebCore.vcproj: Copy headers from page/animation into
569         $WebKitOutputDir so that WebKit can access them.
570
571         * html/HTMLBaseFontElement.cpp: Touched this file to cause a rebuild
572         and header copy.
573
574 2009-01-19  Ariya Hidayat  <ariya.hidayat@trolltech.com>
575
576         Reviewed by Simon Hausmann.
577
578         http://www.qtsoftware.com/developer/task-tracker/index_html?id=211228&method=entry
579
580         [Qt] Show focus rect when a button gets the focus for the first time.
581         This is important at least for Windows style.
582
583         * platform/qt/RenderThemeQt.cpp:
584         (WebCore::RenderThemeQt::applyTheme):
585
586 2009-01-19  Ariya Hidayat  <ariya.hidayat@trolltech.com>
587
588         [Qt] Build fix after r39971.
589
590         * platform/qt/LoggingQt.cpp:
591         (WebCore::InitializeLoggingChannelsIfNecessary):
592
593 2009-01-18  Sam Weinig  <sam@webkit.org>
594
595         Reviewed by Cameron Zwarich.
596
597         Fix for https://bugs.webkit.org/show_bug.cgi?id=23415
598         Remove FramePrivate
599
600         Minor PLT speedup.
601
602         * WebCore.base.exp:
603         * WebCore.vcproj/WebCore.vcproj:
604         * WebCore.xcodeproj/project.pbxproj:
605         * loader/FrameLoader.cpp:
606         * page/Frame.cpp:
607         (WebCore::Frame::Frame):
608         (WebCore::Frame::~Frame):
609         (WebCore::Frame::init):
610         (WebCore::Frame::loader):
611         (WebCore::Frame::view):
612         (WebCore::Frame::setView):
613         (WebCore::Frame::script):
614         (WebCore::Frame::document):
615         (WebCore::Frame::setDocument):
616         (WebCore::Frame::settings):
617         (WebCore::Frame::selection):
618         (WebCore::Frame::editor):
619         (WebCore::Frame::selectionGranularity):
620         (WebCore::Frame::setSelectionGranularity):
621         (WebCore::Frame::dragCaretController):
622         (WebCore::Frame::animation):
623         (WebCore::Frame::mark):
624         (WebCore::Frame::setMark):
625         (WebCore::Frame::setCaretVisible):
626         (WebCore::Frame::clearCaretRectIfNeeded):
627         (WebCore::Frame::selectionLayoutChanged):
628         (WebCore::Frame::caretBlinkTimerFired):
629         (WebCore::Frame::paintCaret):
630         (WebCore::Frame::paintDragCaret):
631         (WebCore::Frame::zoomFactor):
632         (WebCore::Frame::isZoomFactorTextOnly):
633         (WebCore::Frame::shouldApplyTextZoom):
634         (WebCore::Frame::shouldApplyPageZoom):
635         (WebCore::Frame::setZoomFactor):
636         (WebCore::Frame::setPrinting):
637         (WebCore::Frame::setJSStatusBarText):
638         (WebCore::Frame::setJSDefaultStatusBarText):
639         (WebCore::Frame::jsStatusBarText):
640         (WebCore::Frame::jsDefaultStatusBarText):
641         (WebCore::Frame::setNeedsReapplyStyles):
642         (WebCore::Frame::needsReapplyStyles):
643         (WebCore::Frame::reapplyStyles):
644         (WebCore::Frame::isContentEditable):
645         (WebCore::Frame::updateSecureKeyboardEntryIfActive):
646         (WebCore::Frame::typingStyle):
647         (WebCore::Frame::setTypingStyle):
648         (WebCore::Frame::clearTypingStyle):
649         (WebCore::Frame::computeAndSetTypingStyle):
650         (WebCore::Frame::selectionComputedStyle):
651         (WebCore::Frame::applyEditingStyleToBodyElement):
652         (WebCore::Frame::removeEditingStyleFromBodyElement):
653         (WebCore::Frame::keepAlive):
654         (WebCore::Frame::cancelAllKeepAlive):
655         (WebCore::Frame::clearDOMWindow):
656         (WebCore::Frame::ownerElement):
657         (WebCore::Frame::ownerRenderer):
658         (WebCore::Frame::isDisconnected):
659         (WebCore::Frame::setIsDisconnected):
660         (WebCore::Frame::excludeFromTextSearch):
661         (WebCore::Frame::setExcludeFromTextSearch):
662         (WebCore::Frame::selectionBounds):
663         (WebCore::Frame::selectionTextRects):
664         (WebCore::Frame::isFrameSet):
665         (WebCore::Frame::currentForm):
666         (WebCore::Frame::forceLayout):
667         (WebCore::Frame::sendScrollEvent):
668         (WebCore::Frame::clearTimers):
669         (WebCore::Frame::styleForSelectionStart):
670         (WebCore::Frame::inViewSourceMode):
671         (WebCore::Frame::setInViewSourceMode):
672         (WebCore::Frame::markAllMatchesForText):
673         (WebCore::Frame::markedTextMatchesAreHighlighted):
674         (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
675         (WebCore::Frame::tree):
676         (WebCore::Frame::setDOMWindow):
677         (WebCore::Frame::domWindow):
678         (WebCore::Frame::clearFormerDOMWindow):
679         (WebCore::Frame::page):
680         (WebCore::Frame::eventHandler):
681         (WebCore::Frame::pageDestroyed):
682         (WebCore::Frame::disconnectOwnerElement):
683         (WebCore::Frame::documentAtPoint):
684         * page/Frame.h:
685         * page/FramePrivate.h: Removed.
686         * page/FrameTree.h:
687         * page/chromium/FrameChromium.cpp:
688         * page/mac/FrameMac.mm:
689         (WebCore::Frame::imageFromRect):
690         (WebCore::Frame::selectionImage):
691         (WebCore::Frame::snapshotDragImage):
692         (WebCore::Frame::nodeImage):
693         (WebCore::Frame::setUserStyleSheetLocation):
694         (WebCore::Frame::setUserStyleSheet):
695         * page/qt/FrameQt.cpp:
696         (WebCore::Frame::setUserStyleSheetLocation):
697         (WebCore::Frame::setUserStyleSheet):
698         * page/win/FrameCGWin.cpp:
699         (WebCore::Frame::nodeImage):
700         * page/win/FrameWin.cpp:
701
702 2009-01-18  Eric Carlson  <eric.carlson@apple.com>
703
704         Build fix for !ENABLE(VIDEO) following r40016. 
705
706         * rendering/RenderSlider.cpp:
707         (WebCore::RenderSlider::mouseEventIsInThumb):
708
709 2009-01-17  Steve Falkenburg  <sfalken@apple.com>
710
711         Build fix.
712
713 2009-01-17  David Hyatt  <hyatt@apple.com>
714
715         Optimize isTextNode() the same way isElementNode() was optimized in an earlier checkin.  isTextNode()
716         on Node is now non-virtual and just checks a bit that is set at construction time by Text.
717
718         Reviewed by Sam Weinig
719
720         * dom/CharacterData.cpp:
721         (WebCore::CharacterData::CharacterData):
722         * dom/CharacterData.h:
723         * dom/EventTargetNode.cpp:
724         (WebCore::EventTargetNode::EventTargetNode):
725         * dom/EventTargetNode.h:
726         * dom/Node.cpp:
727         (WebCore::Node::Node):
728         * dom/Node.h:
729         (WebCore::Node::isTextNode):
730         (WebCore::Node::isAttributeNode):
731         * dom/Text.cpp:
732         (WebCore::Text::Text):
733         * dom/Text.h:
734
735 2009-01-17  David Hyatt  <hyatt@apple.com>
736
737         Change how backslashAsCurrencySymbol() works.  Instead of forcing call sites to do the direct
738         replacement themselves, the exact transformation is instead done by the encoding (indirectly through
739         a method on Document).
740
741         These changes allow the fast case (where no replacement is needed) checks to be completely inlined for
742         a slight speedup, and also allow encodings to do future alterations to displayed string content without
743         having to patch call sites again.
744
745         Reviewed by Oliver Hunt
746
747         * WebCore.base.exp:
748         * dom/Document.cpp:
749         * dom/Document.h:
750         (WebCore::Document::displayStringModifiedByEncoding):
751         (WebCore::Document::displayBufferModifiedByEncoding):
752         * editing/Editor.cpp:
753         (WebCore::Editor::addToKillRing):
754         * editing/TextIterator.cpp:
755         (WebCore::plainTextToMallocAllocatedBuffer):
756         (WebCore::plainText):
757         * editing/TextIterator.h:
758         * html/HTMLOptGroupElement.cpp:
759         (WebCore::HTMLOptGroupElement::groupLabelText):
760         * html/HTMLOptionElement.cpp:
761         (WebCore::HTMLOptionElement::text):
762         * loader/DocumentLoader.cpp:
763         (WebCore::canonicalizedTitle):
764         * page/Chrome.cpp:
765         (WebCore::displayString):
766         (WebCore::Chrome::runJavaScriptAlert):
767         (WebCore::Chrome::runJavaScriptConfirm):
768         (WebCore::Chrome::runJavaScriptPrompt):
769         (WebCore::Chrome::setStatusbarText):
770         * page/Frame.cpp:
771         (WebCore::Frame::shouldClose):
772         * page/Frame.h:
773         * platform/mac/PasteboardMac.mm:
774         (WebCore::Pasteboard::writeSelection):
775         * platform/text/TextCodecICU.cpp:
776         (WebCore::TextCodecICU::encode):
777         * platform/text/TextEncoding.cpp:
778         (WebCore::TextEncoding::TextEncoding):
779         * platform/text/TextEncoding.h:
780         (WebCore::TextEncoding::displayString):
781         (WebCore::TextEncoding::displayBuffer):
782         * rendering/HitTestResult.cpp:
783         (WebCore::displayString):
784         * rendering/RenderImage.cpp:
785         (WebCore::RenderImage::paintReplaced):
786         * rendering/RenderObject.cpp:
787         * rendering/RenderObject.h:
788         * rendering/RenderText.cpp:
789         (WebCore::RenderText::RenderText):
790         (WebCore::RenderText::setTextInternal):
791         * rendering/RenderTextControl.cpp:
792         (WebCore::RenderTextControl::setInnerTextValue):
793         (WebCore::RenderTextControl::finishText):
794
795 2009-01-17  Eric Carlson  <eric.carlson@apple.com>
796
797         Reviewed by Adele Peterson
798
799         Complete <rdar://problem/6293969>
800
801         * DerivedSources.make: include mediaControlsQT.css for Mac build.
802
803         * WebCore.xcodeproj/project.pbxproj: add mediaControlsQT.css
804
805         * css/CSSPrimitiveValueMappings.h:
806         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): add MediaTimelineContainerPart, 
807         CSSValueMediaCurrentTimeDisplay, and CSSValueMediaTimeRemainingDisplay
808
809         * css/CSSSelector.cpp:
810         (WebCore::CSSSelector::extractPseudoType): include new media controller element styles
811         * css/CSSSelector.h: 
812         (WebCore::CSSSelector::): Ditto.
813
814         * css/CSSStyleSelector.cpp:
815         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):  include new media 
816         controller element styles
817
818         * css/CSSValueKeywords.in: add keywords for new media time display controls
819
820         * css/mediaControls.css: adjust css for new control elements
821
822         * css/mediaControlsQT.css: Added.
823
824         * platform/ThemeTypes.h:
825         (WebCore::): add media time display controls to ControlPart
826
827         * platform/mac/WebCoreSystemInterface.h:
828         * platform/mac/WebCoreSystemInterface.mm: pass controller style to WKSI functions
829
830         * rendering/MediaControlElements.cpp:
831         (WebCore::MediaTextDisplayElement::MediaTextDisplayElement): Added
832         (WebCore::MediaTextDisplayElement::attachToParent): Added
833         (WebCore::MediaTextDisplayElement::update): Added
834         (WebCore::MediaTimeDisplayElement::MediaTimeDisplayElement): Added
835         (WebCore::MediaControlInputElement::MediaControlInputElement): Added
836         (WebCore::MediaControlInputElement::hitTest): Added
837         (WebCore::MediaControlTimelineElement::defaultEventHandler): Update the time display when
838         dragging the thumb
839         * rendering/MediaControlElements.h:
840         (WebCore::): Add MediaTextDisplayElement
841
842         * rendering/RenderMedia.cpp:
843         (WebCore::RenderMedia::createTimelineContainer): Added
844         (WebCore::RenderMedia::createTimeline): Parent is now the timeline container
845         (WebCore::RenderMedia::createCurrentTimeDisplay): Added
846         (WebCore::RenderMedia::createTimeRemainingDisplay): Added
847         (WebCore::RenderMedia::updateControls): Create new elements. Don't ever start the time update
848         timer when the time display elements are not visible
849         (WebCore::RenderMedia::formatTime): Handle negative times. Don't display 0 hours or minutes
850         (WebCore::RenderMedia::updateTimeDisplay): Do nothing when the time display elements are not
851         visible. Display time remaining as well as current time.
852         (WebCore::RenderMedia::updateControlVisibility): Don't assume opacity should be set to 0 when
853         visibility changes
854         (WebCore::RenderMedia::forwardEvent): Call element hitTest() method instead of local function
855         as we can't assume that all controls are rectangular
856         * rendering/RenderMedia.h: Updated
857
858         * rendering/RenderSlider.cpp:
859         (WebCore::RenderSlider::mouseEventIsInThumb): When slider is media timeline control, call 
860         element hitTest() method instead of assuming it is rectangular
861         * rendering/RenderSlider.h: make mouseEventIsInThumb virtual
862
863         * rendering/RenderTheme.cpp:
864         (WebCore::RenderTheme::paint): Deal with time display and timeline container
865         * rendering/RenderTheme.h:
866         (WebCore::RenderTheme::paintMediaTimelineContainer): Updated
867         (WebCore::RenderTheme::paintMediaCurrentTime): Added
868         (WebCore::RenderTheme::paintMediaTimeRemaining): Added
869
870         * rendering/RenderThemeMac.h: Updated
871         * rendering/RenderThemeMac.mm:
872         (WebCore::):
873         (WebCore::mediaControllerTheme):
874         (WebCore::RenderThemeMac::adjustSliderThumbSize): Call WebKitSystemInterface to get the thumb
875         size when appropriate
876         (WebCore::RenderThemeMac::paintMediaFullscreenButton): pass controller style to render function
877         (WebCore::RenderThemeMac::paintMediaMuteButton): Ditto
878         (WebCore::RenderThemeMac::paintMediaPlayButton): Ditto
879         (WebCore::RenderThemeMac::paintMediaSeekBackButton): Ditto
880         (WebCore::RenderThemeMac::paintMediaSeekForwardButton): Ditto
881         (WebCore::RenderThemeMac::paintMediaSliderTrack): Ditto
882         (WebCore::RenderThemeMac::paintMediaSliderThumb): Ditto
883         (WebCore::RenderThemeMac::paintMediaTimelineContainer): Added
884         (WebCore::RenderThemeMac::paintMediaCurrentTime): Added
885         (WebCore::RenderThemeMac::paintMediaTimeRemaining): Added
886         (WebCore::RenderThemeMac::extraMediaControlsStyleSheet): Added
887         (WebCore::RenderThemeMac::hitTestMediaControlPart): Added
888         * rendering/style/RenderStyle.h: Updated
889         (WebCore::):
890
891 2009-01-17  David Hyatt  <hyatt@apple.com>
892
893         Inline a few methods in FrameView for speed.
894
895         Reviewed by Oliver Hunt
896
897         * page/FrameView.cpp:
898         * page/FrameView.h:
899         (WebCore::FrameView::layoutCount):
900         (WebCore::FrameView::needsFullRepaint):
901
902 2009-01-17  David Hyatt  <hyatt@apple.com>
903
904         Inline Document::documentElement(), since it is used by the (very hot) RenderObject::isRoot().  Split off
905         the code that fetches and caches the document element into a separate function and inline the part that
906         does the null check and the return of the already-cached element.
907
908         Reviewed by Oliver Hunt
909
910         * dom/Document.cpp:
911         (WebCore::Document::cacheDocumentElement):
912         * dom/Document.h:
913         (WebCore::Document::documentElement):
914
915 2009-01-17  David Hyatt  <hyatt@apple.com>
916
917         Minor tweaks to RenderBox::styleChange to speed it up.
918
919         Reviewed by Oliver Hunt
920
921         * rendering/RenderBox.cpp:
922         (WebCore::RenderBox::styleDidChange):
923
924 2009-01-17  David Hyatt  <hyatt@apple.com>
925
926         Inline FrameLoader::client().
927
928         Reviewed by Oliver Hunt
929
930         * WebCore.base.exp:
931         * loader/FrameLoader.cpp:
932         * loader/FrameLoader.h:
933         (WebCore::FrameLoader::client):
934
935 2009-01-17  David Hyatt  <hyatt@apple.com>
936
937         Inline some Image methods for speed.  Fix CachedImage's addClient method to just use isNull rather
938         than needlessly creating a rect.
939
940         Reviewed by Oliver Hunt
941
942         * loader/CachedImage.cpp:
943         (WebCore::CachedImage::addClient):
944         * platform/graphics/Image.cpp:
945         * platform/graphics/Image.h:
946         (WebCore::Image::isNull):
947         (WebCore::Image::rect):
948         (WebCore::Image::width):
949         (WebCore::Image::height):
950
951 2009-01-17  David Hyatt  <hyatt@apple.com>
952
953         Avoid using the non-inlined isVariable() when adding parsed values during CSS parsing.
954
955         Reviewed by Oliver Hunt
956
957         * css/CSSParserValues.cpp:
958         (WebCore::CSSParserValueList::addValue):
959
960 2009-01-17  David Hyatt  <hyatt@apple.com>
961
962         Inline Document::inPageCache(), since - because of animation code - it is now called every time
963         styles change on any element and so is now super-hot.
964
965         Reviewed by Oliver Hunt
966
967         * dom/Document.cpp:
968         * dom/Document.h:
969         (WebCore::Document::inPageCache):
970
971 2009-01-16  David Hyatt  <hyatt@apple.com>
972
973         Take Font out of the GraphicsContext.  Fonts are moderately expensive to both compare and to assign to.
974         The Font's presence in the GraphicsContext was making save/restore more expensive than it needed to be,
975         and was also causing expensive comparison checks to be made before doing alterations of the Font in the
976         GraphicsContext.
977
978         A font must now be passed as a parameter to all text drawing functions.
979
980         Reviewed by Oliver Hunt
981
982         * html/CanvasRenderingContext2D.cpp:
983         (WebCore::CanvasRenderingContext2D::setFont):
984         (WebCore::CanvasRenderingContext2D::drawTextInternal):
985         * platform/graphics/GraphicsContext.cpp:
986         (WebCore::GraphicsContext::drawText):
987         (WebCore::GraphicsContext::drawBidiText):
988         (WebCore::GraphicsContext::drawHighlightForText):
989         * platform/graphics/GraphicsContext.h:
990         * platform/graphics/GraphicsContextPrivate.h:
991         * platform/graphics/qt/GraphicsContextQt.cpp:
992         * rendering/EllipsisBox.cpp:
993         (WebCore::EllipsisBox::paint):
994         * rendering/InlineTextBox.cpp:
995         (WebCore::paintTextWithShadows):
996         (WebCore::InlineTextBox::paint):
997         (WebCore::InlineTextBox::paintSelection):
998         (WebCore::InlineTextBox::paintCompositionBackground):
999         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
1000         (WebCore::InlineTextBox::paintTextMatchMarker):
1001         (WebCore::InlineTextBox::paintDocumentMarkers):
1002         * rendering/InlineTextBox.h:
1003         * rendering/RenderFileUploadControl.cpp:
1004         (WebCore::RenderFileUploadControl::paintObject):
1005         * rendering/RenderImage.cpp:
1006         (WebCore::RenderImage::paintReplaced):
1007         * rendering/RenderListBox.cpp:
1008         (WebCore::RenderListBox::paintItemForeground):
1009         * rendering/RenderListMarker.cpp:
1010         (WebCore::RenderListMarker::paint):
1011         * rendering/SVGInlineTextBox.cpp:
1012         (WebCore::SVGInlineTextBox::paintCharacters):
1013         (WebCore::SVGInlineTextBox::paintSelection):
1014         * rendering/SVGInlineTextBox.h:
1015         * svg/SVGFont.cpp:
1016         (WebCore::Font::drawTextUsingSVGFont):
1017
1018 2009-01-16  David Hyatt  <hyatt@apple.com>
1019
1020         Fix a regression from the virtualContinuation()/continuation() split where I accidentally changed
1021         two if statements.
1022
1023         Reviewed by Oliver Hunt
1024
1025         * rendering/RenderObject.cpp:
1026         (WebCore::RenderObject::absoluteRects):
1027         (WebCore::RenderObject::absoluteQuads):
1028
1029 2009-01-16  David Hyatt  <hyatt@apple.com>
1030
1031         Fix a regression from my before/after optimization.  Make sure the <q> element puts the document
1032         into a mode where it will respect before/after rules, since <q> implicitly uses such rules.
1033
1034         Make sure view source mode documents also turn on before/after rules, since they are used there also.
1035
1036         Reviewed by Oliver Hunt
1037
1038         * html/HTMLElementFactory.cpp:
1039         (WebCore::quoteConstructor):
1040         * html/HTMLViewSourceDocument.cpp:
1041         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
1042
1043 2009-01-16  Chris Fleizach  <cfleizach@apple.com>
1044
1045         Reviewed by Oliver Hunt.
1046
1047         Bug 23397: AXURL is not reported for <INPUT type="image"> elements
1048         https://bugs.webkit.org/show_bug.cgi?id=23397
1049
1050         Report an AXURL for inputs that have an image type.
1051
1052         Test: accessibility/input-image-url.html
1053
1054         * page/AccessibilityObject.h:
1055         (WebCore::AccessibilityObject::isInputImage):
1056         * page/AccessibilityRenderObject.cpp:
1057         (WebCore::AccessibilityRenderObject::isInputImage):
1058         (WebCore::AccessibilityRenderObject::url):
1059         * page/AccessibilityRenderObject.h:
1060         * page/mac/AccessibilityObjectWrapper.mm:
1061         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1062
1063 2009-01-16  Adele Peterson  <adele@apple.com>
1064
1065         Windows build fix.
1066
1067         * loader/FrameLoader.cpp: (WebCore::FrameLoader::logCanCachePageDecision):
1068
1069 2009-01-16  Steve Falkenburg  <sfalken@apple.com>
1070
1071         <rdar://problem/6502511> Safari crashes if it's running while the desktop theme is changed.
1072         
1073         This was caused by mismatched ENABLE definitions across WebCore and WebKit.
1074         
1075         Several virtual methods were added to RenderTheme.h, conditionalized by ENABLE(VIDEO).
1076         In addition to adding ENABLE_VIDEO to WebKit, this change also adds ENABLE_DATABASE and ENABLE_ICONDATABASE
1077         to Windows WebCore/WebKit, and adds ENABLE_WORKERS, and several ENABLE_SVG_ flags to WebKit on Windows.
1078         Our Windows ENABLE flags now match Mac.
1079
1080         Reviewed by Adele Peterson.
1081
1082         * WebCore.vcproj/WebCore.vcproj:
1083         * WebCore.vcproj/build-generated-files.sh:
1084
1085 2009-01-16  Mark Rowe  <mrowe@apple.com>
1086
1087         40,000!
1088
1089         * ChangeLog: Point out revision 40,000.
1090
1091 2009-01-16  Eric Seidel  <eric@webkit.org>
1092
1093         Reviewed by Justin Garcia.
1094
1095         Make surroundNodeRangeWithElement call insertNodeBefore implicitly
1096         Make insertNodeBefore take PassRefPtr
1097         Clean up the use of PassRefPtr vs. raw pointers a few places in the editing code.
1098         https://bugs.webkit.org/show_bug.cgi?id=23389
1099
1100         * editing/ApplyStyleCommand.cpp:
1101         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
1102         (WebCore::ApplyStyleCommand::applyTextDecorationStyle):
1103         (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
1104         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
1105         * editing/ApplyStyleCommand.h:
1106         * editing/CompositeEditCommand.cpp:
1107         (WebCore::CompositeEditCommand::insertNodeAt):
1108         * editing/IndentOutdentCommand.cpp:
1109         (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion):
1110         * editing/InsertLineBreakCommand.cpp:
1111         (WebCore::InsertLineBreakCommand::doApply):
1112         * editing/InsertParagraphSeparatorCommand.cpp:
1113         (WebCore::InsertParagraphSeparatorCommand::doApply):
1114         * editing/InsertTextCommand.cpp:
1115         (WebCore::InsertTextCommand::insertTab):
1116         * editing/ModifySelectionListLevel.cpp:
1117         (WebCore::IncreaseSelectionListLevelCommand::doApply):
1118         * editing/ReplaceSelectionCommand.cpp:
1119         (WebCore::ReplacementFragment::removeNodePreservingChildren):
1120         (WebCore::ReplacementFragment::insertNodeBefore):
1121         (WebCore::ReplacementFragment::removeInterchangeNodes):
1122         (WebCore::ReplaceSelectionCommand::doApply):
1123         (WebCore::ReplaceSelectionCommand::insertNodeAfterAndUpdateNodesInserted):
1124         (WebCore::ReplaceSelectionCommand::insertNodeAtAndUpdateNodesInserted):
1125         (WebCore::ReplaceSelectionCommand::insertNodeBeforeAndUpdateNodesInserted):
1126         * editing/ReplaceSelectionCommand.h:
1127
1128 2009-01-16  Chris Fleizach  <cfleizach@apple.com>
1129
1130         Reviewed by Oliver Hunt.
1131
1132         Bug 23393: TextField has AXTitle and AXTitleUIElement
1133         https://bugs.webkit.org/show_bug.cgi?id=23393
1134
1135         Test: accessibility/double-title.html
1136
1137         * page/AccessibilityRenderObject.cpp:
1138         (WebCore::AccessibilityRenderObject::title):
1139
1140 2009-01-16  Adam Treat  <adam.treat@torchmobile.com>
1141
1142         The correct build fix for all platforms.
1143
1144         * platform/graphics/Font.h:
1145
1146 2009-01-16  Adam Treat  <adam.treat@torchmobile.com>
1147
1148         Fix the Qt build.
1149
1150         * platform/graphics/Font.h:
1151
1152 2009-01-16  David Hyatt  <hyatt@apple.com>
1153
1154         Add a new flag (similar to first-line and first-letter) to Document to track whether any before/after rules
1155         are being used.  If not, don't waste time probing for those pseudo element styles.
1156
1157         Reviewed by Sam Weinig
1158
1159         * css/CSSGrammar.y:
1160         * dom/Document.cpp:
1161         (WebCore::Document::Document):
1162         * dom/Document.h:
1163         (WebCore::Document::usesBeforeAfterRules):
1164         (WebCore::Document::setUsesBeforeAfterRules):
1165         * rendering/RenderBlock.cpp:
1166         (WebCore::RenderBlock::styleDidChange):
1167         * rendering/RenderContainer.cpp:
1168         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
1169         * rendering/RenderInline.cpp:
1170         (WebCore::RenderInline::styleDidChange):
1171         (WebCore::RenderInline::addChildToFlow):
1172         (WebCore::RenderInline::splitInlines):
1173
1174 2009-01-16  Dmitry Titov  <dimich@chromium.org>
1175
1176         Reviewed by Alp Toker.
1177
1178         https://bugs.webkit.org/show_bug.cgi?id=23394
1179         Remove unnecessary calls to setDeferringTimers().
1180
1181         Use of this function was obsoleted by better handling of EINTR.
1182
1183         * platform/network/curl/ResourceHandleManager.cpp:
1184         (WebCore::ResourceHandleManager::downloadTimerCallback): removed setDeferringTimers calls.
1185
1186 2009-01-16  David Hyatt  <hyatt@apple.com>
1187
1188         Fix badness with the cursor CSS property.  For all links and form controls, resetting to a value of auto
1189         was resulting in the creation of a cursor list.  clearCursorList was creating a new list rather than just
1190         nulling out the pointer.  Since addCursor already lazily recreates the list, in the case of simple cursor types,
1191         the clear method was wastefully creating a completely unnecessary list for all of these elements.
1192
1193         Also optimized the setting of simple cursor values to not alter the RenderStyle's cursor setting if it is already
1194         set to the same value.  Since this is the common case, it prevents a fault and copy of StyleInheritedData for
1195         all links and form controls.
1196
1197         This is a PLT speedup.
1198
1199         Reviewed by Oliver Hunt
1200
1201         * css/CSSStyleSelector.cpp:
1202         (WebCore::CSSStyleSelector::applyProperty):
1203         * rendering/style/RenderStyle.cpp:
1204         (WebCore::RenderStyle::clearCursorList):
1205
1206 2009-01-16  Darin Fisher  <darin@chromium.org>
1207
1208         Reviewed by Darin Adler.
1209
1210         https://bugs.webkit.org/show_bug.cgi?id=23384
1211         PLATFORM(CHROMIUM) needs to delegate BackForwardList.cpp methods to the embedder
1212
1213         * history/BackForwardList.h:
1214         (WebCore::BackForwardListClient::~BackForwardListClient):
1215         (WebCore::BackForwardList::setClient):
1216         * history/BackForwardListChromium.cpp: Added.
1217
1218 2009-01-16  Dan Bernstein  <mitz@apple.com>
1219
1220         Reviewed by Kevin Decker and Adam Roben.
1221
1222         - fix a regression that resulted in a crash when plug-ins were
1223           disabled.
1224
1225         * rendering/RenderPartObject.cpp:
1226         (WebCore::RenderPartObject::updateWidget): Added a null check.
1227
1228 2009-01-16  David Hyatt  <hyatt@apple.com>
1229
1230         Split continuation() into virtual and non-virtual versions so that the non-virtual version can
1231         be used whereever possible.  Eventually the virtual method can be eliminated completely.
1232
1233         Reviewed by Sam Weinig and Oliver Hunt
1234
1235         * html/HTMLAnchorElement.cpp:
1236         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
1237         * page/AccessibilityRenderObject.cpp:
1238         (WebCore::AccessibilityRenderObject::anchorElement):
1239         * rendering/InlineFlowBox.cpp:
1240         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
1241         (WebCore::InlineFlowBox::paint):
1242         * rendering/RenderBlock.cpp:
1243         (WebCore::RenderBlock::removeChild):
1244         * rendering/RenderContainer.cpp:
1245         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
1246         * rendering/RenderFlow.h:
1247         (WebCore::RenderFlow::virtualContinuation):
1248         (WebCore::RenderFlow::continuation):
1249         * rendering/RenderInline.cpp:
1250         (WebCore::RenderInline::positionForCoordinates):
1251         * rendering/RenderObject.cpp:
1252         (WebCore::RenderObject::absoluteRects):
1253         (WebCore::RenderObject::absoluteQuads):
1254         (WebCore::RenderObject::addFocusRingRects):
1255         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
1256         (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
1257         (WebCore::RenderObject::handleDynamicFloatPositionChange):
1258         (WebCore::RenderObject::hoverAncestor):
1259         (WebCore::RenderObject::updateDragState):
1260         (WebCore::RenderObject::updateHitTestResult):
1261         (WebCore::RenderObject::getTextDecorationColors):
1262         (WebCore::RenderObject::adjustRectForOutlineAndShadow):
1263         * rendering/RenderObject.h:
1264         (WebCore::RenderObject::virtualContinuation):
1265
1266 2009-01-16  David Hyatt  <hyatt@apple.com>
1267
1268         Inline the methods of Font for obtaining metrics such as ascent, descent and line spacing.
1269
1270         Reviewed by ggaren
1271
1272         * platform/graphics/Font.cpp:
1273         * platform/graphics/Font.h:
1274         (WebCore::Font::width):
1275         (WebCore::Font::ascent):
1276         (WebCore::Font::descent):
1277         (WebCore::Font::lineSpacing):
1278         (WebCore::Font::lineGap):
1279         (WebCore::Font::xHeight):
1280         (WebCore::Font::unitsPerEm):
1281         (WebCore::Font::spaceWidth):
1282
1283 2009-01-16  Sam Weinig  <sam@webkit.org>
1284
1285         Reviewed by David Hyatt.
1286
1287         Fix for https://bugs.webkit.org/show_bug.cgi?id=23388
1288         Remove FrameViewPrivate
1289
1290         Removes an indirection and is a small speedup on PLT.
1291
1292         * page/FrameView.cpp:
1293         (WebCore::FrameView::FrameView):
1294         (WebCore::FrameView::~FrameView):
1295         (WebCore::FrameView::reset):
1296         (WebCore::FrameView::resetScrollbars):
1297         (WebCore::FrameView::init):
1298         (WebCore::FrameView::clear):
1299         (WebCore::FrameView::didFirstLayout):
1300         (WebCore::FrameView::initScrollbars):
1301         (WebCore::FrameView::updateDefaultScrollbarState):
1302         (WebCore::FrameView::setCanHaveScrollbars):
1303         (WebCore::FrameView::applyOverflowToViewport):
1304         (WebCore::FrameView::layoutCount):
1305         (WebCore::FrameView::needsFullRepaint):
1306         (WebCore::FrameView::layoutRoot):
1307         (WebCore::FrameView::layout):
1308         (WebCore::FrameView::setMediaType):
1309         (WebCore::FrameView::mediaType):
1310         (WebCore::FrameView::useSlowRepaints):
1311         (WebCore::FrameView::setUseSlowRepaints):
1312         (WebCore::FrameView::addSlowRepaintObject):
1313         (WebCore::FrameView::removeSlowRepaintObject):
1314         (WebCore::FrameView::scrollRectIntoViewRecursively):
1315         (WebCore::FrameView::setScrollPosition):
1316         (WebCore::FrameView::repaintContentRectangle):
1317         (WebCore::FrameView::beginDeferredRepaints):
1318         (WebCore::FrameView::endDeferredRepaints):
1319         (WebCore::FrameView::scheduleRelayout):
1320         (WebCore::FrameView::scheduleRelayoutOfSubtree):
1321         (WebCore::FrameView::layoutPending):
1322         (WebCore::FrameView::needsLayout):
1323         (WebCore::FrameView::unscheduleRelayout):
1324         (WebCore::FrameView::isTransparent):
1325         (WebCore::FrameView::setTransparent):
1326         (WebCore::FrameView::baseBackgroundColor):
1327         (WebCore::FrameView::setBaseBackgroundColor):
1328         (WebCore::FrameView::shouldUpdateWhileOffscreen):
1329         (WebCore::FrameView::setShouldUpdateWhileOffscreen):
1330         (WebCore::FrameView::scheduleEvent):
1331         (WebCore::FrameView::pauseScheduledEvents):
1332         (WebCore::FrameView::resumeScheduledEvents):
1333         (WebCore::FrameView::performPostLayoutTasks):
1334         (WebCore::FrameView::updateOverflowStatus):
1335         (WebCore::FrameView::dispatchScheduledEvents):
1336         (WebCore::FrameView::wasScrolledByUser):
1337         (WebCore::FrameView::setWasScrolledByUser):
1338         (WebCore::FrameView::paintContents):
1339         (WebCore::FrameView::setPaintRestriction):
1340         (WebCore::FrameView::isPainting):
1341         (WebCore::FrameView::setNodeToDraw):
1342         * page/FrameView.h:
1343         (WebCore::FrameView::setIsVisuallyNonEmpty): Inline.
1344
1345 2009-01-14  Julien Chaffraix  <jchaffraix@webkit.org>
1346
1347         Reviewed by Darin Adler.
1348
1349         Bug 23237: Some HTML constructors in HTMLElementFactory needs
1350         an HTMLFormElement argument
1351
1352         - Added 'constructorNeedsFormElement' parameter to make_names.pl to account
1353           for HTML form elements.
1354
1355         - Added the new information to HTMLTagNames.in.
1356
1357         * dom/make_names.pl:
1358         * html/HTMLTagNames.in:
1359
1360 2009-01-16  David Hyatt  <hyatt@apple.com>
1361
1362         Eliminate a bunch of save/restore pairs from commonly used GraphicsContext methods.  The most common reason
1363         for needing save/restore in the line-drawing methods was antialiasing, so this has now been made part of
1364         the cross-platform graphics state.  By being able to query for the current antialiasing setting, antialiasing
1365         can be temporarily changed and then restored back to the real value without needing to do a save/restore.
1366
1367         The line drawing code also set the fill color to the stroke color and relied on save/restore to prevent
1368         a permanent mutation of the fill color in the CGContext.   The new code just restores the fill color back
1369         to its original value without doing the much more expensive save/restore.
1370
1371         Reviewed by Oliver Hunt
1372
1373         * platform/graphics/GraphicsContext.cpp:
1374         (WebCore::GraphicsContext::setShouldAntialias):
1375         (WebCore::GraphicsContext::shouldAntialias):
1376         * platform/graphics/GraphicsContext.h:
1377         * platform/graphics/GraphicsContextPrivate.h:
1378         (WebCore::GraphicsContextState::GraphicsContextState):
1379         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1380         (WebCore::GraphicsContext::setPlatformShouldAntialias):
1381         * platform/graphics/cg/GraphicsContextCG.cpp:
1382         (WebCore::GraphicsContext::drawLine):
1383         (WebCore::GraphicsContext::drawConvexPolygon):
1384         (WebCore::GraphicsContext::drawLineForText):
1385         (WebCore::GraphicsContext::setPlatformShouldAntialias):
1386         * platform/graphics/qt/GraphicsContextQt.cpp:
1387         (WebCore::GraphicsContext::setPlatformShouldAntialias):
1388         * platform/graphics/skia/GraphicsContextSkia.cpp:
1389         (WebCore::GraphicsContext::setPlatformShouldAntialias):
1390         * platform/graphics/wx/GraphicsContextWx.cpp:
1391         (WebCore::GraphicsContext::setPlatformShouldAntialias):
1392         * rendering/RenderPath.cpp:
1393         (WebCore::RenderPath::paint):
1394
1395 2009-01-16  Anders Carlsson  <andersca@apple.com>
1396
1397         Reviewed by Sam Weinig.
1398
1399         Clean up the bridge code and get rid of Field::name() and Method::name().
1400         
1401         * bridge/c/c_instance.cpp:
1402         (JSC::Bindings::CInstance::invokeMethod):
1403         * bridge/c/c_runtime.cpp:
1404         * bridge/c/c_runtime.h:
1405         (JSC::Bindings::CField::identifier):
1406         (JSC::Bindings::CMethod::identifier):
1407         * bridge/jni/jni_class.cpp:
1408         (JavaClass::JavaClass):
1409         * bridge/jni/jni_instance.cpp:
1410         (JavaInstance::invokeMethod):
1411         * bridge/jni/jni_runtime.cpp:
1412         (JavaField::valueFromInstance):
1413         (JavaField::setValueToInstance):
1414         (JavaMethod::methodID):
1415         * bridge/jni/jni_runtime.h:
1416         (JSC::Bindings::JavaField::name):
1417         (JSC::Bindings::JavaMethod::name):
1418         * bridge/objc/objc_class.mm:
1419         (JSC::Bindings::ObjcClass::methodsNamed):
1420         * bridge/objc/objc_instance.mm:
1421         (ObjcInstance::invokeMethod):
1422         * bridge/objc/objc_runtime.h:
1423         (JSC::Bindings::ObjcMethod::isFallbackMethod):
1424         (JSC::Bindings::ObjcMethod::selector):
1425         * bridge/objc/objc_runtime.mm:
1426         (JSC::Bindings::ObjcMethod::ObjcMethod):
1427         (JSC::Bindings::ObjcMethod::getMethodSignature):
1428         (JSC::Bindings::ObjcField::ObjcField):
1429         (JSC::Bindings::ObjcField::valueFromInstance):
1430         (JSC::Bindings::ObjcField::setValueToInstance):
1431         (JSC::Bindings::callObjCFallbackObject):
1432         * bridge/runtime.h:
1433
1434 2009-01-16  David Hyatt  <hyatt@apple.com>
1435
1436         Optimize RenderText::styleDidChange.  Don't call the base class, which does extra meaningless work.
1437         Instead just do the one check we need to do (for a diff of layout) and mark dirty as appropriate.
1438         Clean up the base class method also to just bail early if no m_parent is set instead of repeatedly checking
1439         for the existence of m_parent in each if clause.
1440
1441         Reviewed by Darin Adler
1442
1443         * rendering/RenderObject.cpp:
1444         (WebCore::RenderObject::styleDidChange):
1445         * rendering/RenderText.cpp:
1446         (WebCore::RenderText::styleDidChange):
1447
1448 2009-01-16  Chris Fleizach  <cfleizach@apple.com>
1449
1450         Reviewed by Beth Dakin.
1451
1452         Bug 23387: AX hierarchy is incorrect when iframes are present
1453         https://bugs.webkit.org/show_bug.cgi?id=23387
1454
1455         The AX hierarchy is incorrect when iframes are present.
1456
1457         Test: accessibility/iframe-bastardization.html
1458
1459         * page/mac/AccessibilityObjectWrapper.mm:
1460         (-[AccessibilityObjectWrapper renderWidgetChildren]):
1461
1462 2009-01-16  Brady Eidson  <beidson@apple.com>
1463
1464         Reviewed by Darin Adler
1465
1466         <rdar://problem/3541409> - Split up some back/forward cache decision making and add detailed logging to
1467         better understand what the common disqualifiers are.
1468
1469         * loader/FrameLoader.cpp:
1470         (WebCore::FrameLoader::canCachePageContainingThisFrame):
1471         (WebCore::FrameLoader::canCachePage): Split off what will be per-frame decision making into canCacheSubframe.
1472         (WebCore::FrameLoader::logCanCachePageDecision): Detailed logging about why a page may not be considered for
1473           the back/forward cache.
1474         (WebCore::FrameLoader::logCanCacheFrameDecision): Same detailed logging on the per-frame basis.
1475         (WebCore::FrameLoader::commitProvisionalLoad): Move the m_client->canCachePage() call into canCachePageContainingThisFrame().
1476         * loader/FrameLoader.h:
1477
1478 2009-01-16  Chris Marrin  <cmarrin@apple.com>
1479
1480         Reviewed by David Hyatt.
1481
1482         Test: transitions/hang-with-bad-transition-list.html
1483
1484         Fixed https://bugs.webkit.org/show_bug.cgi?id=23088.
1485         This was happening because I was calling setChanged() from inside updateRendering()
1486         which causes an infinite loop. I fixed this by deferring the setChanged to the next
1487         run loop iteration. That made it not infinite loop, but it still retriggers the
1488         transition forever. The problem is that there is both an 'all' and specific transition
1489         on 'opacity'. This tickled a bug in AnimationController which causes the opacity 
1490         transition to get constantly cancelled and then retriggered. The problem is that
1491         the specific opacity transition has a duration of 0. I got rid of the logic to 
1492         flush out 0 duration transitions and it is no longer constantly triggered. The
1493         logic to flush them was just an optimization, and you really need to keep them
1494         around to make the logic to override earlier animations by later ones work. And there is
1495         very little overhead in this case anyway, so the optimization was not that useful.
1496
1497         I made a LayoutTest from the original testcase which tests both the infinite
1498         loop and constantly triggering animation cases.
1499
1500         * page/animation/AnimationBase.cpp:
1501         (WebCore::AnimationBase::updateStateMachine):
1502         * page/animation/AnimationController.cpp:
1503         (WebCore::AnimationControllerPrivate::updateRenderingDispatcherFired):
1504         (WebCore::AnimationControllerPrivate::addNodeChangeToDispatch):
1505         (WebCore::AnimationController::addNodeChangeToDispatch):
1506         * page/animation/AnimationController.h:
1507         * page/animation/CompositeAnimation.cpp:
1508         (WebCore::CompositeAnimationPrivate::updateTransitions):
1509         * rendering/style/RenderStyle.cpp:
1510         (WebCore::RenderStyle::adjustAnimations):
1511         (WebCore::RenderStyle::adjustTransitions):
1512
1513 2009-01-16  Chris Fleizach  <cfleizach@apple.com>
1514
1515         Reviewed by Darin Adler.
1516
1517         Bug 23385: crash at com.apple.WebCore  WebCore::HTMLAnchorElement::isKeyboardFocusable
1518         https://bugs.webkit.org/show_bug.cgi?id=23385
1519
1520         Option-tabbing through the page mentioned in the bug causes a crash
1521
1522         Test: fast/events/tab-crash-with-image-map.html
1523
1524         * html/HTMLAnchorElement.cpp:
1525         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
1526
1527 2009-01-16  Thiago Macieira  <thiago.macieira@nokia.com>
1528
1529         Reviewed by Simon Hausmann.
1530
1531         [Qt] Fixes QString and 8-bit mix fixes.
1532
1533         Details:  Make sure we use QLatin1String where appropriate (and don't
1534         use QString when not necessary)
1535
1536         * platform/graphics/qt/ImageDecoderQt.cpp:
1537         (WebCore::ImageDecoderQt::create):
1538         * platform/graphics/qt/SimpleFontDataQt.cpp:
1539         (WebCore::SimpleFontData::platformInit):
1540         * platform/qt/FileSystemQt.cpp:
1541         (WebCore::openTemporaryFile):
1542         * platform/qt/LoggingQt.cpp:
1543         (WebCore::InitializeLoggingChannelsIfNecessary):
1544         * platform/qt/RenderThemeQt.cpp:
1545         (WebCore::RenderThemeQt::extraMediaControlsStyleSheet):
1546         * plugins/qt/PluginDataQt.cpp:
1547         (WebCore::PluginData::initPlugins):
1548
1549 2009-01-16  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1550
1551         Reviewed by Adam Roben.
1552
1553         https://bugs.webkit.org/show_bug.cgi?id=22452
1554
1555         When plugins are disabled, plugin data should not be available for
1556         the page. This ensures that navigator.plugins would not see the
1557         additional MIME types supported by the plugins.
1558
1559         * page/Page.cpp:
1560         (WebCore::Page::pluginData):
1561         * loader/FrameLoader.cpp:
1562         (WebCore::FrameLoader::shouldUsePlugin):
1563         * rendering/RenderPartObject.cpp:
1564         (WebCore::RenderPartObject::updateWidget):
1565
1566 2009-01-15  Chris Marrin  <cmarrin@apple.com>
1567
1568         Reviewed by Sam Weinig.
1569
1570         Got rid of .idl file in Resources for bug https://bugs.webkit.org/show_bug.cgi?id=21421.
1571         Also fixed the test case to work on ppc.
1572
1573         * WebCore.xcodeproj/project.pbxproj:
1574
1575 2009-01-16  Ariya Hidayat  <ariya.hidayat@trolltech.com>
1576
1577         Another attempt at fixing the Qt build.
1578
1579         * bridge/qt/qt_instance.cpp:
1580         (JSC::Bindings::QtInstance::getInstance):
1581
1582 2009-01-16  David Hyatt  <hyatt@apple.com>
1583
1584         Fix for 1.85% PLT regression.  Since asking if a frame is "complete" actually aggressively decodes
1585         the frame, we add an optimization when advancing animations.  If we have received all of the animated
1586         image's data, then obviously we can go ahead and advance safely.  This prevents the first draw of an image
1587         from decoding two frames' worth of data in the case where all of the image's data has been received.
1588
1589         While this fixes the cached case, there could in fact be a regression on the uncached PLT from this change
1590         as well.  It's not immediately clear how that regression would be fixed, though, and it would likely be
1591         a much smaller percentage of that overall uncached time.
1592
1593         Reviewed by Dan Bernstein
1594
1595         * platform/graphics/BitmapImage.cpp:
1596         (WebCore::BitmapImage::startAnimation):
1597
1598 2009-01-15  Alexey Proskuryakov  <ap@webkit.org>
1599
1600         Reviewed by Anders Carlsson.
1601
1602         https://bugs.webkit.org/show_bug.cgi?id=23349
1603         Don't store obsolete caches in disk storage
1604
1605         * loader/ResourceLoader.cpp:
1606         (WebCore::ResourceLoader::ResourceLoader):
1607         (WebCore::ResourceLoader::load):
1608         (WebCore::ResourceLoader::scheduleLoadFallbackResourceFromApplicationCache):
1609         * loader/ResourceLoader.h:
1610         Don't maintain m_wasLoadedFromApplicationCache, which was never used.
1611
1612         * loader/appcache/ApplicationCache.cpp: (WebCore::ApplicationCache::addResource):
1613         Assert that only implicit and dynamic resources can be added after the cache has been fully
1614         loaded and stored to disk database.
1615
1616         * loader/appcache/ApplicationCacheGroup.cpp:
1617         (WebCore::ApplicationCacheGroup::cacheDestroyed): Don't remove non-newest caches from disk
1618         database, as this is now done whenever the cache becomes obsolete.
1619         (WebCore::ApplicationCacheGroup::setNewestCache): Remove an obsolete cache from disk storage.
1620
1621         * loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::cacheGroupDestroyed):
1622         A cache group that has never been saved should not be remembered in m_cacheHostSet. Changed
1623         the check to no longer rely on savedNewestCachePointer.
1624
1625 2009-01-15  Dimitri Dupuis-Latour  <dupuislatour@apple.com>
1626
1627         <rdar://problem/5870656> selectorText and cssText are clipped for :nth-child() and :nth-of-type();
1628
1629         Reviewed by Timothy Hatcher.
1630
1631         * css/CSSSelector.cpp:
1632         (WebCore::CSSSelector::selectorText):
1633
1634 2009-01-15  Justin Garcia  <justin.garcia@apple.com>
1635
1636         Reviewed by Oliver Hunt.
1637         
1638         <rdar://problem/6444148> Styling a selection that ends in a line break can sometimes style what's after the break
1639
1640         If the range to style ended at [node, 0] or inside node (and if for some reason the node didn't get split),
1641         applyInlineStyle would style node.
1642
1643         * editing/ApplyStyleCommand.cpp:
1644         (WebCore::ApplyStyleCommand::applyInlineStyle): Rename pastLast to pastEndNode, since it doesn't come from 
1645         Range::pastLastNode() anymore.  pastEndNode is the node after the last one that is fully selected, since
1646         the work done in the loop that follows should only be performed on fully selected nodes.
1647         * editing/InsertLineBreakCommand.cpp:
1648         (WebCore::InsertLineBreakCommand::doApply): Explicitly handle insertion into containers and after non-text nodes.
1649         Those were handled accidently before.
1650         * editing/htmlediting.cpp:
1651         (WebCore::caretMaxOffset): In various places we call this with a container and expect to be given the number 
1652         of children in that container, so I changed it to match that.  RenderBR and RenderObject::caretMaxOffset() should 
1653         also be eliminated since maxDeepOffset handles non-text nodes.
1654
1655 2009-01-15  Anders Carlsson  <andersca@apple.com>
1656
1657         Reviewed by Geoffrey Garen.
1658
1659         Get rid of the dreaded BindingLanguage once and for all. Also get rid of Instance::getInstance.
1660
1661         * bridge/c/c_instance.h:
1662         * bridge/jni/jni_instance.h:
1663         * bridge/objc/objc_instance.h:
1664         * bridge/qt/qt_instance.h:
1665         * bridge/runtime.cpp:
1666         * bridge/runtime.h:
1667         * bridge/runtime_object.h:
1668
1669 2009-01-15  David Hyatt  <hyatt@apple.com>
1670
1671         Eliminate an extra virtual function call that occurs for every single RenderText by moving the SVG-specific
1672         code that was placed into RenderText::styleDidChange into RenderSVGInlineText::styleDidChange.
1673
1674         Reviewed by Oliver Hunt
1675
1676         * rendering/RenderSVGInlineText.cpp:
1677         (WebCore::RenderSVGInlineText::styleDidChange):
1678         * rendering/RenderSVGInlineText.h:
1679         * rendering/RenderText.cpp:
1680         (WebCore::RenderText::styleDidChange):
1681
1682 2009-01-15  Anders Carlsson  <andersca@apple.com>
1683
1684         Another attempt at fixing the Qt build.
1685         
1686         * bridge/qt/qt_instance.cpp:
1687         (JSC::Bindings::QtInstance::getOwnPropertySlot):
1688         (JSC::Bindings::QtInstance::put):
1689         * bridge/qt/qt_instance.h:
1690         * bridge/runtime.h:
1691         (JSC::Bindings::Instance::getOwnPropertySlot):
1692         (JSC::Bindings::Instance::put):
1693         * bridge/runtime_object.cpp:
1694         (JSC::RuntimeObjectImp::getOwnPropertySlot):
1695         (JSC::RuntimeObjectImp::put):
1696
1697 2009-01-15  Anders Carlsson  <andersca@apple.com>
1698
1699         Reviewed by Darin Adler.
1700
1701         Add QtInstance::getInstance and start using it.
1702
1703         * bridge/qt/qt_instance.cpp:
1704         (JSC::Bindings::QtRuntimeObjectImp::mark):
1705         (JSC::Bindings::QtRuntimeObjectImp::classInfo):
1706         (JSC::Bindings::):
1707         (JSC::Bindings::QtInstance::getInstance):
1708         * bridge/qt/qt_instance.h:
1709         * bridge/qt/qt_runtime.cpp:
1710         (JSC::Bindings::convertValueToQVariant):
1711
1712 2009-01-15  Anders Carlsson  <andersca@apple.com>
1713
1714         Reviewed by Sam Weinig.
1715
1716         Add the ability for Instance objects to override getOwnPropertySlot/put for runtime objects.
1717
1718         * bridge/qt/qt_instance.cpp:
1719         (JSC::Bindings::QtInstance::getOwnPropertySlot):
1720         (JSC::Bindings::QtInstance::put):
1721         * bridge/qt/qt_instance.h:
1722         * bridge/runtime.h:
1723         (JSC::Bindings::Instance::getOwnPropertySlot):
1724         (JSC::Bindings::Instance::put):
1725         * bridge/runtime_object.cpp:
1726         (JSC::RuntimeObjectImp::getOwnPropertySlot):
1727         (JSC::RuntimeObjectImp::put):
1728
1729 2009-01-15  Anders Carlsson  <andersca@apple.com>
1730
1731         Fix the QT build.
1732
1733         * bridge/qt/qt_instance.cpp:
1734         (JSC::Bindings::QtInstance::createRuntimeObject):
1735         * bridge/qt/qt_instance.h:
1736
1737 2009-01-15  David Hyatt  <hyatt@apple.com>
1738
1739         Fix for <rdar://problem/6500278> REGRESSION: 3.5% of samples on iBench in WebCore::Frame::setZoomFactor
1740
1741         setZoomFactor was supposed to bail if both the zoom factor and mode were the same.  The mode check was
1742         buggy and doing the wrong thing.
1743
1744         Reviewed by Darin Adler
1745
1746         * page/Frame.cpp:
1747         (WebCore::Frame::setZoomFactor):
1748
1749 2009-01-15  Anders Carlsson  <andersca@apple.com>
1750
1751         Reviewed by Geoffrey Garen.
1752
1753         Make Instance::createRuntimeObject a virtual function and override it for QtInstance.
1754         
1755         * bindings/js/JSPluginElementFunctions.cpp:
1756         (WebCore::getRuntimeObject):
1757         * bridge/c/c_utility.cpp:
1758         (JSC::Bindings::convertNPVariantToValue):
1759         * bridge/jni/jni_instance.cpp:
1760         (JavaInstance::invokeMethod):
1761         * bridge/jni/jni_jsobject.mm:
1762         (JavaJSObject::convertJObjectToValue):
1763         * bridge/jni/jni_runtime.cpp:
1764         (JavaField::valueFromInstance):
1765         (JavaArray::valueAt):
1766         * bridge/objc/objc_utility.mm:
1767         (JSC::Bindings::convertObjcValueToValue):
1768         * bridge/qt/qt_instance.cpp:
1769         (JSC::Bindings::QtInstance::getRuntimeObject):
1770         (JSC::Bindings::QtInstance::createRuntimeObject):
1771         * bridge/qt/qt_instance.h:
1772         * bridge/qt/qt_runtime.cpp:
1773         (JSC::Bindings::convertQVariantToValue):
1774         (JSC::Bindings::QtConnectionObject::execute):
1775         * bridge/runtime.cpp:
1776         (JSC::Bindings::Instance::createRuntimeObject):
1777         * bridge/runtime.h:
1778
1779 2009-01-15  Dimitri Glazkov  <dglazkov@chromium.org>
1780
1781         Reviewed by Darin Adler.
1782
1783         https://bugs.webkit.org/show_bug.cgi?id=23354
1784         Fix up graphics/chromium files to account for Uniscribe style scrubbing.
1785
1786         * platform/graphics/chromium/FontChromiumWin.cpp:
1787         (WebCore::windowsCanHandleTextDrawing):
1788         (WebCore::Font::selectionRectForComplexText):
1789         (WebCore::Font::drawComplexText):
1790         (WebCore::Font::floatWidthForComplexText):
1791         (WebCore::Font::offsetForPositionForComplexText):
1792         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
1793         (WebCore::fillNonBMPGlyphs):
1794
1795 2009-01-15  David Levin  <levin@chromium.org>
1796
1797         Reviewed by Darin Adler.
1798
1799         https://bugs.webkit.org/show_bug.cgi?id=23333
1800         Adjust due to a name change that happened in a WebKit.
1801
1802         * svg/graphics/skia/SVGPaintServerPatternSkia.cpp:
1803         (WebCore::SVGPaintServerPattern::setup):
1804
1805 2009-01-15  Dimitri Glazkov  <dglazkov@chromium.org>
1806
1807         Reviewed by Eric Seidel.
1808
1809         https://bugs.webkit.org/show_bug.cgi?id=23340
1810         Add remaining bits of graphics/chromium.
1811
1812         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: Added.
1813         (WebCore::scaleEmToUnits):
1814         (WebCore::SimpleFontData::platformInit):
1815         (WebCore::SimpleFontData::platformDestroy):
1816         (WebCore::SimpleFontData::smallCapsFontData):
1817         (WebCore::SimpleFontData::containsCharacters):
1818         (WebCore::SimpleFontData::determinePitch):
1819         (WebCore::SimpleFontData::platformWidthForGlyph):
1820         * platform/graphics/chromium/SimpleFontDataLinux.cpp: Added.
1821         (WebCore::SimpleFontData::platformInit):
1822         (WebCore::SimpleFontData::platformDestroy):
1823         (WebCore::SimpleFontData::smallCapsFontData):
1824         (WebCore::SimpleFontData::containsCharacters):
1825         (WebCore::SimpleFontData::determinePitch):
1826         (WebCore::SimpleFontData::platformWidthForGlyph):
1827         * platform/graphics/chromium/ThemeHelperChromiumWin.cpp: Added.
1828         (WebCore::ThemeHelperWin::ThemeHelperWin):
1829         (WebCore::ThemeHelperWin::~ThemeHelperWin):
1830         * platform/graphics/chromium/ThemeHelperChromiumWin.h: Added.
1831         (WebCore::ThemeHelperWin::):
1832         (WebCore::ThemeHelperWin::context):
1833         (WebCore::ThemeHelperWin::rect):
1834         * platform/graphics/chromium/UniscribeHelper.cpp: Added.
1835         (WebCore::treatAsSpace):
1836         (WebCore::containsMissingGlyphs):
1837         (WebCore::setLogFontAndStyle):
1838         (WebCore::UniscribeHelper::UniscribeHelper):
1839         (WebCore::UniscribeHelper::~UniscribeHelper):
1840         (WebCore::UniscribeHelper::initWithOptionalLengthProtection):
1841         (WebCore::UniscribeHelper::width):
1842         (WebCore::UniscribeHelper::justify):
1843         (WebCore::UniscribeHelper::characterToX):
1844         (WebCore::UniscribeHelper::xToCharacter):
1845         (WebCore::UniscribeHelper::draw):
1846         (WebCore::UniscribeHelper::firstGlyphForCharacter):
1847         (WebCore::UniscribeHelper::fillRuns):
1848         (WebCore::UniscribeHelper::shape):
1849         (WebCore::UniscribeHelper::fillShapes):
1850         (WebCore::UniscribeHelper::fillScreenOrder):
1851         (WebCore::UniscribeHelper::adjustSpaceAdvances):
1852         (WebCore::UniscribeHelper::applySpacing):
1853         (WebCore::UniscribeHelper::advanceForItem):
1854         * platform/graphics/chromium/UniscribeHelper.h: Added.
1855         (WebCore::UniscribeHelper::directionalOverride):
1856         (WebCore::UniscribeHelper::setDirectionalOverride):
1857         (WebCore::UniscribeHelper::inhibitLigate):
1858         (WebCore::UniscribeHelper::setInhibitLigate):
1859         (WebCore::UniscribeHelper::letterSpacing):
1860         (WebCore::UniscribeHelper::setLetterSpacing):
1861         (WebCore::UniscribeHelper::spaceWidth):
1862         (WebCore::UniscribeHelper::setSpaceWidth):
1863         (WebCore::UniscribeHelper::wordSpacing):
1864         (WebCore::UniscribeHelper::setWordSpacing):
1865         (WebCore::UniscribeHelper::setAscent):
1866         (WebCore::UniscribeHelper::init):
1867         (WebCore::UniscribeHelper::tryToPreloadFont):
1868         (WebCore::UniscribeHelper::Shaping::Shaping):
1869         (WebCore::UniscribeHelper::Shaping::glyphLength):
1870         (WebCore::UniscribeHelper::Shaping::charLength):
1871         (WebCore::UniscribeHelper::Shaping::effectiveAdvances):
1872         (WebCore::UniscribeHelper::nextWinFontData):
1873         (WebCore::UniscribeHelper::resetFontIndex):
1874         * platform/graphics/chromium/UniscribeHelperTextRun.cpp: Added.
1875         (WebCore::UniscribeHelperTextRun::UniscribeHelperTextRun):
1876         (WebCore::UniscribeHelperTextRun::tryToPreloadFont):
1877         (WebCore::UniscribeHelperTextRun::nextWinFontData):
1878         (WebCore::UniscribeHelperTextRun::resetFontIndex):
1879         * platform/graphics/chromium/UniscribeHelperTextRun.h: Added.
1880
1881 2009-01-15  Chris Marrin  <cmarrin@apple.com>
1882
1883         Reviewed by Dan Bernstein.
1884
1885         Fixed Windows project file after https://bugs.webkit.org/show_bug.cgi?id=21421
1886
1887         * WebCore.vcproj/WebCore.vcproj:
1888
1889 2009-01-15  Aaron Boodman  <aa@chromium.org>
1890
1891         Reviewed by Adam Roben.
1892
1893         https://bugs.webkit.org/show_bug.cgi?id=15279
1894         Right clicking over text (or multiple spaces) auto selects the word
1895         (or multiple spaces) under it, which is not a desirable effect for some
1896         platforms.
1897
1898         * page/EventHandler.cpp:
1899         (WebCore::EventHandler::sendContextMenuEvent):
1900         Don't select words on right-click on Chromium.
1901
1902 2009-01-15  Darin Fisher  <darin@chromium.org>
1903
1904         Reviewed by Eric Seidel.
1905
1906         https://bugs.webkit.org/show_bug.cgi?id=23345
1907         SharedBuffer.h should include wtf/OwnPtr.h
1908
1909         * platform/SharedBuffer.h:
1910
1911 2009-01-14  David Kilzer  <ddkilzer@apple.com>
1912
1913         Bug 23338: Make "Streamline Inspector Source" build script check for a directory before using it
1914
1915         <https://bugs.webkit.org/show_bug.cgi?id=23338>
1916
1917         Reviewed by Timothy Hatcher.
1918
1919         * WebCore.xcodeproj/project.pbxproj: Check to see if
1920         "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/inspector"
1921         exists before trying to change directories into it and then
1922         deleting, modifying and adding files to it.
1923
1924 2009-01-14  miggilin  <mr.diggilin@gmail.com>
1925
1926         Reviewed by Kevin Ollivier.
1927
1928         Fixing wx compilation for wx 2.9/trunk.
1929
1930         * platform/graphics/wx/FontPlatformData.h:
1931         (WebCore::FontPlatformData::operator==):
1932         (WebCore::FontPlatformData::computeHash):
1933         * platform/graphics/wx/GraphicsContextWx.cpp:
1934         (WebCore::GraphicsContext::clip):
1935         (WebCore::GraphicsContext::setCompositeOperation):
1936         * platform/graphics/wx/ImageSourceWx.cpp:
1937         (WebCore::ImageSource::createFrameAtIndex):
1938         * platform/graphics/wx/PathWx.cpp:
1939         (WebCore::Path::contains):
1940         * platform/wx/RenderThemeWx.cpp:
1941         (WebCore::RenderThemeWx::paintButton):
1942         (WebCore::RenderThemeWx::paintTextField):
1943         (WebCore::RenderThemeWx::paintMenuList):
1944         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
1945
1946 2009-01-14  Kevin Ollivier  <kevino@theolliviers.com>
1947
1948         wx build fix. Adding WebKitCSSMatrix.
1949
1950         * WebCoreSources.bkl:
1951
1952 2009-01-14  Adam Treat  <adam.treat@torchmobile.com>
1953
1954         Prospective build fix for Qt following r39922.
1955
1956         * WebCore.pro:
1957
1958 2009-01-14  Darin Adler  <darin@apple.com>
1959
1960         Fix debug build.
1961
1962         * bindings/js/JSWebKitCSSMatrixConstructor.cpp:
1963         (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
1964         Use ASSERT_UNUSED.
1965
1966 2009-01-14  Adele Peterson  <adele@apple.com>
1967
1968         Reviewed by Darin Adler.
1969
1970         Fix for https://bugs.webkit.org/show_bug.cgi?id=23335
1971         <rdar://problem/6247650> Update <input type="search"> for RenderThemeWin
1972
1973         No new tests added.  In the future, we need to update DumpRenderTree to be able to run with different RenderThemes and
1974         we'll need a separate set of results for different themes.
1975         
1976         * css/themeWin.css: Renable search fields.  Added new rules for sub-element placement.
1977         
1978         * rendering/RenderTextControlSingleLine.cpp:
1979         (WebCore::RenderTextControlSingleLine::textBlockWidth): Consider margin set on the sub-elements when computing the
1980         desired width for the text block.
1981         
1982         * rendering/RenderThemeWin.cpp:
1983         (WebCore::RenderThemeWin::supportsFocus): Treat SearchFieldPart the same as TextFieldPart.
1984         (WebCore::RenderThemeWin::determineState): ditto.
1985         (WebCore::RenderThemeWin::getClassicThemeData): ditto.
1986         (WebCore::RenderThemeWin::getThemeData): ditto.
1987         (WebCore::RenderThemeWin::paintSearchFieldCancelButton): Draw a scaled, vertically centered, version of the new artwork.
1988         (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration): ditto.
1989         (WebCore::RenderThemeWin::paintSearchFieldResultsButton): ditto.
1990         (WebCore::RenderThemeWin::adjustSearchFieldCancelButtonStyle): Set the scaled width and height.
1991         (WebCore::RenderThemeWin::adjustSearchFieldResultsDecorationStyle): ditto.
1992         (WebCore::RenderThemeWin::adjustSearchFieldResultsButtonStyle): ditto.
1993
1994 2009-01-14  Alp Toker  <alp@nuanti.com>
1995
1996         GTK+ build fix following r39922.
1997         Add WebKitCSSMatrix to the build system.
1998
1999         * GNUmakefile.am:
2000
2001 2009-01-14  Chris Marrin  <cmarrin@apple.com>
2002
2003         Reviewed by Sam Weinig.
2004
2005         Implemented 2D WebKitCSSMatrix
2006         https://bugs.webkit.org/show_bug.cgi?id=21421
2007
2008         Test: transforms/2d/cssmatrix-interface.xhtml
2009
2010         * DerivedSources.make:
2011         * WebCore.xcodeproj/project.pbxproj:
2012         * bindings/js/JSDOMWindowBase.cpp:
2013         (jsDOMWindowBaseWebKitCSSMatrix):
2014         (setJSDOMWindowBaseWebKitCSSMatrix):
2015         * bindings/js/JSWebKitCSSMatrixConstructor.cpp: Added.
2016         (WebCore::):
2017         (WebCore::JSWebKitCSSMatrixConstructor::JSWebKitCSSMatrixConstructor):
2018         (WebCore::constructWebKitCSSMatrix):
2019         (WebCore::JSWebKitCSSMatrixConstructor::getConstructData):
2020         * bindings/js/JSWebKitCSSMatrixConstructor.h: Added.
2021         (WebCore::JSWebKitCSSMatrixConstructor::classInfo):
2022         * bindings/objc/DOMInternal.h:
2023         * css/WebKitCSSMatrix.cpp: Added.
2024         (WebCore::WebKitCSSMatrix::WebKitCSSMatrix):
2025         (WebCore::WebKitCSSMatrix::~WebKitCSSMatrix):
2026         (WebCore::WebKitCSSMatrix::setMatrixValue):
2027         (WebCore::WebKitCSSMatrix::multiply):
2028         (WebCore::WebKitCSSMatrix::inverse):
2029         (WebCore::WebKitCSSMatrix::translate):
2030         (WebCore::WebKitCSSMatrix::scale):
2031         (WebCore::WebKitCSSMatrix::rotate):
2032         (WebCore::WebKitCSSMatrix::toString):
2033         * css/WebKitCSSMatrix.h: Added.
2034         (WebCore::WebKitCSSMatrix::create):
2035         (WebCore::WebKitCSSMatrix::a):
2036         (WebCore::WebKitCSSMatrix::b):
2037         (WebCore::WebKitCSSMatrix::c):
2038         (WebCore::WebKitCSSMatrix::d):
2039         (WebCore::WebKitCSSMatrix::e):
2040         (WebCore::WebKitCSSMatrix::f):
2041         (WebCore::WebKitCSSMatrix::setA):
2042         (WebCore::WebKitCSSMatrix::setB):
2043         (WebCore::WebKitCSSMatrix::setC):
2044         (WebCore::WebKitCSSMatrix::setD):
2045         (WebCore::WebKitCSSMatrix::setE):
2046         (WebCore::WebKitCSSMatrix::setF):
2047         (WebCore::WebKitCSSMatrix::transform):
2048         * css/WebKitCSSMatrix.idl: Added.
2049
2050 2009-01-14  Michael Moss  <mmoss@chromium.org>
2051
2052         Reviewed by Eric Seidel.
2053
2054         Workaround a skia limitation on repeated patterns, and remove extra
2055         transformations applied to pattern.
2056         https://bugs.webkit.org/show_bug.cgi?id=23332
2057
2058         Fixes:
2059         LayoutTests/fast/canvas/patternfill-repeat.html
2060         LayoutTests/svg/W3C-SVG-1.1/pservers-grad-06-b.svg
2061
2062         * platform/graphics/skia/PatternSkia.cpp:
2063         (WebCore::Pattern::createPlatformPattern):
2064
2065 2009-01-14  Mark Rowe  <mrowe@apple.com>
2066
2067         Fix https://bugs.webkit.org/show_bug.cgi?id=23334
2068         Bug 23334: Compile failure in XMLTokenizerLibxml2.cpp
2069
2070         Include wtf/UnusedParam.h to get UNUSED_PARAM.
2071
2072         * dom/XMLTokenizerLibxml2.cpp:
2073         (WebCore::hackAroundLibXMLEntityBug):
2074
2075 2009-01-14  David Levin  <levin@chromium.org>
2076
2077         Reviewed by Darin Adler.
2078
2079         https://bugs.webkit.org/show_bug.cgi?id=23333
2080         Platform code fixes. These compensate for changes in platform
2081         callbacks from WebKit and minor API tweaks.
2082
2083         I enumerated a few below.
2084
2085         * platform/graphics/chromium/FontCacheChromiumWin.cpp:
2086         fontExists has been gone since r34794.
2087
2088         * platform/graphics/skia/ImageSkia.cpp:
2089         (WebCore::paintSkBitmap):
2090
2091         (WebCore::FrameData::clear):
2092         r39751 changes this api to take and return a bool.
2093
2094         (WebCore::Image::drawPattern):
2095         * platform/graphics/skia/PathSkia.cpp:
2096         (WebCore::Path::apply):
2097         (WebCore::boundingBoxForCurrentStroke):
2098         (WebCore::Path::strokeContains):
2099         * svg/graphics/skia/RenderPathSkia.cpp: Removed due to r39805.
2100
2101 2009-01-14  Jeremy Moskovich  <jeremy@chromium.org>
2102
2103         Reviewed by Eric Seidel.
2104
2105         <https://bugs.webkit.org/show_bug.cgi?id=16829>
2106         Implement NPN_SetException()
2107
2108         This mirrors the implementation in the obj-c bindings.
2109
2110         Test: plugins/netscape-throw-exception.html
2111
2112         * bridge/NP_jsobject.cpp:
2113         (_NPN_SetException):
2114         * bridge/c/c_instance.cpp:
2115         (JSC::Bindings::getExceptionString):
2116         (JSC::Bindings::CInstance::setGlobalException):
2117         (JSC::Bindings::CInstance::moveGlobalExceptionToExecState):
2118         (JSC::Bindings::CInstance::invokeMethod):
2119         (JSC::Bindings::CInstance::invokeDefaultMethod):
2120         (JSC::Bindings::CInstance::invokeConstruct):
2121         (JSC::Bindings::CInstance::getPropertyNames):
2122         * bridge/c/c_instance.h:
2123
2124 2009-01-14  Pierre-Olivier Latour  <pol@apple.com>
2125
2126         Fixed build warning when LIBXML_VERSION >= 20627.
2127
2128         * dom/XMLTokenizerLibxml2.cpp:
2129         (WebCore::hackAroundLibXMLEntityBug):
2130
2131 2009-01-14  Alexey Proskuryakov  <ap@webkit.org>
2132
2133         Reviewed by Anders Carlsson.
2134
2135         https://bugs.webkit.org/show_bug.cgi?id=23326
2136         Resources are never deleted from application cache disk database
2137
2138         * loader/appcache/ApplicationCacheStorage.cpp:
2139         (WebCore::ApplicationCacheStorage::openDatabase): Create a trigger that deletes resources when
2140         a cache is deleted. Note that this change doesn't require bumping schema version. We should
2141         consider switching to foreign keys and cascade delete instead of triggers in the future.
2142         (WebCore::ApplicationCacheStorage::remove): Added a comment explaining why it's sufficient
2143         to only remove the cache itself.
2144         (WebCore::ApplicationCacheStorage::empty): Don't delete from CacheResources, now that this
2145         is done automatically when a cache is deleted.
2146
2147 2009-01-14  David Kilzer  <ddkilzer@apple.com>
2148
2149         Bug 22795: favicons should be saved to webarchives
2150
2151         <https://bugs.webkit.org/show_bug.cgi?id=22795>
2152
2153         Reviewed by Darin Adler.
2154
2155         Test: webarchive/test-link-rel-icon.html
2156
2157         * html/HTMLLinkElement.cpp:
2158         (WebCore::HTMLLinkElement::addSubresourceAttributeURLs): Do not add
2159         favicon URLs to the list since no ArchiveResource or CachedResource
2160         is ever created for them.
2161         * loader/archive/cf/LegacyWebArchive.cpp:
2162         (WebCore::LegacyWebArchive::create): Handle favicons as a special
2163         case for all main resources.
2164         * loader/icon/IconDatabase.cpp:
2165         (WebCore::IconDatabase::close): Actually close the SQLite database
2166         so that isOpen() returns false when called.  Added an ASSERT() for
2167         good measure.
2168
2169 2009-01-14  Dimitri Glazkov  <dglazkov@chromium.org>
2170
2171         Reviewed by Eric Seidel.
2172         
2173         https://bugs.webkit.org/show_bug.cgi?id=23321
2174         Upstream more bits of graphics/chromium.
2175         
2176         * platform/graphics/chromium/FontPlatformDataChromiumWin.cpp: Added.
2177         (WebCore::FontPlatformData::FontPlatformData):
2178         (WebCore::FontPlatformData::operator=):
2179         (WebCore::FontPlatformData::~FontPlatformData):
2180         (WebCore::FontPlatformData::RefCountedHFONT::~RefCountedHFONT):
2181         (WebCore::FontPlatformData::hashTableDeletedFontValue):
2182         (WebCore::FontPlatformData::scriptFontProperties):
2183         * platform/graphics/chromium/FontPlatformDataChromiumWin.h: Added.
2184         (WebCore::FontPlatformData::isHashTableDeletedValue):
2185         (WebCore::FontPlatformData::hfont):
2186         (WebCore::FontPlatformData::size):
2187         (WebCore::FontPlatformData::hash):
2188         (WebCore::FontPlatformData::operator==):
2189         (WebCore::FontPlatformData::scriptCache):
2190         (WebCore::FontPlatformData::RefCountedHFONT::create):
2191         (WebCore::FontPlatformData::RefCountedHFONT::hfont):
2192         (WebCore::FontPlatformData::RefCountedHFONT::hash):
2193         (WebCore::FontPlatformData::RefCountedHFONT::operator==):
2194         (WebCore::FontPlatformData::RefCountedHFONT::RefCountedHFONT):
2195         * platform/graphics/chromium/FontPlatformDataLinux.cpp: Added.
2196         (WebCore::FontPlatformData::FontPlatformData):
2197         (WebCore::FontPlatformData::~FontPlatformData):
2198         (WebCore::FontPlatformData::operator=):
2199         (WebCore::FontPlatformData::setupPaint):
2200         (WebCore::FontPlatformData::operator==):
2201         (WebCore::FontPlatformData::hash):
2202         (WebCore::FontPlatformData::isFixedPitch):
2203         * platform/graphics/chromium/FontPlatformDataLinux.h: Added.
2204         (WebCore::FontPlatformData::FontPlatformData):
2205         (WebCore::FontPlatformData::size):
2206         (WebCore::FontPlatformData::isHashTableDeletedValue):
2207         (WebCore::FontPlatformData::hashTableDeletedFontValue):
2208         * platform/graphics/chromium/FontUtilsChromiumWin.cpp: Added.
2209         (WebCore::):
2210         (WebCore::FontMap::getAscent):
2211         (WebCore::FontMap::FontData::FontData):
2212         (WebCore::getFontFamilyForScript):
2213         (WebCore::getFallbackFamily):
2214         (WebCore::getDerivedFontData):
2215         (WebCore::getStyleFromLogfont):
2216         * platform/graphics/chromium/FontUtilsChromiumWin.h: Added.
2217         (WebCore::):
2218
2219 2009-01-14  Dimitri Glazkov  <dglazkov@chromium.org>
2220
2221         Reviewed by Eric Seidel.
2222
2223         https://bugs.webkit.org/show_bug.cgi?id=23325
2224         Upstream even more graphics/chromium bits.
2225
2226         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp: Added.
2227         (WebCore::fillEmptyGlyphs):
2228         (WebCore::initSpaceGlyph):
2229         (WebCore::fillBMPGlyphs):
2230         (WebCore::fillNonBMPGlyphs):
2231         (WebCore::GlyphPage::fill):
2232         * platform/graphics/chromium/GlyphPageTreeNodeLinux.cpp: Added.
2233         (WebCore::GlyphPage::fill):
2234         * platform/graphics/chromium/IconChromiumLinux.cpp: Added.
2235         (WebCore::Icon::Icon):
2236         (WebCore::Icon::~Icon):
2237         (WebCore::Icon::createIconForFile):
2238         (WebCore::Icon::createIconForFiles):
2239         (WebCore::Icon::paint):
2240         * platform/graphics/chromium/IconChromiumMac.cpp: Added.
2241         (WebCore::Icon::createIconForFile):
2242         (WebCore::Icon::createIconForFiles):
2243         (WebCore::Icon::~Icon):
2244         (WebCore::Icon::paint):
2245         * platform/graphics/chromium/IconChromiumWin.cpp: Added.
2246         (WebCore::Icon::Icon):
2247         (WebCore::Icon::~Icon):
2248         (WebCore::Icon::createIconForFile):
2249         (WebCore::Icon::createIconForFiles):
2250         (WebCore::Icon::paint):
2251         * platform/graphics/chromium/ImageBufferData.h: Added.
2252         * platform/graphics/chromium/ImageChromiumMac.mm: Added.
2253         (WebCore::Image::loadPlatformResource):
2254         (WebCore::BitmapImage::initPlatformData):
2255         (WebCore::BitmapImage::invalidatePlatformData):
2256         * platform/graphics/chromium/MediaPlayerPrivateChromium.h: Added.
2257         * platform/graphics/chromium/PlatformIcon.h: Added.
2258
2259 2009-01-14  Darin Fisher  <darin@chromium.org>
2260
2261         Reviewed by Eric Seidel.
2262
2263         https://bugs.webkit.org/show_bug.cgi?id=23328
2264         Upstream remaining files from platform/chromium/
2265
2266         * platform/chromium/CursorChromium.cpp:
2267         (WebCore::pointerCursor):
2268         (WebCore::crossCursor):
2269         (WebCore::handCursor):
2270         (WebCore::iBeamCursor):
2271         (WebCore::waitCursor):
2272         (WebCore::helpCursor):
2273         (WebCore::eastResizeCursor):
2274         (WebCore::northResizeCursor):
2275         (WebCore::northEastResizeCursor):
2276         (WebCore::northWestResizeCursor):
2277         (WebCore::southResizeCursor):
2278         (WebCore::southEastResizeCursor):
2279         (WebCore::southWestResizeCursor):
2280         (WebCore::westResizeCursor):
2281         (WebCore::northSouthResizeCursor):
2282         (WebCore::eastWestResizeCursor):
2283         (WebCore::northEastSouthWestResizeCursor):
2284         (WebCore::northWestSouthEastResizeCursor):
2285         (WebCore::columnResizeCursor):
2286         (WebCore::rowResizeCursor):
2287         (WebCore::middlePanningCursor):
2288         (WebCore::eastPanningCursor):
2289         (WebCore::northPanningCursor):
2290         (WebCore::northEastPanningCursor):
2291         (WebCore::northWestPanningCursor):
2292         (WebCore::southPanningCursor):
2293         (WebCore::southEastPanningCursor):
2294         (WebCore::southWestPanningCursor):
2295         (WebCore::westPanningCursor):
2296         (WebCore::moveCursor):
2297         (WebCore::verticalTextCursor):
2298         (WebCore::cellCursor):
2299         (WebCore::contextMenuCursor):
2300         (WebCore::aliasCursor):
2301         (WebCore::progressCursor):
2302         (WebCore::noDropCursor):
2303         (WebCore::copyCursor):
2304         (WebCore::noneCursor):
2305         (WebCore::notAllowedCursor):
2306         (WebCore::zoomInCursor):
2307         (WebCore::zoomOutCursor):
2308         * platform/chromium/DragDataRef.h: Added.
2309         * platform/chromium/DragImageChromium.cpp: Added.
2310         (WebCore::dragImageSize):
2311         (WebCore::deleteDragImage):
2312         (WebCore::scaleDragImage):
2313         (WebCore::dissolveDragImageToFraction):
2314         (WebCore::createDragImageFromImage):
2315         (WebCore::createDragImageIconForCachedImage):
2316         * platform/chromium/DragImageRef.h:
2317         * platform/chromium/KeyCodeConversion.h: Added.
2318         * platform/chromium/KeyCodeConversionGtk.cpp: Added.
2319         (WebCore::windowsKeyCodeForKeyEvent):
2320         * platform/chromium/KeyboardCodes.h: Added.
2321         * platform/chromium/KeyboardCodesPosix.h: Added.
2322         (WebCore::):
2323         * platform/chromium/KeyboardCodesWin.h: Added.
2324         (WebCore::):
2325         * platform/chromium/Language.cpp: Added.
2326         (WebCore::defaultLanguage):
2327         * platform/chromium/LinkHashChromium.cpp: Added.
2328         (WebCore::visitedLinkHash):
2329         * platform/chromium/MimeTypeRegistryChromium.cpp: Added.
2330         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
2331         (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
2332         (WebCore::MIMETypeRegistry::getMIMETypeForPath):
2333         (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
2334         (WebCore::MIMETypeRegistry::isSupportedImageResourceMIMEType):
2335         (WebCore::MIMETypeRegistry::isSupportedImageMIMETypeForEncoding):
2336         (WebCore::MIMETypeRegistry::isSupportedJavaScriptMIMEType):
2337         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
2338         (WebCore::MIMETypeRegistry::isSupportedMediaMIMEType):
2339         (WebCore::MIMETypeRegistry::isJavaAppletMIMEType):
2340         (WebCore::dummyHashSet):
2341         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypes):
2342         (WebCore::MIMETypeRegistry::getSupportedImageResourceMIMETypes):
2343         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypesForEncoding):
2344         (WebCore::MIMETypeRegistry::getSupportedNonImageMIMETypes):
2345         (WebCore::MIMETypeRegistry::getSupportedMediaMIMETypes):
2346         * platform/chromium/PasteboardChromium.cpp: Added.
2347         (WebCore::Pasteboard::generalPasteboard):
2348         (WebCore::Pasteboard::Pasteboard):
2349         (WebCore::Pasteboard::clear):
2350         (WebCore::Pasteboard::writeSelection):
2351         (WebCore::Pasteboard::writeURL):
2352         (WebCore::Pasteboard::writeImage):
2353         (WebCore::Pasteboard::canSmartReplace):
2354         (WebCore::Pasteboard::plainText):
2355         (WebCore::Pasteboard::documentFragment):
2356         * platform/chromium/PasteboardPrivate.h:
2357         * platform/chromium/PlatformCursor.h: Added.
2358         (WebCore::PlatformCursor::):
2359         (WebCore::PlatformCursor::PlatformCursor):
2360         (WebCore::PlatformCursor::customImage):
2361         (WebCore::PlatformCursor::hotSpot):
2362         (WebCore::PlatformCursor::type):
2363         * platform/chromium/PlatformKeyboardEventChromium.cpp: Added.
2364         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
2365         (WebCore::PlatformKeyboardEvent::currentCapsLockState):
2366         * platform/chromium/PlatformScreenChromium.cpp: Added.
2367         (WebCore::screenDepth):
2368         (WebCore::screenDepthPerComponent):
2369         (WebCore::screenIsMonochrome):
2370         (WebCore::screenRect):
2371         (WebCore::screenAvailableRect):
2372         * platform/chromium/PlatformWidget.h:
2373         * platform/chromium/PopupMenuChromium.cpp: Added.
2374         (WebCore::PopupListBox::selectedIndex):
2375         (WebCore::PopupListBox::numItems):
2376         (WebCore::PopupListBox::setBaseWidth):
2377         (WebCore::PopupListBox::setTextOnIndexChange):
2378         (WebCore::PopupListBox::setAcceptOnAbandon):
2379         (WebCore::PopupListBox::):
2380         (WebCore::PopupListBox::ListItem::ListItem):
2381         (WebCore::PopupListBox::PopupListBox):
2382         (WebCore::PopupListBox::~PopupListBox):
2383         (WebCore::PopupListBox::disconnectClient):
2384         (WebCore::PopupListBox::scrollToRevealSelection):
2385         (WebCore::constructRelativeMouseEvent):
2386         (WebCore::constructRelativeWheelEvent):
2387         (WebCore::PopupContainer::create):
2388         (WebCore::PopupContainer::PopupContainer):
2389         (WebCore::PopupContainer::~PopupContainer):
2390         (WebCore::PopupContainer::showPopup):
2391         (WebCore::PopupContainer::hidePopup):
2392         (WebCore::PopupContainer::layout):
2393         (WebCore::PopupContainer::handleMouseDownEvent):
2394         (WebCore::PopupContainer::handleMouseMoveEvent):
2395         (WebCore::PopupContainer::handleMouseReleaseEvent):
2396         (WebCore::PopupContainer::handleWheelEvent):
2397         (WebCore::PopupContainer::handleKeyEvent):
2398         (WebCore::PopupContainer::hide):
2399         (WebCore::PopupContainer::paint):
2400         (WebCore::PopupContainer::paintBorder):
2401         (WebCore::PopupContainer::isInterestedInEventForKey):
2402         (WebCore::PopupContainer::show):
2403         (WebCore::PopupContainer::setTextOnIndexChange):
2404         (WebCore::PopupContainer::setAcceptOnAbandon):
2405         (WebCore::PopupContainer::refresh):
2406         (WebCore::PopupListBox::handleMouseDownEvent):
2407         (WebCore::PopupListBox::handleMouseMoveEvent):
2408         (WebCore::PopupListBox::handleMouseReleaseEvent):
2409         (WebCore::PopupListBox::handleWheelEvent):
2410         (WebCore::PopupListBox::isInterestedInEventForKey):
2411         (WebCore::PopupListBox::handleKeyEvent):
2412         (WebCore::PopupListBox::hostWindow):
2413         (WebCore::PopupListBox::invalidateRect):
2414         (WebCore::stripLeadingWhiteSpace):
2415         (WebCore::PopupListBox::typeAheadFind):
2416         (WebCore::PopupListBox::paint):
2417         (WebCore::PopupListBox::paintRow):
2418         (WebCore::PopupListBox::getRowFont):
2419         (WebCore::PopupListBox::abandon):
2420         (WebCore::PopupListBox::pointToRowIndex):
2421         (WebCore::PopupListBox::acceptIndex):
2422         (WebCore::PopupListBox::selectIndex):
2423         (WebCore::PopupListBox::setOriginalIndex):
2424         (WebCore::PopupListBox::getRowHeight):
2425         (WebCore::PopupListBox::getRowBounds):
2426         (WebCore::PopupListBox::invalidateRow):
2427         (WebCore::PopupListBox::scrollToRevealRow):
2428         (WebCore::PopupListBox::isSelectableItem):
2429         (WebCore::PopupListBox::adjustSelectedIndex):
2430         (WebCore::PopupListBox::updateFromElement):
2431         (WebCore::PopupListBox::layout):
2432         (WebCore::PopupListBox::clear):
2433         (WebCore::PopupListBox::isPointInBounds):
2434         (WebCore::PopupMenu::PopupMenu):
2435         (WebCore::PopupMenu::~PopupMenu):
2436         (WebCore::PopupMenu::show):
2437         (WebCore::PopupMenu::hide):
2438         (WebCore::PopupMenu::updateFromElement):
2439         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
2440         * platform/chromium/PopupMenuChromium.h: Added.
2441         (WebCore::PopupContainer::listBox):
2442         * platform/chromium/PopupMenuPrivate.h: Added.
2443         * platform/chromium/SSLKeyGeneratorChromium.cpp: Added.
2444         (WebCore::supportedKeySizes):
2445         * platform/chromium/ScrollbarThemeChromium.cpp: Added.
2446         (WebCore::ScrollbarTheme::nativeTheme):
2447         (WebCore::ScrollbarThemeChromium::ScrollbarThemeChromium):
2448         (WebCore::ScrollbarThemeChromium::~ScrollbarThemeChromium):
2449         (WebCore::ScrollbarThemeChromium::themeChanged):
2450         (WebCore::ScrollbarThemeChromium::hasThumb):
2451         (WebCore::ScrollbarThemeChromium::backButtonRect):
2452         (WebCore::ScrollbarThemeChromium::forwardButtonRect):
2453         (WebCore::ScrollbarThemeChromium::trackRect):
2454         (WebCore::ScrollbarThemeChromium::paintTrackBackground):
2455         (WebCore::ScrollbarThemeChromium::paintTickmarks):
2456         (WebCore::ScrollbarThemeChromium::paintScrollCorner):
2457         (WebCore::ScrollbarThemeChromium::shouldCenterOnThumb):
2458         (WebCore::ScrollbarThemeChromium::buttonSize):
2459         * platform/chromium/ScrollbarThemeChromium.h: Added.
2460         (WebCore::ScrollbarThemeChromium::hasButtons):
2461         * platform/chromium/ScrollbarThemeChromiumLinux.cpp: Added.
2462         (WebCore::ScrollbarThemeChromium::scrollbarThickness):
2463         (WebCore::ScrollbarThemeChromium::invalidateOnMouseEnterExit):
2464         (WebCore::initMozState):
2465         (WebCore::paintScrollbarWidget):
2466         (WebCore::ScrollbarThemeChromium::paintTrackPiece):
2467         (WebCore::ScrollbarThemeChromium::paintButton):
2468         (WebCore::ScrollbarThemeChromium::paintThumb):
2469         * platform/chromium/ScrollbarThemeChromiumWin.cpp:
2470         * platform/chromium/SearchPopupMenuChromium.cpp: Added.
2471         (WebCore::SearchPopupMenu::SearchPopupMenu):
2472         (WebCore::SearchPopupMenu::enabled):
2473         (WebCore::SearchPopupMenu::saveRecentSearches):
2474         (WebCore::SearchPopupMenu::loadRecentSearches):
2475         * platform/chromium/SharedTimerChromium.cpp: Added.
2476         (WebCore::setSharedTimerFiredFunction):
2477         (WebCore::setSharedTimerFireTime):
2478         (WebCore::stopSharedTimer):
2479         * platform/chromium/TemporaryLinkStubs.cpp: Added.
2480         (WebCore::signedPublicKeyAndChallengeString):
2481         (WebCore::getSupportedKeySizes):
2482         (WebCore::KURL::fileSystemPath):
2483         (WebCore::SharedBuffer::createWithContentsOfFile):
2484         (WTF::scheduleDispatchFunctionsOnMainThread):
2485
2486 2009-01-14  Darin Fisher  <darin@chromium.org>
2487
2488         Reviewed by Eric Seidel.
2489
2490         https://bugs.webkit.org/show_bug.cgi?id=23323
2491         Upstream platform/text/chromium/
2492
2493         * platform/text/chromium: Added.
2494         * platform/text/chromium/TextBreakIteratorInternalICUChromium.cpp: Added.
2495         (WebCore::currentTextBreakLocaleID):
2496
2497 2009-01-14  Steve Falkenburg  <sfalken@apple.com>
2498
2499         Update copyright year in version resources.
2500
2501         Reviewed by Adam Roben.
2502
2503         * WebCore.vcproj/QTMovieWin.rc:
2504
2505 2009-01-14  Darin Fisher  <darin@chromium.org>
2506
2507         Reviewed by Darin Adler.
2508
2509         https://bugs.webkit.org/show_bug.cgi?id=23324
2510         Move platform/chromium/EditorChromium.cpp into editing/chromium/
2511
2512         * editing/chromium: Added.
2513         * editing/chromium/EditorChromium.cpp: Copied from platform/chromium/EditorChromium.cpp.
2514         * platform/chromium/EditorChromium.cpp: Removed.
2515
2516 2009-01-14  Darin Fisher  <darin@chromium.org>
2517
2518         Reviewed by Darin Adler.
2519
2520         https://bugs.webkit.org/show_bug.cgi?id=23320
2521         Make it possible to use notImplemented outside of the WebCore namespace
2522
2523         * platform/NotImplemented.h:
2524
2525 2009-01-14  Nigel Tao  <nigel.tao.gnome@gmail.com>
2526
2527         Reviewed by Darin Adler.
2528
2529         - fix https://bugs.webkit.org/show_bug.cgi?id=22476
2530         Check that the document's SecurityOrigin canLoadLocalResources,
2531         when pages try to put NSFilenamesPboardtype data on the clipboard,
2532         by calling event.dataTransfer.setData('URL', 'file:///foo/bar');
2533
2534         Tests: http/tests/security/dataTransfer-set-data-file-url.html
2535                platform/mac/editing/pasteboard/dataTransfer-set-data-file-url.html
2536
2537         * platform/mac/ClipboardMac.mm:
2538         (WebCore::ClipboardMac::setData):
2539
2540 2009-01-14  Dan Bernstein  <mitz@apple.com>
2541
2542         Reviewed by John Sullivan.
2543
2544         - update copyright
2545
2546         * Info.plist:
2547
2548 2009-01-14  Alexey Proskuryakov  <ap@webkit.org>
2549
2550         Reviewed by Darin Adler.
2551
2552         https://bugs.webkit.org/show_bug.cgi?id=23316
2553         Application cache updating always fails with an assertion
2554
2555         Test: http/tests/appcache/update-cache.html
2556
2557         * loader/appcache/ApplicationCacheGroup.cpp:
2558         (WebCore::ApplicationCacheGroup::documentLoaderDestroyed): Correctly handle the case where
2559         multiple caches survive the last DocumentLoader destruction, preventing a crash in release
2560         builds.
2561         (WebCore::ApplicationCacheGroup::setNewestCache): Removed a bogus assertion.
2562
2563 2009-01-14  Alexey Proskuryakov  <ap@webkit.org>
2564
2565         Release build fix.
2566
2567         * loader/appcache/ApplicationCacheStorage.cpp:
2568         (WebCore::ApplicationCacheStorage::storeUpdatedType): Use ASSERT_UNUSED.
2569
2570 2009-01-13  Alexey Proskuryakov  <ap@webkit.org>
2571
2572         Reviewed by Anders Carlsson.
2573
2574         Test: http/tests/appcache/xhr-foreign-resource.html
2575
2576         https://bugs.webkit.org/show_bug.cgi?id=23256
2577         Implement application cache foreign entries
2578
2579         * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache):
2580         Removed a misplaced check for foreign resources that prevented them from being loaded altogether.
2581
2582         * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::selectCache):
2583         If a document that was loaded from appcache should be associated with a different cache,
2584         mark the resource as foreign in the original cache and start over.
2585
2586         * loader/appcache/ApplicationCacheResource.cpp: (WebCore::ApplicationCacheResource::addType):
2587         This function can now be called after a cache is stored, so it no longer asserts the opposite.
2588
2589         * loader/appcache/ApplicationCacheStorage.cpp:
2590         (WebCore::ApplicationCacheStorage::cacheGroupForURL): Fix database pass to correctly ignore
2591         in-memory caches that were already rejected.
2592         (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL): Ditto.
2593         (WebCore::ApplicationCacheStorage::storeUpdatedType): Added a function that updates type of
2594         an already stored cached resource.
2595
2596         * loader/appcache/ApplicationCacheStorage.h: Added storeUpdatedType().
2597
2598 2009-01-13  Mark Rowe  <mrowe@apple.com>
2599
2600         Fix the Tiger WebCore build after r39880.
2601
2602         * editing/Editor.cpp:
2603         (WebCore::Editor::markBadGrammar):
2604         * loader/mac/DocumentLoaderMac.cpp:
2605         (WebCore::DocumentLoader::schedule):
2606         (WebCore::DocumentLoader::unschedule):
2607         * platform/mac/PasteboardMac.mm:
2608         (WebCore::Pasteboard::writeSelection):
2609         * platform/mac/WebCoreObjCExtras.mm:
2610         (WebCoreObjCFinalizeOnMainThread):
2611         * platform/network/mac/ResourceHandleMac.mm:
2612         (WebCore::ResourceHandle::schedule):
2613         (WebCore::ResourceHandle::unschedule):
2614
2615 2009-01-13  Darin Adler  <darin@apple.com>
2616
2617         Reviewed by Sam Weinig.
2618
2619         Bug 23102: turn on unused parameter warnings in WebCore
2620         https://bugs.webkit.org/show_bug.cgi?id=23102
2621
2622         Last step: Turn on the warning and fix the last few instances.
2623
2624         * Configurations/Base.xcconfig: Removed -Wno-unused-parameter from
2625         WARNING_CFLAGS_BASE, so the unused parameter warning will fire.
2626
2627         * bindings/js/JSDOMWindowBase.cpp:
2628         (jsDOMWindowBaseMessageChannel): Separate the version for use when
2629         CHANNEL_MESSAGING is turned off, so we can omit the argument names.
2630         It would be better to not even have this property in that case,
2631         rather than having the function return undefined, but I don't know
2632         how to do that with the bindings script.
2633
2634         * bindings/scripts/CodeGeneratorJS.pm: Leave out argument names in
2635         functions where they're not used (the SVG context, and the property
2636         name in the index getter). Use UNUSED_PARAM where arguments are
2637         sometimes not used.
2638
2639         * bridge/runtime_object.cpp:
2640         (JSC::RuntimeObjectImp::put): Use UNUSED_PARAM for non-QT.
2641
2642         * css/MediaQueryEvaluator.cpp:
2643         (WebCore::animationMediaFeatureEval): Omit argument names for style and frame.
2644         (WebCore::transitionMediaFeatureEval): Ditto.
2645         (WebCore::transform_2dMediaFeatureEval): Ditto.
2646         (WebCore::transform_3dMediaFeatureEval): Ditto.
2647
2648         * dom/make_names.pl: Leave out the createdByParser property name in
2649         cases where it's not used.
2650
2651         * inspector/JavaScriptDebugServer.cpp:
2652         (WebCore::JavaScriptDebugServer::setJavaScriptPaused): Separate the
2653         version for the Mac platform so we can omit the argument names.
2654
2655         * loader/EmptyClients.h:
2656         (WebCore::EmptyChromeClient::contentsSizeChanged): Removed argument name.
2657
2658         * loader/FrameLoaderClient.h:
2659         (WebCore::FrameLoaderClient::shouldUsePluginDocument): Commented out
2660         argument name.
2661
2662         * loader/icon/IconFetcher.cpp:
2663         (WebCore::IconFetcher::didReceiveResponse): Use ASSERT_UNUSED.
2664         (WebCore::IconFetcher::didReceiveData): Ditto.
2665         (WebCore::IconFetcher::didFinishLoading): Ditto.
2666         (WebCore::IconFetcher::didFail): Ditto.
2667
2668         * platform/KURL.cpp:
2669         (WebCore::assertProtocolIsGood): Separate out the NDEBUG version so
2670         we can omit the argument names.
2671
2672         * platform/Timer.cpp:
2673         (WebCore::TimerHeapIterator::checkConsistency): Use ASSERT_UNUSED.
2674
2675         * platform/graphics/GlyphBuffer.h:
2676         (WebCore::GlyphBuffer::offsetAt): Use UNUSED_PARAM in the non-WIN case.
2677         (WebCore::GlyphBuffer::add): Use UNUSED_PARAM in the non-CAIRO case.
2678
2679         * platform/graphics/cg/ImageSourceCG.cpp:
2680         (WebCore::ImageSource::clear): Removed argument name.
2681
2682         * rendering/SVGRenderSupport.cpp:
2683         (WebCore::prepareToRenderSVGContent): Use UNUSED_PARAM when SVG_FILTERS
2684         is not enabled.
2685         (WebCore::finishRenderSVGContent): Ditto.
2686
2687 2009-01-13  Chris Marrin  <cmarrin@apple.com>
2688
2689         Reviewed by Darin Adler.
2690
2691         Implemented https://bugs.webkit.org/show_bug.cgi?id=23298
2692         Simple fix to convertToLength to catch style==null cases
2693
2694         * css/CSSStyleSelector.cpp:
2695         (WebCore::convertToLength):
2696
2697 2009-01-13  Eric Seidel  <eric@webkit.org>
2698
2699         Reviewed by Mark Rowe.
2700
2701         Speculative fix for an Uninitialized Memory Read (UMR)
2702         seen by purify in chormium's equivalent V8 file.
2703
2704         * bindings/js/JSSVGPODTypeWrapper.h:
2705         (WebCore::PODTypeWrapperCacheInfo::PODTypeWrapperCacheInfo):
2706
2707 2009-01-13  Dimitri Glazkov  <dglazkov@chromium.org>
2708
2709         Reviewed by Eric Seidel.
2710
2711         Land portions of platform/graphics/chromium.
2712         https://bugs.webkit.org/show_bug.cgi?id=23297
2713
2714         * platform/graphics/chromium/FontCustomPlatformData.cpp: Added.
2715         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
2716         (WebCore::FontCustomPlatformData::fontPlatformData):
2717         (WebCore::EOTStream::EOTStream):
2718         (WebCore::EOTStream::read):
2719         (WebCore::readEmbedProc):
2720         (WebCore::createUniqueFontName):
2721         (WebCore::createFontCustomPlatformData):
2722         * platform/graphics/chromium/FontCustomPlatformData.h: Added.
2723         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
2724         * platform/graphics/chromium/FontLinux.cpp: Added.
2725         (WebCore::Font::drawGlyphs):
2726         (WebCore::Font::drawComplexText):
2727         (WebCore::Font::floatWidthForComplexText):
2728         (WebCore::Font::offsetForPositionForComplexText):
2729         (WebCore::Font::selectionRectForComplexText):
2730         * platform/graphics/chromium/FontPlatformData.h: Added.
2731
2732 2009-01-13  Mark Rowe  <mrowe@apple.com>
2733
2734         Rubber-stamped by Oliver Hunt.
2735
2736         Don't copy DOMStringList.idl into the framework bundle.
2737
2738         * WebCore.xcodeproj/project.pbxproj:
2739
2740 2009-01-13  Christian Dywan  <christian@twotoasts.de>
2741
2742         Build fix, StorageEvent is only defined if we have DOM_STORAGE
2743
2744         * dom/Document.cpp:
2745         (WebCore::Document::createEvent): Conditionalize StorageEvent
2746
2747 2009-01-13  Darin Adler  <darin@apple.com>
2748
2749         Reviewed by Adele Peterson.
2750
2751         Bug 23277: space bar scrolls the page when typed in any text field
2752         https://bugs.webkit.org/show_bug.cgi?id=23277
2753         rdar://problem/6490249
2754
2755         There's already a regression test for this, since bug 16421 was the same problem, but on
2756         Mac. The regression test is fast/events/space-scroll-event.html, so I won't write a new one.
2757
2758         This bug doesn't affect Mac because the canEdit check in -[WebHTMLView insertText:] prevents
2759         a text input event from being generated at all. That difference may in itself be a bug, but
2760         the only symptom is that you get text input events in more cases on platforms other than Mac.
2761
2762         * page/EventHandler.cpp:
2763         (WebCore::EventHandler::handleTextInputEvent): Return whether the event's default was
2764         handled, not the result of the dispatchEvent function, which indicates only whether the
2765         default behavior was prevented, not if the default behavior did some insertion. This fix
2766         makes it so the keyboard event handler can detect that no space was inserted and know that
2767         the space bar keypress event can be treated as a scrolling command.
2768         (WebCore::EventHandler::defaultKeyboardEventHandler): Handle the keypress event, not the
2769         keydown event. Without the change above, making this change would have restored the old
2770         behavior, reintroducing bug 22913 where the space bar doesn't scroll at all on Windows.
2771
2772 2009-01-13  Darin Fisher  <darin@chromium.org>
2773
2774         Reviewed by Eric Seidel.
2775
2776         Landing portions of platform/chromium/, taken from here:
2777         http://src.chromium.org/viewvc/chrome/trunk/deps/third_party/WebKit/WebCore/platform/chromium/
2778
2779         * platform/chromium/ChromiumBridge.h: Added.
2780         * platform/chromium/ChromiumDataObject.cpp: Added.
2781         (WebCore::ChromiumDataObject::clear):
2782         (WebCore::ChromiumDataObject::hasData):
2783         * platform/chromium/ChromiumDataObject.h: Added.
2784         (WebCore::ChromiumDataObject::create):
2785         (WebCore::ChromiumDataObject::ChromiumDataObject):
2786         * platform/chromium/ClipboardChromium.cpp: Added.
2787         (WebCore::):
2788         (WebCore::clipboardTypeFromMIMEType):
2789         (WebCore::ClipboardChromium::ClipboardChromium):
2790         (WebCore::ClipboardChromium::create):
2791         (WebCore::ClipboardChromium::clearData):
2792         (WebCore::ClipboardChromium::clearAllData):
2793         (WebCore::ClipboardChromium::getData):
2794         (WebCore::ClipboardChromium::setData):
2795         (WebCore::ClipboardChromium::types):
2796         (WebCore::ClipboardChromium::setDragImage):
2797         (WebCore::ClipboardChromium::setDragImageElement):
2798         (WebCore::ClipboardChromium::createDragImage):
2799         (WebCore::imageToMarkup):
2800         (WebCore::getCachedImage):
2801         (WebCore::writeImageToDataObject):
2802         (WebCore::ClipboardChromium::declareAndWriteDragImage):
2803         (WebCore::ClipboardChromium::writeURL):
2804         (WebCore::ClipboardChromium::writeRange):
2805         (WebCore::ClipboardChromium::hasData):
2806         * platform/chromium/ClipboardChromium.h: Added.
2807         (WebCore::ClipboardChromium::~ClipboardChromium):
2808         (WebCore::ClipboardChromium::dataObject):
2809         * platform/chromium/ClipboardUtilitiesChromium.cpp: Added.
2810         (WebCore::replaceNewlinesWithWindowsStyleNewlines):
2811         (WebCore::replaceNBSPWithSpace):
2812         (WebCore::urlToMarkup):
2813         * platform/chromium/ClipboardUtilitiesChromium.h: Added.
2814         * platform/chromium/ContextMenuChromium.cpp: Added.
2815         (WebCore::ContextMenu::ContextMenu):
2816         (WebCore::ContextMenu::~ContextMenu):
2817         (WebCore::ContextMenu::itemCount):
2818         (WebCore::ContextMenu::insertItem):
2819         (WebCore::ContextMenu::appendItem):
2820         (WebCore::ContextMenu::itemWithAction):
2821         (WebCore::ContextMenu::itemAtIndex):
2822         (WebCore::ContextMenu::setPlatformDescription):
2823         (WebCore::ContextMenu::platformDescription):
2824         (WebCore::ContextMenu::releasePlatformDescription):
2825         * platform/chromium/ContextMenuItemChromium.cpp: Added.
2826         (WebCore::ContextMenuItem::ContextMenuItem):
2827         (WebCore::ContextMenuItem::~ContextMenuItem):
2828         (WebCore::ContextMenuItem::releasePlatformDescription):
2829         (WebCore::ContextMenuItem::type):
2830         (WebCore::ContextMenuItem::action):
2831         (WebCore::ContextMenuItem::title):
2832         (WebCore::ContextMenuItem::platformSubMenu):
2833         (WebCore::ContextMenuItem::setType):
2834         (WebCore::ContextMenuItem::setAction):
2835         (WebCore::ContextMenuItem::setTitle):
2836         (WebCore::ContextMenuItem::setSubMenu):
2837         (WebCore::ContextMenuItem::setChecked):
2838         (WebCore::ContextMenuItem::setEnabled):
2839         (WebCore::ContextMenuItem::enabled):
2840         * platform/chromium/CursorChromium.cpp: Added.
2841         (WebCore::Cursor::Cursor):
2842         (WebCore::Cursor::~Cursor):
2843         (WebCore::Cursor::operator=):
2844         (WebCore::pointerCursor):
2845         (WebCore::crossCursor):
2846         (WebCore::handCursor):
2847         (WebCore::iBeamCursor):
2848         (WebCore::waitCursor):
2849         (WebCore::helpCursor):
2850         (WebCore::eastResizeCursor):
2851         (WebCore::northResizeCursor):
2852         (WebCore::northEastResizeCursor):
2853         (WebCore::northWestResizeCursor):
2854         (WebCore::southResizeCursor):
2855         (WebCore::southEastResizeCursor):
2856         (WebCore::southWestResizeCursor):
2857         (WebCore::westResizeCursor):
2858         (WebCore::northSouthResizeCursor):
2859         (WebCore::eastWestResizeCursor):
2860         (WebCore::northEastSouthWestResizeCursor):
2861         (WebCore::northWestSouthEastResizeCursor):
2862         (WebCore::columnResizeCursor):
2863         (WebCore::rowResizeCursor):
2864         (WebCore::middlePanningCursor):
2865         (WebCore::eastPanningCursor):
2866         (WebCore::northPanningCursor):
2867         (WebCore::northEastPanningCursor):
2868         (WebCore::northWestPanningCursor):
2869         (WebCore::southPanningCursor):
2870         (WebCore::southEastPanningCursor):
2871         (WebCore::southWestPanningCursor):
2872         (WebCore::westPanningCursor):
2873         (WebCore::moveCursor):
2874         (WebCore::verticalTextCursor):
2875         (WebCore::cellCursor):
2876         (WebCore::contextMenuCursor):
2877         (WebCore::aliasCursor):
2878         (WebCore::progressCursor):
2879         (WebCore::noDropCursor):
2880         (WebCore::copyCursor):
2881         (WebCore::noneCursor):
2882         (WebCore::notAllowedCursor):
2883         (WebCore::zoomInCursor):
2884         (WebCore::zoomOutCursor):
2885         (WebCore::grabCursor):
2886         (WebCore::grabbingCursor):
2887         * platform/chromium/DragDataChromium.cpp: Added.
2888         (WebCore::containsHTML):
2889         (WebCore::DragData::createClipboard):
2890         (WebCore::DragData::containsURL):
2891         (WebCore::DragData::asURL):
2892         (WebCore::DragData::containsFiles):
2893         (WebCore::DragData::asFilenames):
2894         (WebCore::DragData::containsPlainText):
2895         (WebCore::DragData::asPlainText):
2896         (WebCore::DragData::containsColor):
2897         (WebCore::DragData::canSmartReplace):
2898         (WebCore::DragData::containsCompatibleContent):
2899         (WebCore::DragData::asFragment):
2900         (WebCore::DragData::asColor):
2901         * platform/chromium/EditorChromium.cpp: Added.
2902         (WebCore::Editor::newGeneralClipboard):
2903         * platform/chromium/FileChooserChromium.cpp: Added.
2904         (WebCore::FileChooser::basenameForWidth):
2905         * platform/chromium/FileSystemChromium.cpp: Added.
2906         (WebCore::deleteFile):
2907         (WebCore::deleteEmptyDirectory):
2908         (WebCore::getFileSize):
2909         (WebCore::getFileModificationTime):
2910         (WebCore::directoryName):
2911         (WebCore::pathByAppendingComponent):
2912         (WebCore::makeAllDirectories):
2913         (WebCore::fileExists):
2914         * platform/chromium/FileSystemChromiumLinux.cpp: Added.
2915         (WebCore::pathGetFileName):
2916         * platform/chromium/FileSystemChromiumMac.mm: Added.
2917         (WebCore::pathGetFileName):
2918         * platform/chromium/FileSystemChromiumWin.cpp: Added.
2919         (WebCore::pathGetFileName):
2920         * platform/chromium/FramelessScrollView.cpp: Added.
2921         (WebCore::FramelessScrollView::~FramelessScrollView):
2922         (WebCore::FramelessScrollView::invalidateScrollbarRect):
2923         (WebCore::FramelessScrollView::isActive):
2924         (WebCore::FramelessScrollView::invalidateRect):
2925         (WebCore::FramelessScrollView::hostWindow):
2926         (WebCore::FramelessScrollView::windowClipRect):
2927         (WebCore::FramelessScrollView::paintContents):
2928         (WebCore::FramelessScrollView::contentsResized):
2929         (WebCore::FramelessScrollView::visibleContentsResized):
2930         * platform/chromium/FramelessScrollView.h: Added.
2931         (WebCore::FramelessScrollView::FramelessScrollView):
2932         (WebCore::FramelessScrollView::client):
2933         (WebCore::FramelessScrollView::setClient):
2934         * platform/chromium/FramelessScrollViewClient.h: Added.
2935         * platform/chromium/ScrollbarThemeChromiumWin.cpp: Added.
2936         (WebCore::):
2937         (WebCore::ScrollbarThemeChromium::scrollbarThickness):
2938         (WebCore::ScrollbarThemeChromium::invalidateOnMouseEnterExit):
2939         (WebCore::ScrollbarThemeChromium::paintTrackPiece):
2940         (WebCore::ScrollbarThemeChromium::paintButton):
2941         (WebCore::ScrollbarThemeChromium::paintThumb):
2942         (WebCore::ScrollbarThemeChromium::getThemeState):
2943         (WebCore::ScrollbarThemeChromium::getThemeArrowState):
2944         (WebCore::ScrollbarThemeChromium::getClassicThemeState):
2945         * platform/chromium/SoundChromiumPosix.cpp: Added.
2946         (WebCore::systemBeep):
2947         * platform/chromium/SoundChromiumWin.cpp: Added.
2948         (WebCore::systemBeep):
2949         * platform/chromium/SystemTimeChromium.cpp: Added.
2950         (WebCore::currentTime):
2951         (WebCore::userIdleTime):
2952         * platform/chromium/WidgetChromium.cpp: Added.
2953         (WebCore::Widget::Widget):
2954         (WebCore::Widget::~Widget):
2955         (WebCore::Widget::show):
2956         (WebCore::Widget::hide):
2957         (WebCore::Widget::setCursor):
2958         (WebCore::Widget::paint):
2959         (WebCore::Widget::setFocus):
2960         (WebCore::Widget::setIsSelected):
2961         (WebCore::Widget::frameRect):
2962         (WebCore::Widget::setFrameRect):
2963         * platform/chromium/WindowsVersion.cpp: Added.
2964         (WebCore::isVistaOrNewer):
2965         * platform/chromium/WindowsVersion.h: Added.
2966
2967 2009-01-13  Tor Arne Vestbø  <tavestbo@trolltech.com>
2968
2969         Reviewed by Simon Hausmann.
2970
2971         [Qt] Make sure media elements dispatch the 'loaded' event
2972         
2973         We assume that when Phonon goes into paused state that we have the
2974         complete media file. Once we do media loading ourselves we can
2975         distinguish between loading the first frame and the complete media.
2976
2977         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
2978         (WebCore::MediaPlayerPrivate::updateStates):
2979
2980 2009-01-13  Tor Arne Vestbø  <tavestbo@trolltech.com>
2981
2982         Reviewed by Simon Hausmann.
2983
2984         [Qt] Add more verbose error output when loading NPAPI plugins
2985
2986         * plugins/qt/PluginPackageQt.cpp:
2987         (WebCore::PluginPackage::load):
2988
2989 2009-01-13  Simon Hausmann  <simon.hausmann@nokia.com>
2990
2991         Reviewed by Tor Arne Vestbø.
2992
2993         Fix crash in the Qt port when deleting a popup from within a
2994         JavaScript onchange handler.
2995
2996         * platform/qt/QWebPopup.cpp:
2997         (WebCore::QWebPopup::QWebPopup): Perform the activation of the
2998         combobox item (i.e. the call to the JS handler) from a different
2999         call stack by using a queued connection.
3000
3001 2009-01-12  Holger Hans Peter Freyther  <zecke@selfish.org>
3002
3003         Reviewed by Tor Arne Vestbø.
3004
3005         [GIO] Make sure to untef the GFile and the GInputStream on destruction
3006
3007         Make sure to call cleanupGioOperation from the ResourceHandleInternal
3008         d'tor. Change the signature of cleanupGioOperation so we can do the
3009         cleanup of GIO next to the cleanup of SOUP.
3010
3011         This is happening with many tests from dom/html/level2/html e.g.
3012         LayoutTests/dom/html/level2/html/HTMLBodyElement07.html.
3013
3014         * platform/network/soup/ResourceHandleSoup.cpp:
3015         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
3016         (WebCore::cleanupGioOperation):
3017         (WebCore::closeCallback):
3018         (WebCore::readCallback):
3019         (WebCore::openCallback):
3020         (WebCore::queryInfoCallback):
3021
3022 2009-01-12  Holger Hans Peter Freyther  <zecke@selfish.org>
3023
3024         Reviewed by Tor Arne Vestbø.
3025
3026         [GIO] Attach the ResourceHandle to the GObject and get it from the GObject
3027
3028         https://bugs.webkit.org/show_bug.cgi?id=23116 discussed with Benjamin Otte
3029
3030         Sometimes it is not possible to cancel a pending GIO operation and the
3031         callback might be invoked with a pointer to an already destructed
3032         ResourceHandle. To avoid this issue we will attach the ResourceHandle
3033         to the GObject* and in the callback attempt to get the ResourceHandle
3034         from the GObject*. If no ResourceHandle is attached we silently fail
3035         as the cleanup has been already done.
3036
3037         This is happening with many tests from dom/html/level2/html e.g.
3038         LayoutTests/dom/html/level2/html/HTMLBodyElement07.html.
3039
3040         * platform/network/soup/ResourceHandleSoup.cpp:
3041         (WebCore::cleanupGioOperation):
3042         (WebCore::closeCallback):
3043         (WebCore::readCallback):
3044         (WebCore::openCallback):
3045         (WebCore::queryInfoCallback):
3046         (WebCore::ResourceHandle::startGio):
3047
3048 2009-01-12  Holger Hans Peter Freyther  <zecke@selfish.org>
3049
3050         Reviewed by Tor Arne Vestbø.
3051
3052         [GIO] Invoke cleanupGioOperation before calling didFail to avoid crashes
3053
3054         https://bugs.webkit.org/show_bug.cgi?id=23116
3055
3056         The ResourceHandle becomes invalid (e.g. got destructed) from within
3057         the invocation of didFail. Avoid this by cleaning up everything before
3058         calling didFail and simply return afterwards.
3059
3060         This is happening with many tests from dom/html/level2/html e.g.
3061         LayoutTests/dom/html/level2/html/HTMLBodyElement07.html.
3062
3063         * platform/network/soup/ResourceHandleSoup.cpp:
3064         (WebCore::readCallback):
3065         (WebCore::openCallback):
3066         (WebCore::queryInfoCallback):
3067
3068 2009-01-13  Tor Arne Vestbø  <tavestbo@trolltech.com>
3069
3070         Reviewed by Simon Hausmann.
3071
3072         Change how themes adjust mediaControls.css to match html4/quicks.css
3073         
3074         Instead of providing the full style sheet, the themes provide extra
3075         overrides to the default style defined in UserAgentStyleSheetsData.
3076         
3077         https://bugs.webkit.org/show_bug.cgi?id=23210
3078         
3079         Also, merge WebKitResources.qrc and WebCoreResources.qrc to speed up
3080         build time for the Qt port.
3081
3082         * Resources/WebKitResources.qrc: Removed. Merged into WebCore.qrc
3083         * WebCore.pro:
3084         * WebCore.qrc: Added.
3085         * css/CSSStyleSelector.cpp:
3086         (WebCore::CSSStyleSelector::styleForElement):
3087         * css/qt/mediaControls-extras.css: Rename from html4-adjustments-qt.css
3088         * platform/qt/RenderThemeQt.cpp:
3089         (WebCore::RenderThemeQt::extraMediaControlsStyleSheet):
3090         * platform/qt/RenderThemeQt.h:
3091         * platform/qt/WebCoreResources.qrc: Removed.
3092         * platform/qt/html4-adjustments-qt.css: Rename to mediaControls-extras.css
3093         * rendering/RenderTheme.cpp:
3094         * rendering/RenderTheme.h:
3095         (WebCore::RenderTheme::extraMediaControlsStyleSheet):
3096
3097 2009-01-12  Gavin Barraclough  <barraclough@apple.com>
3098
3099         Reviewed by Oliver Hunt.
3100
3101         Deprecate JSValuePtr::getNumber() - two ways to get a number should  be enough.
3102
3103         * bindings/js/JSSQLTransactionCustom.cpp:
3104         (WebCore::JSSQLTransaction::executeSql):
3105         * bindings/objc/WebScriptObject.mm:
3106         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
3107
3108 2009-01-12  Chris Marrin  <cmarrin@apple.com>
3109
3110         Reviewed by Dan Bernstein.
3111
3112         Fixed https://bugs.webkit.org/show_bug.cgi?id=22919
3113
3114         I added a common getElapsedTime() function to AnimationBase which uses a combination of
3115         the techniques from KeyframeAnimation and AnimationBase to compute elapsedTime in all
3116         states.
3117
3118         * page/animation/AnimationBase.cpp:
3119         (WebCore::AnimationBase::progress):
3120         (WebCore::AnimationBase::getElapsedTime):
3121         * page/animation/AnimationBase.h:
3122         * page/animation/KeyframeAnimation.cpp:
3123         (WebCore::KeyframeAnimation::animate):
3124
3125 2009-01-12  Robert Blaut  <webkit@blaut.biz>
3126
3127         Reviewed by Darin Adler
3128
3129         Fix for <https://bugs.webkit.org/show_bug.cgi?id=22096>
3130         Bug 22096: REGRESSION (r35879) scrolldelay is counted in seconds 
3131         instead of miliseconds
3132
3133         Test: fast/css/webkit-marquee-speed-unit-in-quirksmode.html
3134
3135         * css/CSSParser.cpp:
3136         (WebCore::CSSParser::validUnit): treat unitless values in quirks mode 
3137         as miliseconds instead of seconds.
3138
3139 2009-01-12  David Hyatt  <hyatt@apple.com>
3140
3141         Apply the same idea as the previous fix but for matched declarations.
3142
3143         Reviewed by Dan Bernstein
3144
3145         * css/CSSStyleSelector.h:
3146
3147 2009-01-12  Brady Eidson  <beidson@apple.com>
3148
3149         Reviewed by Darin Adler
3150
3151         <rdar://problem/6468274> - Track Non-get requests in global history
3152
3153         * WebCore.base.exp:
3154
3155         * history/HistoryItem.cpp:
3156         (WebCore::HistoryItem::HistoryItem):
3157         * history/HistoryItem.h:
3158         (WebCore::HistoryItem::lastVisitWasHTTPNonGet):
3159         (WebCore::HistoryItem::setLastVisitWasHTTPNonGet):
3160
3161 2009-01-12  Kevin Ollivier  <kevino@theolliviers.com>
3162
3163         !ENABLE(SVG_FONTS) build fix. Move defaultUnitsPerEm into a non-SVG header
3164         so it can be used by all builds.
3165         
3166         * platform/graphics/Font.h:
3167         * platform/graphics/SimpleFontData.cpp:
3168         * svg/SVGFontFaceElement.cpp:
3169         * svg/SVGFontFaceElement.h:
3170
3171 2009-01-12  Kevin Ollivier  <kevino@theolliviers.com>
3172
3173         wx build typo fix.
3174
3175         * platform/graphics/wx/TransformationMatrixWx.cpp:
3176         (WebCore::TransformationMatrix::TransformationMatrix):
3177
3178 2009-01-12  David Hyatt  <hyatt@apple.com>
3179
3180         Make sure the set of matched rules has a reserved capacity of 32.  This prevents remalloc thrash as
3181         elements are matched, since the Vector is shrinking and growing over and over.  1% PLT speedup.
3182
3183         Reviewed by Oliver Hunt
3184
3185         * css/CSSStyleSelector.h:
3186
3187 2009-01-12  David Hyatt  <hyatt@apple.com>
3188
3189         Optimize Element::attributeChanged to just check if accessibility is enabled up front before looking at the
3190         two accessibility-related attributes.  This avoids the rest of the code for all attributes on the PLT.
3191         Tiny speedup.
3192
3193         Reviewed by Oliver Hunt
3194
3195         * dom/Element.cpp:
3196         (WebCore::Element::attributeChanged):
3197
3198 2009-01-12  David Hyatt  <hyatt@apple.com>
3199
3200         Optimize the retrieval of line height.  If the document is not using any first-line rules, just immediately
3201         default to the normal case.  Tiny speedup on PLT.
3202
3203         Reviewed by Oliver Hunt
3204
3205         * rendering/RenderFlow.cpp:
3206         (WebCore::RenderFlow::lineHeight):
3207
3208 2009-01-12  David Hyatt  <hyatt@apple.com>
3209
3210         Fix 0.6% regression in PLT.  Make sure not to waste time updating NSScrollView's can blit on scroll state
3211         in the ScrollView constructor, since this is always going to be properly updated by FrameView anyway.
3212
3213         Reviewed by Oliver Hunt
3214
3215         * platform/ScrollView.cpp:
3216         (WebCore::ScrollView::ScrollView):
3217
3218 2009-01-12  Simon Fraser  <simon.fraser@apple.com>
3219
3220         Reviewed by Dan Bernstein
3221
3222         https://bugs.webkit.org/show_bug.cgi?id=23273
3223
3224         In RenderBox::repaintLayerRectsForImage(), the repaint rect does not have
3225         to be computed in absolute coordintes. Instead, we compute a repaintRect
3226         relative to the RenderObject, which can repaint itself.
3227         
3228         * rendering/RenderBox.cpp:
3229         (WebCore::RenderBox::repaintLayerRectsForImage):
3230
3231 2009-01-12  Simon Fraser  <simon.fraser@apple.com>
3232
3233         Reviewed by Dan Bernstein
3234
3235         https://bugs.webkit.org/show_bug.cgi?id=23220
3236
3237         Merge layoutDelta into LayoutState. This requires that we
3238         push even when layoutState is disabled, so that layoutDelta
3239         can still be stored.
3240
3241         * rendering/LayoutState.cpp:
3242         (WebCore::LayoutState::LayoutState):
3243         * rendering/LayoutState.h:
3244         (WebCore::LayoutState::LayoutState):
3245         * rendering/RenderBlock.cpp:
3246         (WebCore::RenderBlock::layoutBlock):
3247         (WebCore::RenderBlock::layoutBlockChildren):
3248         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
3249         * rendering/RenderBox.cpp:
3250         (WebCore::RenderBox::localToAbsolute):
3251         (WebCore::RenderBox::absoluteToLocal):
3252         (WebCore::RenderBox::computeAbsoluteRepaintRect):
3253         * rendering/RenderFlexibleBox.cpp:
3254         (WebCore::RenderFlexibleBox::layoutBlock):
3255         * rendering/RenderFlow.cpp:
3256         (WebCore::RenderFlow::absoluteClippedOverflowRect):
3257         * rendering/RenderLayer.cpp:
3258         (WebCore::RenderLayer::updateLayerPositions):
3259         * rendering/RenderTableCell.cpp:
3260         (WebCore::RenderTableCell::computeAbsoluteRepaintRect):
3261         (WebCore::RenderTableCell::localToAbsolute):
3262         * rendering/RenderView.cpp:
3263         (WebCore::RenderView::pushLayoutState):
3264         * rendering/RenderView.h:
3265         (WebCore::RenderView::layoutDelta):
3266         (WebCore::RenderView::addLayoutDelta):
3267         (WebCore::RenderView::doingFullRepaint):
3268         (WebCore::RenderView::pushLayoutState):
3269         (WebCore::RenderView::popLayoutState):
3270         (WebCore::RenderView::layoutStateEnabled):
3271         (WebCore::RenderView::layoutState):
3272         (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
3273         (WebCore::LayoutStateMaintainer::push):
3274         (WebCore::LayoutStateMaintainer::pop):
3275         * rendering/bidi.cpp:
3276         (WebCore::RenderBlock::layoutInlineChildren):
3277
3278 2009-01-12  Julien Chaffraix  <jchaffraix@pleyo.com>
3279
3280         Reviewed by Holger Freyther.
3281
3282         [Qt] Build fix after turning the fontCache to a singleton
3283         https://bugs.webkit.org/show_bug.cgi?id=23253
3284
3285         Add a stub implementation for WebCore::fontCache() and FontCache::FontCache().
3286
3287         * platform/graphics/qt/FontCacheQt.cpp:
3288         (WebCore::fontCache):
3289         (WebCore::FontCache::FontCache):
3290
3291 2009-01-12  Eric Roman  <eroman@chromium.org>
3292  
3293         Reviewed by Darin Adler.
3294  
3295         Fix some bugs with Selection::appendTrailingWhitespace().
3296         https://bugs.webkit.org/show_bug.cgi?id=23232
3297  
3298         Test: editing/selection/doubleclick-whitespace-crash.html
3299  
3300         * editing/Selection.cpp:
3301         (WebCore::makeSearchRange):
3302         (WebCore::Selection::appendTrailingWhitespace):
3303
3304 2009-01-12  Dimitri Glazkov  <dglazkov@chromium.org>
3305
3306         Reviewed by Eric Seidel.
3307
3308         Add the first pieces of platform/graphics/chromium
3309         https://bugs.webkit.org/show_bug.cgi?id=23257
3310
3311         * platform/graphics/chromium/ColorChromium.cpp: Added.
3312         (WebCore::focusRingColor):
3313         * platform/graphics/chromium/FontCacheChromiumWin.cpp: Added.
3314         (WebCore::FontCache::platformInit):
3315         (WebCore::isStringASCII):
3316         (WebCore::LookupAltName):
3317         (WebCore::FontCodepage::):
3318         (WebCore::FontCodepage::if):
3319         (WebCore::createFontIndirectAndGetWinName):
3320         (WebCore::fontContainsCharacter):
3321         (WebCore::FontCache::getFontDataForCharacters):
3322         (WebCore::FontCache::alternateFamilyName):
3323         (WebCore::FontCache::getSimilarFontPlatformData):
3324         (WebCore::FontCache::getLastResortFallbackFont):
3325         (WebCore::toGDIFontWeight):
3326         (WebCore::FontCache::getGenericFontForScript):
3327         (WebCore::FillLogFont):
3328         (WebCore::FontCache::fontExists):
3329         (WebCore::TraitsInFamilyProcData::TraitsInFamilyProcData):
3330         (WebCore::traitsInFamilyEnumProc):
3331         (WebCore::FontCache::getTraitsInFamily):
3332         (WebCore::FontCache::createFontPlatformData):
3333         * platform/graphics/chromium/FontCacheLinux.cpp: Added.
3334         (WebCore::FontCache::platformInit):
3335         (WebCore::FontCache::getFontDataForCharacters):
3336         (WebCore::FontCache::alternateFamilyName):
3337         (WebCore::FontCache::getSimilarFontPlatformData):
3338         (WebCore::FontCache::getLastResortFallbackFont):
3339         (WebCore::FontCache::getTraitsInFamily):
3340         (WebCore::FontCache::createFontPlatformData):
3341         (WebCore::FontCache::getGenericFontForScript):
3342         * platform/graphics/chromium/FontChromiumWin.cpp: Added.
3343         (WebCore::windowsCanHandleTextDrawing):
3344         (WebCore::skiaDrawText):
3345         (WebCore::PaintSkiaText):
3346         (WebCore::Font::drawGlyphs):
3347         (WebCore::Font::selectionRectForComplexText):
3348         (WebCore::Font::drawComplexText):
3349         (WebCore::Font::floatWidthForComplexText):
3350         (WebCore::Font::offsetForPositionForComplexText):
3351
3352 2009-01-12  Darin Fisher  <darin@chromium.org>
3353
3354         Reviewed by Eric Seidel.
3355
3356         https://bugs.webkit.org/show_bug.cgi?id=23254
3357         Upstream page/chromium/
3358
3359         * page/chromium/AXObjectCacheChromium.cpp: Added.
3360         (WebCore::AXObjectCache::detachWrapper):
3361         (WebCore::AXObjectCache::attachWrapper):
3362         (WebCore::AXObjectCache::postNotification):
3363         (WebCore::AXObjectCache::postNotificationToElement):
3364         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
3365         * page/chromium/AccessibilityObjectChromium.cpp:
3366         * page/chromium/AccessibilityObjectWrapper.h:
3367         * page/chromium/ChromeClientChromium.h: Added.
3368         * page/chromium/DragControllerChromium.cpp: Added.
3369         (WebCore::DragController::dragOperation):
3370         (WebCore::DragController::isCopyKeyDown):
3371         (WebCore::DragController::maxDragImageSize):
3372         (WebCore::DragController::cleanupAfterSystemDrag):
3373         * page/chromium/EventHandlerChromium.cpp: Added.
3374         (WebCore::EventHandler::passMousePressEventToSubframe):
3375         (WebCore::EventHandler::passMouseMoveEventToSubframe):
3376         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
3377         (WebCore::EventHandler::passWheelEventToWidget):
3378         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
3379         (WebCore::EventHandler::passMouseDownEventToWidget):
3380         (WebCore::EventHandler::tabsToAllControls):
3381         (WebCore::EventHandler::eventActivatedView):
3382         (WebCore::EventHandler::createDraggingClipboard):
3383         (WebCore::EventHandler::focusDocumentView):
3384         (WebCore::EventHandler::accessKeyModifiers):
3385         * page/chromium/FrameChromium.cpp: Added.
3386         (WebCore::computePageRectsForFrame):
3387         (WebCore::Frame::dragImageForSelection):
3388         * page/chromium/FrameChromium.h: Added.
3389
3390 2009-01-12  Dimitri Glazkov  <dglazkov@chromium.org>
3391
3392         Reviewed by Darin Adler.
3393
3394         https://bugs.webkit.org/show_bug.cgi?id=22936
3395         Fix uninitialized memory read error, reported by Purify.
3396
3397         * platform/graphics/SimpleFontData.cpp:
3398         (WebCore::SimpleFontData::SimpleFontData): Added initializer for
3399             m_unitsPerEm using cDefaultUnitsPerEm constant.
3400         * svg/SVGFontFaceElement.cpp:
3401         (WebCore::SVGFontFaceElement::unitsPerEm): Replaced literal value with
3402             the constant.
3403         * svg/SVGFontFaceElement.h: Added cDefaultUnitsPerEm constant.
3404
3405 2009-01-12  Adam Treat  <adam.treat@torchmobile.com>
3406
3407         Reviewed by George Staikos.
3408
3409         Do not set fixedLayoutSize for anything other than the mainframe during
3410         the transition as this is a page level state like the viewportSize.
3411
3412         * loader/FrameLoaderClient.cpp:
3413         (WebCore::FrameLoaderClient::transitionToCommittedForNewPage):
3414
3415 2009-01-12  Julien Chaffraix  <jchaffraix@pleyo.com>
3416
3417         Reviewed by Darin Adler.
3418
3419         Bug 22861: Turn the FontCache into a singleton
3420         https://bugs.webkit.org/show_bug.cgi?id=22861
3421
3422         - Added fontCache() to get the global FontCache.
3423
3424         - Made all the methods in FontCache instance method.
3425
3426         - Changed FontCache:: to fontCache()-> in WebCore.
3427
3428         * WebCore.base.exp: Now export fontCache().
3429         * css/CSSFontFaceSource.cpp:
3430         (WebCore::CSSFontFaceSource::getFontData):
3431         * css/CSSFontSelector.cpp:
3432         (WebCore::CSSFontSelector::CSSFontSelector):
3433         (WebCore::CSSFontSelector::~CSSFontSelector):
3434         (WebCore::CSSFontSelector::addFontFaceRule):
3435         (WebCore::fontDataForGenericFamily):
3436         * platform/graphics/Font.cpp:
3437         (WebCore::Font::glyphDataForCharacter):
3438         * platform/graphics/FontCache.cpp:
3439         (WebCore::fontCache):
3440         (WebCore::FontCache::FontCache):
3441         * platform/graphics/FontCache.h:
3442         * platform/graphics/FontFallbackList.cpp:
3443         (WebCore::FontFallbackList::FontFallbackList):
3444         (WebCore::FontFallbackList::invalidate):
3445         (WebCore::FontFallbackList::releaseFontData):
3446         (WebCore::FontFallbackList::fontDataAt):
3447         (WebCore::FontFallbackList::fontDataForCharacters):
3448         (WebCore::FontFallbackList::setPlatformFont):
3449         * platform/graphics/SimpleFontData.cpp:
3450         (WebCore::SimpleFontData::~SimpleFontData):
3451         * platform/graphics/mac/FontCacheMac.mm:
3452         (WebCore::fontCacheATSNotificationCallback):
3453         * platform/graphics/mac/SimpleFontDataMac.mm:
3454         (WebCore::SimpleFontData::smallCapsFontData):
3455         * platform/graphics/win/FontCacheWin.cpp:
3456         (WebCore::getCJKCodePageMasks):
3457         * platform/graphics/win/SimpleFontDataWin.cpp:
3458         (WebCore::SimpleFontData::containsCharacters):
3459
3460 2009-01-11  Darin Adler  <darin@apple.com>
3461
3462         Reviewed by Dan Bernstein.
3463
3464         Bug 23247: createSVGPathSegCurvetoCubicSmoothAbs doesn't set y2 correctly
3465         https://bugs.webkit.org/show_bug.cgi?id=23247
3466
3467         Also fix problems where partially parsed paths will still have an effect
3468         rather than failing parsing and being ignored.
3469
3470         Test: dom/path-segments.html
3471
3472         * platform/graphics/Path.h:
3473         (WebCore::Path::swap): Added.
3474
3475         * svg/SVGParserUtilities.cpp:
3476         (WebCore::SVGPathParser::parseSVG): Removed unneeded special case for empty string.
3477         (WebCore::PathBuilder::build): Changed to not modify the path if parsing fails.
3478         (WebCore::SVGPathSegListBuilder::build): Changed to not modify the segment list if
3479         parsing fails.
3480         (WebCore::SVGPathSegListBuilder::svgMoveTo): Put the path element into the vector,
3481         not directly into the segment list.
3482         (WebCore::SVGPathSegListBuilder::svgLineTo): Ditto.
3483         (WebCore::SVGPathSegListBuilder::svgLineToHorizontal): Ditto.
3484         (WebCore::SVGPathSegListBuilder::svgLineToVertical): Ditto.
3485         (WebCore::SVGPathSegListBuilder::svgCurveToCubic): Ditto.
3486         (WebCore::SVGPathSegListBuilder::svgCurveToCubicSmooth): Ditto.
3487         (WebCore::SVGPathSegListBuilder::svgCurveToQuadratic): Ditto.
3488         (WebCore::SVGPathSegListBuilder::svgCurveToQuadraticSmooth): Ditto.
3489         (WebCore::SVGPathSegListBuilder::svgArcTo): Ditto.
3490         (WebCore::SVGPathSegListBuilder::svgClosePath): Ditto.
3491
3492         * svg/SVGPathSegCurvetoCubicSmooth.h:
3493         (WebCore::SVGPathSegCurvetoCubicSmooth::SVGPathSegCurvetoCubicSmooth):
3494         Set y2 to y2, not to y.
3495
3496 2009-01-11  Darin Adler  <darin@apple.com>
3497
3498         Reviewed by Oliver Hunt.
3499
3500         Bug 23102: turn on unused parameter warnings in WebCore
3501         https://bugs.webkit.org/show_bug.cgi?id=23102
3502
3503         Fourth step: Remove arguments entirely in the many cases where they are not
3504         needed at all. This step is a little less mechanical than the earlier ones.
3505
3506         * dom/DOMImplementation.cpp:
3507         (WebCore::DOMImplementation::isXMLMIMEType): Pass TextCaseSensitive when creating
3508         the regular expression, since we already specify a-zA-Z in our expression.
3509
3510         * dom/Document.cpp:
3511         (WebCore::Document::databaseThread): Don't pass in the document when creating
3512         a DatabaseThread.
3513
3514         * dom/Element.cpp:
3515         (WebCore::Element::createRareData): Don't pass the element when creating an
3516         ElementRareData.
3517         (WebCore::Element::detach): Don't pass the element when calling resetComputedStyle.
3518         (WebCore::Element::recalcStyle): Ditto.
3519
3520         * dom/ElementRareData.h: Remove the unused Element* from the constructor and
3521         the resetComputedStyle function.
3522
3523         * dom/EventTargetNode.cpp:
3524         (WebCore::EventTargetNode::dispatchEvent): Don't pass ec to dispatchGenericEvent.
3525         (WebCore::EventTargetNode::dispatchGenericEvent): Remove the unused ec argument.
3526         (WebCore::EventTargetNode::dispatchWindowEvent): Don't pass ec to dispatchGenericEvent.
3527         * dom/EventTargetNode.h: Remove the ExceptionCode& argument form disaptchGenericEvent.
3528
3529         * editing/ApplyStyleCommand.cpp: Remove the empty removeBlockStyle function.
3530         (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode): Remove the unused
3531         start and end arguments.
3532         (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAtBoundaries): Don't pass start
3533         and end to pushDownTextDecorationStyleAroundNode.
3534
3535         * editing/ApplyStyleCommand.h: Remove the empty removeBlockStyle function. Removed the
3536         unused start and end arguments from pushDownTextDecorationStyleAroundNode.
3537
3538         * editing/htmlediting.cpp: Removed include of unused RegularExpression.h header.
3539
3540         * html/HTMLTokenizer.cpp:
3541         (WebCore::Token::addAttribute): Removed unused Document* argument.
3542         (WebCore::HTMLTokenizer::parseTag): Don't pass document to addAttribute.
3543
3544         * html/HTMLTokenizer.h: Removed unused Document* argument to to addAttribute.
3545
3546         * page/DOMWindow.cpp:
3547         (WebCore::DOMWindow::localStorage): Don't pass the frame to storageArea.
3548
3549         * page/DragController.cpp:
3550         (WebCore::DragController::dragIsMove): Removed unused DragData argument.
3551         (WebCore::DragController::performDrag): Call concludeEditDrag rather than
3552         concludeDrag.
3553         (WebCore::DragController::tryDocumentDrag): Don't pass dragData to dragIsMove.
3554         (WebCore::DragController::concludeEditDrag): Renamed to make it clear this
3555         should only be called for edit drags. Removed the action mask argument. Also
3556         changed dragIsMove call sites to not pass dragData.
3557
3558         * page/DragController.h: Updated for above changes and tweaked comment format.
3559
3560         * page/Frame.cpp:
3561         (WebCore::createRegExpForLabels): Pass TextCaseSensitive and TextCaseInsensitive
3562         when creating regular expressions for clarity. Call match instead of search,
3563         since both do the same thing except for with negative start offsets, and none
3564         used here are negative.
3565         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
3566
3567         * page/Page.h: Moved TextCaseSensitivity from here to StringImpl.h in platform.
3568
3569         * page/mac/AccessibilityObjectWrapper.mm:
3570         (AXAttributeStringSetHeadingLevel): Removed unused object argument.
3571         (AXAttributedStringAppendText): Ditto.
3572         (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]): Ditto.
3573
3574         * page/mac/FrameMac.mm:
3575         (WebCore::regExpForLabels): Pass TextCaseSensitive and TextCaseInsensitive
3576         when creating regular expressions for clarity. Call match instead of search,
3577         since both do the same thing except for with negative start offsets, and none
3578         used here are negative.
3579         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
3580
3581         * platform/graphics/SegmentedFontData.cpp:
3582         (WebCore::SegmentedFontData::containsCharacter): Added.
3583         (WebCore::SegmentedFontData::containsCharacters): Updated to check all characters
3584         instead of just the first one, using containsCharacter.
3585
3586         * platform/graphics/SegmentedFontData.h: Made more members private.
3587         Added containsCharacter function member.
3588
3589         * platform/mac/DragImageMac.mm:
3590         (WebCore::dragImageSize): Changed to use RetainPtr<NSImage> directly instead of
3591         DragImageRef for clarity, since this is platform-specific code.
3592         (WebCore::deleteDragImage): Ditto. Also remove argument name to get rid of unused
3593         variable warning.
3594         (WebCore::scaleDragImage): Ditto.
3595         (WebCore::dissolveDragImageToFraction): Ditto.