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