Foo::s_info should be Foo::info(), so that you can change how the s_info is actually...
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-08-13  Filip Pizlo  <fpizlo@apple.com>
2
3         Foo::s_info should be Foo::info(), so that you can change how the s_info is actually linked
4         https://bugs.webkit.org/show_bug.cgi?id=119770
5
6         Reviewed by Mark Hahnenberg.
7
8         No new tests because no new behavior.
9
10         * bindings/js/IDBBindingUtilities.cpp:
11         (WebCore::createIDBKeyFromValue):
12         * bindings/js/JSAttrCustom.cpp:
13         (WebCore::JSAttr::visitChildren):
14         * bindings/js/JSAudioTrackCustom.cpp:
15         (WebCore::JSAudioTrack::visitChildren):
16         * bindings/js/JSAudioTrackListCustom.cpp:
17         (WebCore::JSAudioTrackList::visitChildren):
18         * bindings/js/JSBlobCustom.cpp:
19         (WebCore::JSBlobConstructor::constructJSBlob):
20         * bindings/js/JSCSSRuleCustom.cpp:
21         (WebCore::JSCSSRule::visitChildren):
22         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
23         (WebCore::JSCSSStyleDeclaration::visitChildren):
24         (WebCore::JSCSSStyleDeclaration::getOwnPropertyNames):
25         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
26         (WebCore::toHTMLCanvasStyle):
27         * bindings/js/JSCanvasRenderingContextCustom.cpp:
28         (WebCore::JSCanvasRenderingContext::visitChildren):
29         * bindings/js/JSDOMBinding.cpp:
30         (WebCore::valueToDate):
31         * bindings/js/JSDOMBinding.h:
32         (WebCore::DOMConstructorObject::createStructure):
33         (WebCore::getDOMStructure):
34         (WebCore::toRefPtrNativeArray):
35         (WebCore::getStaticValueSlotEntryWithoutCaching):
36         * bindings/js/JSDOMFormDataCustom.cpp:
37         (WebCore::toHTMLFormElement):
38         (WebCore::JSDOMFormData::append):
39         * bindings/js/JSDOMGlobalObject.cpp:
40         (WebCore::JSDOMGlobalObject::finishCreation):
41         (WebCore::JSDOMGlobalObject::scriptExecutionContext):
42         (WebCore::JSDOMGlobalObject::visitChildren):
43         * bindings/js/JSDOMGlobalObject.h:
44         (WebCore::JSDOMGlobalObject::info):
45         (WebCore::JSDOMGlobalObject::createStructure):
46         (WebCore::getDOMConstructor):
47         * bindings/js/JSDOMStringListCustom.cpp:
48         (WebCore::toDOMStringList):
49         * bindings/js/JSDOMWindowBase.cpp:
50         (WebCore::JSDOMWindowBase::finishCreation):
51         (WebCore::toJSDOMWindow):
52         * bindings/js/JSDOMWindowBase.h:
53         (WebCore::JSDOMWindowBase::createStructure):
54         * bindings/js/JSDOMWindowCustom.cpp:
55         (WebCore::JSDOMWindow::visitChildren):
56         (WebCore::JSDOMWindow::getOwnPropertySlot):
57         (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
58         (WebCore::toDOMWindow):
59         * bindings/js/JSDOMWindowShell.cpp:
60         (WebCore::JSDOMWindowShell::finishCreation):
61         * bindings/js/JSDOMWindowShell.h:
62         (WebCore::JSDOMWindowShell::createStructure):
63         * bindings/js/JSEventTargetCustom.cpp:
64         (WebCore::toEventTarget):
65         * bindings/js/JSHistoryCustom.cpp:
66         (WebCore::JSHistory::getOwnPropertySlotDelegate):
67         (WebCore::JSHistory::getOwnPropertyDescriptorDelegate):
68         * bindings/js/JSImageConstructor.cpp:
69         (WebCore::JSImageConstructor::finishCreation):
70         * bindings/js/JSImageConstructor.h:
71         (WebCore::JSImageConstructor::createStructure):
72         * bindings/js/JSInjectedScriptHostCustom.cpp:
73         (WebCore::JSInjectedScriptHost::isHTMLAllCollection):
74         (WebCore::JSInjectedScriptHost::type):
75         (WebCore::JSInjectedScriptHost::functionDetails):
76         * bindings/js/JSInspectorFrontendHostCustom.cpp:
77         (WebCore::populateContextMenuItems):
78         * bindings/js/JSLocationCustom.cpp:
79         (WebCore::JSLocation::getOwnPropertySlotDelegate):
80         (WebCore::JSLocation::getOwnPropertyDescriptorDelegate):
81         (WebCore::JSLocation::putDelegate):
82         * bindings/js/JSMessageChannelCustom.cpp:
83         (WebCore::JSMessageChannel::visitChildren):
84         * bindings/js/JSMessagePortCustom.cpp:
85         (WebCore::JSMessagePort::visitChildren):
86         * bindings/js/JSNodeCustom.cpp:
87         (WebCore::JSNode::pushEventHandlerScope):
88         (WebCore::JSNode::visitChildren):
89         * bindings/js/JSNodeFilterCustom.cpp:
90         (WebCore::JSNodeFilter::visitChildren):
91         (WebCore::toNodeFilter):
92         * bindings/js/JSNodeIteratorCustom.cpp:
93         (WebCore::JSNodeIterator::visitChildren):
94         * bindings/js/JSPluginElementFunctions.h:
95         (WebCore::pluginElementCustomGetOwnPropertySlot):
96         (WebCore::pluginElementCustomGetOwnPropertyDescriptor):
97         * bindings/js/JSSVGElementInstanceCustom.cpp:
98         (WebCore::JSSVGElementInstance::visitChildren):
99         * bindings/js/JSSharedWorkerCustom.cpp:
100         (WebCore::JSSharedWorker::visitChildren):
101         * bindings/js/JSStyleSheetCustom.cpp:
102         (WebCore::JSStyleSheet::visitChildren):
103         * bindings/js/JSTextTrackCueCustom.cpp:
104         (WebCore::JSTextTrackCue::visitChildren):
105         * bindings/js/JSTextTrackCustom.cpp:
106         (WebCore::JSTextTrack::visitChildren):
107         * bindings/js/JSTextTrackListCustom.cpp:
108         (WebCore::JSTextTrackList::visitChildren):
109         * bindings/js/JSTrackCustom.cpp:
110         (WebCore::toTrack):
111         * bindings/js/JSTreeWalkerCustom.cpp:
112         (WebCore::JSTreeWalker::visitChildren):
113         * bindings/js/JSVideoTrackCustom.cpp:
114         (WebCore::JSVideoTrack::visitChildren):
115         * bindings/js/JSVideoTrackListCustom.cpp:
116         (WebCore::JSVideoTrackList::visitChildren):
117         * bindings/js/JSWebGLRenderingContextCustom.cpp:
118         (WebCore::JSWebGLRenderingContext::visitChildren):
119         (WebCore::JSWebGLRenderingContext::getAttachedShaders):
120         (WebCore::JSWebGLRenderingContext::getProgramParameter):
121         (WebCore::JSWebGLRenderingContext::getShaderParameter):
122         (WebCore::JSWebGLRenderingContext::getUniform):
123         (WebCore::dataFunctionf):
124         (WebCore::dataFunctioni):
125         (WebCore::dataFunctionMatrix):
126         * bindings/js/JSWorkerGlobalScopeBase.cpp:
127         (WebCore::JSWorkerGlobalScopeBase::finishCreation):
128         (WebCore::toJSDedicatedWorkerGlobalScope):
129         (WebCore::toJSSharedWorkerGlobalScope):
130         * bindings/js/JSWorkerGlobalScopeBase.h:
131         (WebCore::JSWorkerGlobalScopeBase::createStructure):
132         * bindings/js/JSWorkerGlobalScopeCustom.cpp:
133         (WebCore::JSWorkerGlobalScope::visitChildren):
134         * bindings/js/JSXMLHttpRequestCustom.cpp:
135         (WebCore::JSXMLHttpRequest::visitChildren):
136         (WebCore::JSXMLHttpRequest::send):
137         * bindings/js/JSXPathResultCustom.cpp:
138         (WebCore::JSXPathResult::visitChildren):
139         * bindings/js/ScriptDebugServer.cpp:
140         (WebCore::ScriptDebugServer::dispatchDidPause):
141         * bindings/js/ScriptState.cpp:
142         (WebCore::domWindowFromScriptState):
143         (WebCore::scriptExecutionContextFromScriptState):
144         * bindings/js/SerializedScriptValue.cpp:
145         (WebCore::CloneSerializer::isArray):
146         (WebCore::CloneSerializer::dumpArrayBufferView):
147         (WebCore::CloneSerializer::dumpIfTerminal):
148         (WebCore::CloneSerializer::serialize):
149         (WebCore::CloneDeserializer::CloneDeserializer):
150         (WebCore::CloneDeserializer::readArrayBufferView):
151         * bindings/objc/DOM.mm:
152         (+[DOMNode _nodeFromJSWrapper:]):
153         * bindings/objc/DOMUtility.mm:
154         (JSC::createDOMWrapper):
155         * bindings/objc/WebScriptObject.mm:
156         (+[WebScriptObject _convertValueToObjcValue:JSC::originRootObject:rootObject:]):
157         * bindings/scripts/CodeGeneratorJS.pm:
158         (GenerateGetOwnPropertySlotBody):
159         (GenerateGetOwnPropertyDescriptorBody):
160         (GenerateHeader):
161         (GenerateParametersCheckExpression):
162         (GenerateImplementation):
163         (GenerateParametersCheck):
164         (GenerateConstructorDeclaration):
165         (GenerateConstructorHelperMethods):
166         * bindings/scripts/test/JS/JSFloat64Array.cpp:
167         (WebCore::JSFloat64ArrayConstructor::finishCreation):
168         (WebCore::JSFloat64Array::finishCreation):
169         (WebCore::JSFloat64Array::getOwnPropertySlot):
170         (WebCore::JSFloat64Array::getOwnPropertyDescriptor):
171         (WebCore::JSFloat64Array::getOwnPropertySlotByIndex):
172         (WebCore::JSFloat64Array::put):
173         (WebCore::JSFloat64Array::putByIndex):
174         (WebCore::JSFloat64Array::getOwnPropertyNames):
175         (WebCore::jsFloat64ArrayPrototypeFunctionFoo):
176         (WebCore::jsFloat64ArrayPrototypeFunctionSet):
177         (WebCore::JSFloat64Array::getByIndex):
178         (WebCore::toFloat64Array):
179         * bindings/scripts/test/JS/JSFloat64Array.h:
180         (WebCore::JSFloat64Array::createStructure):
181         (WebCore::JSFloat64ArrayPrototype::createStructure):
182         (WebCore::JSFloat64ArrayConstructor::createStructure):
183         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
184         (WebCore::JSTestActiveDOMObjectConstructor::finishCreation):
185         (WebCore::JSTestActiveDOMObject::finishCreation):
186         (WebCore::JSTestActiveDOMObject::getOwnPropertySlot):
187         (WebCore::JSTestActiveDOMObject::getOwnPropertyDescriptor):
188         (WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunction):
189         (WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):
190         (WebCore::toTestActiveDOMObject):
191         * bindings/scripts/test/JS/JSTestActiveDOMObject.h:
192         (WebCore::JSTestActiveDOMObject::createStructure):
193         (WebCore::JSTestActiveDOMObjectPrototype::createStructure):
194         (WebCore::JSTestActiveDOMObjectConstructor::createStructure):
195         * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
196         (WebCore::JSTestCustomNamedGetterConstructor::finishCreation):
197         (WebCore::JSTestCustomNamedGetter::finishCreation):
198         (WebCore::JSTestCustomNamedGetter::getOwnPropertySlot):
199         (WebCore::JSTestCustomNamedGetter::getOwnPropertyDescriptor):
200         (WebCore::JSTestCustomNamedGetter::getOwnPropertySlotByIndex):
201         (WebCore::jsTestCustomNamedGetterPrototypeFunctionAnotherFunction):
202         (WebCore::toTestCustomNamedGetter):
203         * bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
204         (WebCore::JSTestCustomNamedGetter::createStructure):
205         (WebCore::JSTestCustomNamedGetterPrototype::createStructure):
206         (WebCore::JSTestCustomNamedGetterConstructor::createStructure):
207         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
208         (WebCore::JSTestEventConstructorConstructor::finishCreation):
209         (WebCore::JSTestEventConstructor::finishCreation):
210         (WebCore::JSTestEventConstructor::getOwnPropertySlot):
211         (WebCore::JSTestEventConstructor::getOwnPropertyDescriptor):
212         (WebCore::toTestEventConstructor):
213         * bindings/scripts/test/JS/JSTestEventConstructor.h:
214         (WebCore::JSTestEventConstructor::createStructure):
215         (WebCore::JSTestEventConstructorPrototype::createStructure):
216         (WebCore::JSTestEventConstructorConstructor::createStructure):
217         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
218         (WebCore::JSTestEventTargetConstructor::finishCreation):
219         (WebCore::JSTestEventTarget::finishCreation):
220         (WebCore::JSTestEventTarget::getOwnPropertySlot):
221         (WebCore::JSTestEventTarget::getOwnPropertyDescriptor):
222         (WebCore::JSTestEventTarget::getOwnPropertySlotByIndex):
223         (WebCore::JSTestEventTarget::getOwnPropertyNames):
224         (WebCore::jsTestEventTargetPrototypeFunctionItem):
225         (WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
226         (WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
227         (WebCore::jsTestEventTargetPrototypeFunctionDispatchEvent):
228         (WebCore::JSTestEventTarget::visitChildren):
229         (WebCore::JSTestEventTarget::indexGetter):
230         (WebCore::toTestEventTarget):
231         * bindings/scripts/test/JS/JSTestEventTarget.h:
232         (WebCore::JSTestEventTarget::createStructure):
233         (WebCore::JSTestEventTargetPrototype::createStructure):
234         (WebCore::JSTestEventTargetConstructor::createStructure):
235         * bindings/scripts/test/JS/JSTestException.cpp:
236         (WebCore::JSTestExceptionConstructor::finishCreation):
237         (WebCore::JSTestException::finishCreation):
238         (WebCore::JSTestException::getOwnPropertySlot):
239         (WebCore::JSTestException::getOwnPropertyDescriptor):
240         (WebCore::toTestException):
241         * bindings/scripts/test/JS/JSTestException.h:
242         (WebCore::JSTestException::createStructure):
243         (WebCore::JSTestExceptionPrototype::createStructure):
244         (WebCore::JSTestExceptionConstructor::createStructure):
245         * bindings/scripts/test/JS/JSTestInterface.cpp:
246         (WebCore::JSTestInterfaceConstructor::finishCreation):
247         (WebCore::JSTestInterface::finishCreation):
248         (WebCore::JSTestInterface::getOwnPropertySlot):
249         (WebCore::JSTestInterface::getOwnPropertyDescriptor):
250         (WebCore::JSTestInterface::put):
251         (WebCore::JSTestInterface::putByIndex):
252         (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod1):
253         (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
254         (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod3):
255         (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod1):
256         (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
257         (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod3):
258         (WebCore::toTestInterface):
259         * bindings/scripts/test/JS/JSTestInterface.h:
260         (WebCore::JSTestInterface::createStructure):
261         (WebCore::JSTestInterfacePrototype::createStructure):
262         (WebCore::JSTestInterfaceConstructor::createStructure):
263         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
264         (WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):
265         (WebCore::JSTestMediaQueryListListener::finishCreation):
266         (WebCore::JSTestMediaQueryListListener::getOwnPropertySlot):
267         (WebCore::JSTestMediaQueryListListener::getOwnPropertyDescriptor):
268         (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
269         (WebCore::toTestMediaQueryListListener):
270         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
271         (WebCore::JSTestMediaQueryListListener::createStructure):
272         (WebCore::JSTestMediaQueryListListenerPrototype::createStructure):
273         (WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
274         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
275         (WebCore::JSTestNamedConstructorConstructor::finishCreation):
276         (WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):
277         (WebCore::JSTestNamedConstructor::finishCreation):
278         (WebCore::JSTestNamedConstructor::getOwnPropertySlot):
279         (WebCore::JSTestNamedConstructor::getOwnPropertyDescriptor):
280         (WebCore::toTestNamedConstructor):
281         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
282         (WebCore::JSTestNamedConstructor::createStructure):
283         (WebCore::JSTestNamedConstructorPrototype::createStructure):
284         (WebCore::JSTestNamedConstructorConstructor::createStructure):
285         (WebCore::JSTestNamedConstructorNamedConstructor::createStructure):
286         * bindings/scripts/test/JS/JSTestNode.cpp:
287         (WebCore::JSTestNodeConstructor::finishCreation):
288         (WebCore::JSTestNode::finishCreation):
289         (WebCore::JSTestNode::getOwnPropertySlot):
290         (WebCore::JSTestNode::getOwnPropertyDescriptor):
291         (WebCore::JSTestNode::visitChildren):
292         * bindings/scripts/test/JS/JSTestNode.h:
293         (WebCore::JSTestNode::createStructure):
294         (WebCore::JSTestNodePrototype::createStructure):
295         (WebCore::JSTestNodeConstructor::createStructure):
296         * bindings/scripts/test/JS/JSTestObj.cpp:
297         (WebCore::JSTestObjConstructor::finishCreation):
298         (WebCore::JSTestObj::finishCreation):
299         (WebCore::JSTestObj::getOwnPropertySlot):
300         (WebCore::JSTestObj::getOwnPropertyDescriptor):
301         (WebCore::JSTestObj::put):
302         (WebCore::jsTestObjPrototypeFunctionVoidMethod):
303         (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
304         (WebCore::jsTestObjPrototypeFunctionByteMethod):
305         (WebCore::jsTestObjPrototypeFunctionByteMethodWithArgs):
306         (WebCore::jsTestObjPrototypeFunctionOctetMethod):
307         (WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgs):
308         (WebCore::jsTestObjPrototypeFunctionLongMethod):
309         (WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
310         (WebCore::jsTestObjPrototypeFunctionObjMethod):
311         (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
312         (WebCore::jsTestObjPrototypeFunctionMethodWithSequenceArg):
313         (WebCore::jsTestObjPrototypeFunctionMethodReturningSequence):
314         (WebCore::jsTestObjPrototypeFunctionMethodWithEnumArg):
315         (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
316         (WebCore::jsTestObjPrototypeFunctionSerializedValue):
317         (WebCore::jsTestObjPrototypeFunctionOptionsObject):
318         (WebCore::jsTestObjPrototypeFunctionMethodWithException):
319         (WebCore::jsTestObjPrototypeFunctionCustomMethod):
320         (WebCore::jsTestObjPrototypeFunctionCustomMethodWithArgs):
321         (WebCore::jsTestObjPrototypeFunctionAddEventListener):
322         (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
323         (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoid):
324         (WebCore::jsTestObjPrototypeFunctionWithScriptStateObj):
325         (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoidException):
326         (WebCore::jsTestObjPrototypeFunctionWithScriptStateObjException):
327         (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext):
328         (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptState):
329         (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateObjException):
330         (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateWithSpaces):
331         (WebCore::jsTestObjPrototypeFunctionWithScriptArgumentsAndCallStack):
332         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
333         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
334         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
335         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalString):
336         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsUndefined):
337         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsNullString):
338         (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
339         (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
340         (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
341         (WebCore::jsTestObjPrototypeFunctionConditionalMethod1):
342         (WebCore::jsTestObjPrototypeFunctionConditionalMethod2):
343         (WebCore::jsTestObjPrototypeFunctionConditionalMethod3):
344         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
345         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
346         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
347         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
348         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
349         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
350         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod7):
351         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod8):
352         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod9):
353         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
354         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod11):
355         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
356         (WebCore::jsTestObjPrototypeFunctionClassMethodWithClamp):
357         (WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
358         (WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
359         (WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
360         (WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
361         (WebCore::jsTestObjPrototypeFunctionConvert1):
362         (WebCore::jsTestObjPrototypeFunctionConvert2):
363         (WebCore::jsTestObjPrototypeFunctionConvert4):
364         (WebCore::jsTestObjPrototypeFunctionConvert5):
365         (WebCore::jsTestObjPrototypeFunctionMutablePointFunction):
366         (WebCore::jsTestObjPrototypeFunctionImmutablePointFunction):
367         (WebCore::jsTestObjPrototypeFunctionOrange):
368         (WebCore::jsTestObjPrototypeFunctionStrictFunction):
369         (WebCore::jsTestObjPrototypeFunctionVariadicStringMethod):
370         (WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethod):
371         (WebCore::jsTestObjPrototypeFunctionVariadicNodeMethod):
372         (WebCore::JSTestObj::visitChildren):
373         (WebCore::toTestObj):
374         * bindings/scripts/test/JS/JSTestObj.h:
375         (WebCore::JSTestObj::createStructure):
376         (WebCore::JSTestObjPrototype::createStructure):
377         (WebCore::JSTestObjConstructor::createStructure):
378         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
379         (WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors):
380         (WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):
381         (WebCore::JSTestOverloadedConstructors::finishCreation):
382         (WebCore::JSTestOverloadedConstructors::getOwnPropertySlot):
383         (WebCore::JSTestOverloadedConstructors::getOwnPropertyDescriptor):
384         (WebCore::toTestOverloadedConstructors):
385         * bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
386         (WebCore::JSTestOverloadedConstructors::createStructure):
387         (WebCore::JSTestOverloadedConstructorsPrototype::createStructure):
388         (WebCore::JSTestOverloadedConstructorsConstructor::createStructure):
389         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
390         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
391         (WebCore::JSTestSerializedScriptValueInterface::finishCreation):
392         (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
393         (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertyDescriptor):
394         (WebCore::JSTestSerializedScriptValueInterface::put):
395         (WebCore::JSTestSerializedScriptValueInterface::visitChildren):
396         (WebCore::toTestSerializedScriptValueInterface):
397         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
398         (WebCore::JSTestSerializedScriptValueInterface::createStructure):
399         (WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
400         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
401         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
402         (WebCore::JSTestTypedefsConstructor::finishCreation):
403         (WebCore::JSTestTypedefs::finishCreation):
404         (WebCore::JSTestTypedefs::getOwnPropertySlot):
405         (WebCore::JSTestTypedefs::getOwnPropertyDescriptor):
406         (WebCore::JSTestTypedefs::put):
407         (WebCore::jsTestTypedefsPrototypeFunctionFunc):
408         (WebCore::jsTestTypedefsPrototypeFunctionSetShadow):
409         (WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArg):
410         (WebCore::jsTestTypedefsPrototypeFunctionNullableArrayArg):
411         (WebCore::jsTestTypedefsPrototypeFunctionFuncWithClamp):
412         (WebCore::jsTestTypedefsPrototypeFunctionImmutablePointFunction):
413         (WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction):
414         (WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction2):
415         (WebCore::jsTestTypedefsPrototypeFunctionMethodWithException):
416         (WebCore::toTestTypedefs):
417         * bindings/scripts/test/JS/JSTestTypedefs.h:
418         (WebCore::JSTestTypedefs::createStructure):
419         (WebCore::JSTestTypedefsPrototype::createStructure):
420         (WebCore::JSTestTypedefsConstructor::createStructure):
421         * bridge/c/CRuntimeObject.cpp:
422         (JSC::Bindings::CRuntimeObject::finishCreation):
423         * bridge/c/CRuntimeObject.h:
424         (JSC::Bindings::CRuntimeObject::createStructure):
425         * bridge/c/c_instance.cpp:
426         (JSC::Bindings::CRuntimeMethod::createStructure):
427         (JSC::Bindings::CRuntimeMethod::finishCreation):
428         (JSC::Bindings::CInstance::invokeMethod):
429         * bridge/c/c_utility.cpp:
430         (JSC::Bindings::convertValueToNPVariant):
431         * bridge/objc/ObjCRuntimeObject.h:
432         (JSC::Bindings::ObjCRuntimeObject::createStructure):
433         * bridge/objc/objc_instance.mm:
434         (ObjCRuntimeMethod::finishCreation):
435         (ObjcInstance::invokeMethod):
436         * bridge/objc/objc_runtime.h:
437         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
438         * bridge/objc/objc_runtime.mm:
439         (JSC::Bindings::ObjcFallbackObjectImp::finishCreation):
440         (JSC::Bindings::callObjCFallbackObject):
441         * bridge/qt/qt_instance.cpp:
442         (JSC::Bindings::QtRuntimeObject::createStructure):
443         (JSC::Bindings::QtInstance::getInstance):
444         * bridge/qt/qt_pixmapruntime.cpp:
445         (JSC::Bindings::assignToHTMLImageElement):
446         (JSC::Bindings::QtPixmapRuntime::toQt):
447         * bridge/qt/qt_runtime.cpp:
448         (JSC::Bindings::isJSUint8Array):
449         (JSC::Bindings::isJSArray):
450         (JSC::Bindings::isJSDate):
451         (JSC::Bindings::isQtObject):
452         (JSC::Bindings::unwrapBoxedPrimitive):
453         (JSC::Bindings::convertQVariantToValue):
454         * bridge/runtime_array.cpp:
455         (JSC::RuntimeArray::finishCreation):
456         * bridge/runtime_array.h:
457         (JSC::RuntimeArray::createStructure):
458         * bridge/runtime_method.cpp:
459         (JSC::RuntimeMethod::finishCreation):
460         (JSC::callRuntimeMethod):
461         * bridge/runtime_method.h:
462         (JSC::RuntimeMethod::createStructure):
463         * bridge/runtime_object.cpp:
464         (JSC::Bindings::RuntimeObject::finishCreation):
465         (JSC::Bindings::callRuntimeObject):
466         (JSC::Bindings::callRuntimeConstructor):
467         * bridge/runtime_object.h:
468         (JSC::Bindings::RuntimeObject::createStructure):
469
470 2013-08-13  Ryosuke Niwa  <rniwa@webkit.org>
471
472         REGRESSION(r150187): Safari fails to render allrecipe.com comment popups
473         https://bugs.webkit.org/show_bug.cgi?id=119780
474
475         Reviewed by Benjamin Poulain.
476
477         The bug was caused by SelectorDataList::executeFastPathForIdSelector not verifying that
478         elements found by getAllElementsById are descendents of rootNode when there are multiple
479         elements of the same id. This resulted in querySelector and querySelectorAll of an element
480         returning nodes outside of the element.
481
482         Fixed the bug by checking this condition when we have multiple elements of the same id.
483
484         Test: fast/selectors/querySelector-id-with-multiple-elements-with-same-id.html
485
486         * dom/SelectorQuery.cpp:
487         (WebCore::SelectorDataList::executeFastPathForIdSelector):
488
489 2013-08-12  Ryosuke Niwa  <rniwa@webkit.org>
490
491         Fix orphan needsLayout state in RenderTextControlSingleLine
492         https://bugs.webkit.org/show_bug.cgi?id=119726
493
494         Reviewed by Kent Tamura.
495
496         Merge https://chromium.googlesource.com/chromium/blink/+/c0aec52ef348b2be0c882f8646fe3cf537831f59
497
498         We should mark the renderer for containerElement, which wraps innerTextElement and innerBlockElement
499         in cases of input[type=search] and input[type=number], dirty.
500
501         * rendering/RenderTextControlSingleLine.cpp:
502         (WebCore::setNeedsLayoutOnAncestors):
503         (WebCore::RenderTextControlSingleLine::layout):
504
505 2013-08-13  Sam Weinig  <sam@webkit.org>
506
507         [Re-land] Cleanup MediaQueryListListener
508         https://bugs.webkit.org/show_bug.cgi?id=119664
509
510         Reviewed by Andreas Kling.
511
512         Make MediaQueryListListener a proper WebIDL callback.
513
514         * CMakeLists.txt:
515         * DerivedSources.cpp:
516         * DerivedSources.make:
517         * DerivedSources.pri:
518         * GNUmakefile.list.am:
519         * Target.pri:
520         * WebCore.vcxproj/WebCore.vcxproj:
521         * WebCore.vcxproj/WebCore.vcxproj.filters:
522         * WebCore.xcodeproj/project.pbxproj:
523         Update project files.
524
525         * bindings/scripts/CodeGeneratorJS.pm:
526         (GenerateCallbackHeader):
527         (GenerateCallbackImplementation):
528         (JSValueToNative):
529         * bindings/scripts/IDLAttributes.txt:
530         Add support for CallbackNeedsOperatorEqual, which adds an operator==.
531
532         * css/MediaAllInOne.cpp:
533         Remove MediaQueryListListener.cpp.
534
535         * css/MediaQueryListListener.cpp:
536         Removed.
537
538         * css/MediaQueryListListener.h:
539         (WebCore::MediaQueryListListener::~MediaQueryListListener):
540         (WebCore::MediaQueryListListener::MediaQueryListListener):
541         * css/MediaQueryListListener.idl:
542         Convert to a proper WebIDL callback.
543
544         * css/MediaQueryMatcher.cpp:
545         (WebCore::MediaQueryMatcher::Listener::evaluate):
546         (WebCore::MediaQueryMatcher::styleResolverChanged):
547         * css/MediaQueryMatcher.h:
548         Remove all traces of the ScriptState.
549
550 2013-08-13  Dean Jackson  <dino@apple.com>
551
552         <https://webkit.org/b/119776> Don't use ScriptProfiler to find canvases for instrumentation
553
554         Reviewed by Joseph Pecoraro.
555
556         InspectorCanvasAgent::findFramesWithUninstrumentedCanvases uses a ScriptProfiler to walk the tree
557         looking for canvas elements. This is currently not implemented in JSC, but we can do this directly
558         with DOM methods. We're only looking for Canvas elements that have a context, so there isn't a need
559         for this abstract walking object.
560
561         * html/HTMLCanvasElement.h: Add new helpers to cast to <canvas>.
562         (WebCore::isHTMLCanvasElement):
563         (WebCore::toHTMLCanvasElement):
564         * inspector/InspectorCanvasAgent.cpp:
565         (WebCore::InspectorCanvasAgent::findFramesWithUninstrumentedCanvases): Simply walk
566         the frame tree and use getElementsByTagName to find canvas elements.
567         * bindings/js/bindings/js/ScriptProfiler.h: Removed unused method.
568
569 2013-08-13  Brent Fulgham  <bfulgham@apple.com>
570
571         [Windows] Windows is incorrectly using a LayerTypeTiledBackingLayer
572         https://bugs.webkit.org/show_bug.cgi?id=119772
573
574         Reviewed by Simon Fraser.
575
576         * platform/graphics/ca/GraphicsLayerCA.cpp:
577         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): Ensure that we use
578         the correct (supported) tiled layer type for Windows.
579         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
580         (PlatformCALayer::PlatformCALayer): Add an assertion to notify us if
581         we introduce this mistake again in the future.
582
583 2013-08-13  Anders Carlsson  <andersca@apple.com>
584
585         <https://webkit.org/b/119771> Use NeverDestroyed for smart pointer slot static locals
586
587         Reviewed by Andreas Kling.
588
589         This is preparation for making it a hard error to use DEFINE_STATIC_LOCAL with smart pointer types.
590
591         * dom/UserTypingGestureIndicator.cpp:
592         (WebCore::focusedNode):
593         * page/mac/EventHandlerMac.mm:
594         (WebCore::currentNSEventSlot):
595         * platform/network/cf/NetworkStorageSessionCFNet.cpp:
596         (WebCore::defaultNetworkStorageSession):
597         (WebCore::cookieStorageOverride):
598
599 2013-08-13  Anders Carlsson  <andersca@apple.com>
600
601         Stop using DEFINE_STATIC_LOCAL with RefPtr
602         https://bugs.webkit.org/show_bug.cgi?id=119769
603
604         Reviewed by Andreas Kling.
605
606         No need to waste heap memory allocating RefPtr, just store the raw pointers directly.
607
608         * dom/ContextFeatures.cpp:
609         (WebCore::ContextFeatures::defaultSwitch):
610         * dom/DocumentMarker.cpp:
611         (WebCore::DocumentMarkerTextMatch::instanceFor):
612         * editing/EditingStyle.cpp:
613         (WebCore::StyleChange::extractTextStyles):
614         * html/FTPDirectoryDocument.cpp:
615         (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
616         * html/HTMLPlugInImageElement.cpp:
617         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
618         * html/track/TextTrack.cpp:
619         (WebCore::TextTrack::captionMenuOffItem):
620         (WebCore::TextTrack::captionMenuAutomaticItem):
621         * loader/icon/IconDatabase.cpp:
622         (WebCore::loadDefaultIconRecord):
623         * platform/graphics/Image.cpp:
624         (WebCore::Image::nullImage):
625         * platform/graphics/PlatformTextTrack.h:
626         (WebCore::PlatformTextTrack::captionMenuOffItem):
627         (WebCore::PlatformTextTrack::captionMenuAutomaticItem):
628         * rendering/style/RenderStyle.cpp:
629         (WebCore::RenderStyle::initialShapeInside):
630         * testing/MockCDM.cpp:
631         (WebCore::initDataPrefix):
632         (WebCore::keyPrefix):
633         (WebCore::keyRequest):
634
635 2013-08-13  Anders Carlsson  <andersca@apple.com>
636
637         Stop using DEFINE_STATIC_LOCAL with RetainPtr
638         https://bugs.webkit.org/show_bug.cgi?id=119765
639
640         Reviewed by Jessie Berlin.
641
642         No need to waste heap memory allocating RetainPtrs, just store the raw pointers directly.
643
644         * platform/graphics/mac/ColorMac.mm:
645         (WebCore::nsColor):
646         * platform/graphics/mac/GraphicsContextMac.mm:
647         (WebCore::makePatternColor):
648         (WebCore::GraphicsContext::drawLineForDocumentMarker):
649         * platform/graphics/mac/SimpleFontDataMac.mm:
650         (WebCore::webFallbackFontFamily):
651
652 2013-08-13  Commit Queue  <commit-queue@webkit.org>
653
654         Unreviewed, rolling out r153925.
655         http://trac.webkit.org/changeset/153925
656         https://bugs.webkit.org/show_bug.cgi?id=119768
657
658         broke fast/media/media-query-list-07.html (Requested by kling
659         on #webkit).
660
661         * CMakeLists.txt:
662         * DerivedSources.cpp:
663         * DerivedSources.make:
664         * DerivedSources.pri:
665         * GNUmakefile.list.am:
666         * Target.pri:
667         * WebCore.vcxproj/WebCore.vcxproj:
668         * WebCore.vcxproj/WebCore.vcxproj.filters:
669         * WebCore.xcodeproj/project.pbxproj:
670         * bindings/scripts/CodeGeneratorJS.pm:
671         (GenerateCallbackHeader):
672         (GenerateCallbackImplementation):
673         (JSValueToNative):
674         * bindings/scripts/IDLAttributes.txt:
675         * bindings/scripts/test/JS/JSTestCallback.cpp:
676         (WebCore::JSTestCallback::JSTestCallback):
677         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
678         (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
679         * css/MediaAllInOne.cpp:
680         * css/MediaQueryListListener.cpp: Copied from Source/WebCore/css/MediaQueryListListener.idl.
681         (WebCore::MediaQueryListListener::queryChanged):
682         * css/MediaQueryListListener.h:
683         (WebCore::MediaQueryListListener::create):
684         (WebCore::MediaQueryListListener::operator==):
685         (WebCore::MediaQueryListListener::MediaQueryListListener):
686         * css/MediaQueryListListener.idl:
687         * css/MediaQueryMatcher.cpp:
688         (WebCore::MediaQueryMatcher::Listener::evaluate):
689         (WebCore::MediaQueryMatcher::styleResolverChanged):
690         * css/MediaQueryMatcher.h:
691
692 2013-08-13  Simon Fraser  <simon.fraser@apple.com>
693
694         Every scroll causes additional layer tree work because of flatteningLayer->removeFromParent();
695         https://bugs.webkit.org/show_bug.cgi?id=119551
696
697         Reviewed by Dean Jackson.
698
699         Only re-parent the flattening layer if we had to update our
700         layer configuration (reparenting is necessary then to get
701         the correct sibling ordering), or if it was parented in some
702         other layer.
703         
704         This avoid unnecessary flushing of state to CA.
705
706         * rendering/RenderLayerBacking.cpp:
707         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
708
709 2013-08-13  Robert Hogan  <robert@webkit.org>
710
711         Section's collapsed borders painted in wrong place in rtl tables
712         https://bugs.webkit.org/show_bug.cgi?id=119691
713
714         Reviewed by Darin Adler.
715
716         Table row-groups can be RTL too, so look to the section rather than the
717         table when deciding the direction of a row. The section will inherit the
718         table's direction if it doesn't override it.
719
720         Test: fast/table/paint-collapsed-borders-rtl-section.html
721
722         * rendering/RenderTableCell.cpp:
723         (WebCore::RenderTableCell::hasStartBorderAdjoiningTable):
724         (WebCore::RenderTableCell::hasEndBorderAdjoiningTable):
725
726 2013-08-13  Christophe Dumez  <ch.dumez@sisa.samsung.com>
727
728         NodeList.item() does not behave according to specification
729         https://bugs.webkit.org/show_bug.cgi?id=119722
730
731         Reviewed by Darin Adler.
732
733         Make NodeList.item() indexed getter behave according to specification:
734         http://dom.spec.whatwg.org/#nodelist
735
736         Namely, we no longer throw if the index is negative (meaning the
737         [IsIndex] extended attribute is dropped) and the argument is now
738         mandatory.
739
740         This behavior is consistent with both IE10 and Firefox and since
741         recently Blink.
742
743         Test: fast/dom/nodelist-item-parameter.html
744
745         * dom/NodeList.idl:
746
747 2013-08-13  Anders Carlsson  <andersca@apple.com>
748
749         Fix build.
750
751         * WebCore.exp.in:
752
753 2013-08-13  Allan Sandfeld Jensen  <allan.jensen@digia.com>
754
755         REGRESSION(SUBPIXEL_LAYOUT) Composited layers can cause one pixel shifts
756         https://bugs.webkit.org/show_bug.cgi?id=115304
757
758         Reviewed by David Hyatt.
759
760         Accelerated layers can cause blocks at subpixel offsets to shift because
761         accumulated subpixel offsets are lost between each layers.
762
763         To solve this layer bounds are now calculated in LayoutUnits, and their
764         subpixel offset saved so it can be used to ensure correct pixel-snapping
765         during painting.
766
767         Test: fast/sub-pixel/sub-pixel-composited-layers.html
768
769         * WebCore.exp.in:
770         * inspector/InspectorLayerTreeAgent.cpp:
771         (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
772         * platform/graphics/LayoutPoint.h:
773         (WebCore::LayoutPoint::fraction):
774         * rendering/RenderLayer.cpp:
775         (WebCore::RenderLayer::setupClipPath):
776         (WebCore::RenderLayer::setupFilters):
777         (WebCore::RenderLayer::paintLayerContents):
778         (WebCore::RenderLayer::calculateLayerBounds):
779         * rendering/RenderLayer.h:
780         * rendering/RenderLayerBacking.cpp:
781         (WebCore::RenderLayerBacking::updateCompositedBounds):
782         (WebCore::RenderLayerBacking::updateAfterWidgetResize):
783         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
784         (WebCore::RenderLayerBacking::resetContentsRect):
785         (WebCore::RenderLayerBacking::contentOffsetInCompostingLayer):
786         (WebCore::RenderLayerBacking::contentsBox):
787         (WebCore::RenderLayerBacking::backgroundBox):
788         (WebCore::RenderLayerBacking::paintIntoLayer):
789         (WebCore::RenderLayerBacking::paintContents):
790         (WebCore::RenderLayerBacking::compositedBounds):
791         (WebCore::RenderLayerBacking::setCompositedBounds):
792         * rendering/RenderLayerBacking.h:
793         * rendering/RenderLayerCompositor.cpp:
794         (WebCore::RenderLayerCompositor::logLayerInfo):
795         (WebCore::RenderLayerCompositor::calculateCompositedBounds):
796         * rendering/RenderLayerCompositor.h:
797         * rendering/RenderTreeAsText.cpp:
798         (WebCore::operator<<):
799         * rendering/RenderTreeAsText.h:
800
801 2013-08-13  peavo@outlook.com  <peavo@outlook.com>
802
803         [Curl] Possible infinite loop while downloading.
804         https://bugs.webkit.org/show_bug.cgi?id=119744
805
806         Reviewed by Darin Adler.
807
808         If adding/removing curl handles fails, the download thread
809         can end up in an endless loop trying to update the curl handle list.
810
811         * platform/network/curl/CurlDownload.cpp:
812         (WebCore::CurlDownloadManager::updateHandleList): Avoid infinite loop by ignoring return value.
813
814 2013-08-13  Christophe Dumez  <ch.dumez@sisa.samsung.com>
815
816         HTMLSelectElement.item() does not behave according to specification
817         https://bugs.webkit.org/show_bug.cgi?id=119738
818
819         Reviewed by Darin Adler.
820
821         Make HTMLSelectElement.item() behave according to specification:
822         http://www.w3.org/TR/html51/forms.html#dom-select-item
823         http://dom.spec.whatwg.org/#dom-htmlcollection-item
824
825         Namely, we no longer throw if the offset argument is negative. Also,
826         the argument is now mandatory.
827
828         IE10, Firefox and Blink do not throw when HTMLSelectElement.item() is
829         called with a negative value (as per the specification).
830
831         The argument is mandatory in Firefox and Blink, but optional in IE10
832         (it returns null when called without argument). This looks like a bug
833         in IE because other item() getters' argument is usually mandatory in IE
834         (e.g. NodeList.item()).
835
836         Test: fast/dom/HTMLSelectElement/select-element-item-argument.html
837
838         * html/HTMLSelectElement.idl:
839
840 2013-08-13  Christophe Dumez  <ch.dumez@sisa.samsung.com>
841
842         On request error, always fire events on the XMLHttpRequestUpload before the XMLHttpRequest
843         https://bugs.webkit.org/show_bug.cgi?id=119714
844
845         Reviewed by Alexey Proskuryakov.
846
847         On request error, fire events on the XMLHttpRequestUpload object before the XMLHttpRequest
848         object as per the latest specification:
849         http://xhr.spec.whatwg.org/#request-error
850
851         This specification change was made in Sept 2010:
852         http://dev.w3.org/cvsweb/2006/webapi/XMLHttpRequest-2/Overview.src.html.diff?r1=1.138;r2=1.139;f=h
853
854         It addresses the following comment:
855         http://lists.w3.org/Archives/Public/public-webapps/2010JulSep/0777.html
856
857         IE10 and since recently Blink behave according to specification but WebKit was firing the
858         events on the XMLHttpRequest object BEFORE the XMLHttpRequestUpload object in case of
859         'network error' or 'abort error'. WebKit was however behaving according to specification
860         in case of 'timeout error', which was inconsistent.
861
862         Test: http/tests/xmlhttprequest/upload-request-error-event-order.html
863
864         * xml/XMLHttpRequest.cpp:
865         (WebCore::XMLHttpRequest::networkError):
866         (WebCore::XMLHttpRequest::abortError):
867
868 2013-08-13  Christophe Dumez  <ch.dumez@sisa.samsung.com>
869
870         Simplify RadioNodeList's anonymous indexed getter
871         https://bugs.webkit.org/show_bug.cgi?id=119725
872
873         Reviewed by Darin Adler.
874
875         Simplify RadioNodeList's anonymous indexed getter by dropping [IsIndex]
876         IDL extended attribute from its parameter and making it mandatory.
877
878         This change has strictly no impact on the generated bindings code
879         but it simplifies the IDL.
880
881         No new test, no behavior change.
882
883         * html/RadioNodeList.idl:
884
885 2013-08-13  Danilo Cesar Lemes de Paula  <danilo.cesar@collabora.co.uk>
886
887         [GTK] close the volume slider when the media control panel is hidden
888         https://bugs.webkit.org/show_bug.cgi?id=119062
889
890         Reviewed by Gustavo Noronha Silva.
891
892         It's not obvious how to close the volume slider on webkitGtk.
893         The volume slider should close if the control panel is hidden.
894
895         * html/shadow/MediaControlsGtk.cpp:
896         (WebCore::MediaControlsGtk::makeTransparent):
897         * html/shadow/MediaControlsGtk.h:
898
899 2013-08-13  Commit Queue  <commit-queue@webkit.org>
900
901         Unreviewed, rolling out r152563.
902         http://trac.webkit.org/changeset/152563
903         https://bugs.webkit.org/show_bug.cgi?id=119740
904
905         causes random crashes (Requested by carewolf on #webkit).
906
907         * platform/graphics/qt/FontCacheQt.cpp:
908         (WebCore::FontCache::getLastResortFallbackFont):
909
910 2013-08-13  Andrei Bucur  <abucur@adobe.com>
911
912         Unreviewed.
913
914         Fix the build after http://trac.webkit.org/changeset/153990.
915
916         * rendering/RenderBlock.cpp:
917         (WebCore::RenderBlock::updateShapesBeforeBlockLayout): Add the default return value if CSS Shapes are disabled.
918
919 2013-08-13  Andrei Bucur  <abucur@adobe.com>
920
921         [CSS Regions] Compute correct region ranges for boxes
922         https://bugs.webkit.org/show_bug.cgi?id=116296
923
924         Reviewed by David Hyatt.
925
926         The patch extends the region ranges implementation with the following behavior:
927         - the range of a box is always included in the range of its containing block (even for floats); this will simplify how overflow
928         is propagated to the regions and it should later change on a case by case basis.
929         - if the range of a box is not correctly estimated before the layout it will be marked for relayout; this is necessary to correctly
930         position boxes that overflow naturally, like floats.
931         - all the boxes have a range now, not only the blocks.
932         - regionAtBlockOffset can clamp to a box.
933         - an unsplittable box has a region range of a single region, the one where the box top falls into.
934
935         When the layout of a child box starts it tries to give an estimate based on the maximal height of the box. After the layout,
936         if the estimation was wrong, the box is relaid out. For example, if a block with a float is laid out in a region but the float
937         overflows in the next region a relayout is needed for the float so it can be positioned relative to the containing block
938         region (this step can be optimized by making a layout pass only for the children that don't have the region range enclosed in the
939         containing block range).
940
941         Tests: fast/regions/bottom-overflow-out-of-first-region-absolute.html
942                fast/regions/float-pushed-width-change-2.html
943                fast/regions/scrollable-paragraph-unsplittable.html
944
945         * rendering/RenderBlock.cpp:
946         (WebCore::RenderBlock::updateShapesBeforeBlockLayout): Doesn't do anything for regions now.
947         (WebCore::RenderBlock::updateShapesAfterBlockLayout): Doesn't do anything for regions now.
948         (WebCore::RenderBlock::relayoutToAvoidWidows): The layout to avoid widows. Widows use the line index to determine the break point,
949         not the RootLineBox pointer as before. This is necessary to prevent stale pointers in further layouts.
950         (WebCore::RenderBlock::layoutBlock):
951         (WebCore::RenderBlock::layoutBlockChild):
952         (WebCore::RenderBlock::layoutPositionedObjects):
953         (WebCore::RenderBlock::markForPaginationRelayoutIfNeeded): Relayout for widows during layoutBlock(). Don't wait to exit the block layout.
954         (WebCore::RenderBlock::positionNewFloats):
955         (WebCore::RenderBlock::hasNextPage):
956         (WebCore::RenderBlock::applyBeforeBreak):
957         (WebCore::RenderBlock::applyAfterBreak):
958         (WebCore::RenderBlock::setPageBreak):
959         (WebCore::RenderBlock::updateMinimumPageHeight):
960         (WebCore::RenderBlock::regionAtBlockOffset): This function can now clamp at a box.
961         (WebCore::RenderBlock::computeRegionRangeForBoxChild): Calculate the box region range using the box height.
962         (WebCore::RenderBlock::estimateRegionRangeForBoxChild): Estimate the box region range using a huge height for the box.
963         (WebCore::RenderBlock::updateRegionRangeForBoxChild): Determine the final region range of a box.
964         * rendering/RenderBlock.h:
965         (WebCore::RenderBlock::logicalWidthForChild):
966         (WebCore::RenderBlock::logicalHeightForChild):
967         (WebCore::RenderBlock::logicalTopForChild):
968         * rendering/RenderBlockLineLayout.cpp:
969         (WebCore::RenderBlock::layoutInlineChildren):
970         * rendering/RenderBox.cpp:
971         (WebCore::RenderBox::clampToStartAndEndRegions):
972         (WebCore::RenderBox::borderBoxRectInRegion):
973         * rendering/RenderBox.h:
974         * rendering/RenderDeprecatedFlexibleBox.cpp:
975         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
976         * rendering/RenderFlexibleBox.cpp:
977         (WebCore::RenderFlexibleBox::layoutBlock):
978         * rendering/RenderFlowThread.cpp:
979         (WebCore::RenderFlowThread::validateRegions):
980         (WebCore::RenderFlowThread::regionAtBlockOffset):
981         (WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent):
982         (WebCore::RenderFlowThread::pageLogicalTopForOffset):
983         (WebCore::RenderFlowThread::pageLogicalWidthForOffset):
984         (WebCore::RenderFlowThread::pageLogicalHeightForOffset):
985         (WebCore::RenderFlowThread::pageRemainingLogicalHeightForOffset):
986         (WebCore::RenderFlowThread::mapFromFlowToRegion):
987         (WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock):
988         (WebCore::RenderFlowThread::clearRenderObjectCustomStyle):
989         (WebCore::RenderFlowThread::clearRenderBoxRegionInfoAndCustomStyle):
990         (WebCore::RenderFlowThread::setRegionRangeForBox):
991         (WebCore::RenderFlowThread::applyBreakAfterContent):
992         (WebCore::RenderFlowThread::addForcedRegionBreak):
993         * rendering/RenderFlowThread.h:
994         * rendering/RenderGrid.cpp:
995         (WebCore::RenderGrid::layoutBlock):
996         * rendering/RenderMultiColumnFlowThread.cpp:
997         (WebCore::RenderMultiColumnFlowThread::setPageBreak):
998         (WebCore::RenderMultiColumnFlowThread::updateMinimumPageHeight):
999         * rendering/RenderMultiColumnFlowThread.h:
1000
1001 2013-08-13  Ryosuke Niwa  <rniwa@webkit.org>
1002
1003         One more speculative Windows build fix after r153978.
1004
1005         * page/win/DragControllerWin.cpp:
1006
1007 2013-08-13  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1008
1009         Update scheme list according to latest specification
1010         https://bugs.webkit.org/show_bug.cgi?id=119510
1011
1012         Reviewed by Christophe Dumez.
1013
1014         New schemes are added to it additionally. Those are bitcoin, im, ircs and wtai.
1015         As additional work, scheme order is listed to be sync with spec.
1016
1017         Spec: http://www.w3.org/html/wg/drafts/html/master/webappapis.html#custom-handlers
1018
1019         Test: fast/dom/register-protocol-handler.html
1020               fast/dom/unregister-protocol-handler.html
1021
1022         * Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
1023         (WebCore::initProtocolHandlerWhitelist):
1024
1025 2013-08-13  Ryosuke Niwa  <rniwa@webkit.org>
1026
1027         Yet another Windows build fix attempt after r153978.
1028
1029         * page/win/DragControllerWin.cpp:
1030         (WebCore::DragController::declareAndWriteDragImage):
1031
1032 2013-08-13  Ryosuke Niwa  <rniwa@webkit.org>
1033
1034         Another Windows build fix attempt after r153978.
1035
1036         * page/win/DragControllerWin.cpp:
1037
1038 2013-08-12  Ryosuke Niwa  <rniwa@webkit.org>
1039
1040         Windows build fix attempt after r153978.
1041
1042         * page/win/DragControllerWin.cpp:
1043
1044 2013-08-12  Zan Dobersek  <zdobersek@igalia.com>
1045
1046         ASSERTION FAILED: type() == Percent in WebCore::Length::percent
1047         https://bugs.webkit.org/show_bug.cgi?id=116715
1048
1049         Reviewed by Darin Adler.
1050
1051         Allow the Calculated type in the Length::percent method that returns the Length's
1052         float value. This reflects the changes in r110148 that adjusted the Length::isPercent
1053         method to return true for Length objects of either Percent or Calculated type.
1054
1055         Test: fast/css/calculated-length-as-percent-crash.html
1056
1057         * platform/Length.h:
1058         (WebCore::Length::percent): Assert that Length::isPercent is true when Length::percent
1059         is called, ensuring the Length's type is either Percent or Calculated.
1060
1061 2013-06-16  Darin Adler  <darin@apple.com>
1062
1063         Move Clipboard::declareAndWriteDragImage to DragController
1064         https://bugs.webkit.org/show_bug.cgi?id=117683
1065
1066         Reviewed by Brent Fulgham.
1067
1068         * dom/Clipboard.h: Removed declareAndWriteDragImage.
1069
1070         * page/DragController.cpp:
1071         (WebCore::selectImageBeforeDragging): Half of the old prepareClipboardForImageDrag
1072         is now refactored into this function.
1073         (WebCore::DragController::startDrag): Where we called prepareClipboardForImageDrag,
1074         instead call selectImageBeforeDragging and declareAndWriteDragImage. This is needed
1075         because declareAndWriteDragImage needs to be a member function, for Mac at least.
1076
1077         * page/DragController.h: Added declareAndWriteDragImage.
1078
1079         * page/efl/DragControllerEfl.cpp:
1080         (WebCore::DragController::declareAndWriteDragImage): Added empty placeholder.
1081         It would be better to delete this file rather than having these placeholders.
1082         I don't think EFL actually has drag support, and it makes work to have to keep
1083         source files up to date that are really unused.
1084
1085         * page/gtk/DragControllerGtk.cpp:
1086         (WebCore::DragController::declareAndWriteDragImage): Added. Calls Pasteboard::writeImage.
1087         * page/mac/DragControllerMac.mm:
1088         (WebCore::DragController::declareAndWriteDragImage): Added. Calls to DragClient, which
1089         does the work.
1090         * page/qt/DragControllerQt.cpp:
1091         (WebCore::DragController::declareAndWriteDragImage): Added. Calls Pasteboard::writeImage.
1092         * page/win/DragControllerWin.cpp:
1093         (WebCore::DragController::declareAndWriteDragImage): Added. Uses Pasteboard functions to
1094         do the work.
1095
1096         * platform/Clipboard.h: Changed the pasteboard function to return a non-const reference.
1097         For now, it's not clear what const will mean for pasteboards, and it's currently not
1098         possible to write to a const pasteboard, which we need to do in the new
1099         DragController::declareAndWriteDragImage functions.
1100
1101         * platform/Pasteboard.h: Added a new writeMarkup function, implemented only for Windows
1102         at this time.
1103
1104         * platform/efl/ClipboardEfl.cpp: Deleted declareAndWriteDragImage.
1105         * platform/gtk/ClipboardGtk.cpp: Ditto.
1106         * platform/ios/ClipboardIOS.h: Ditto.
1107         * platform/ios/ClipboardIOS.mm: Ditto.
1108         * platform/mac/ClipboardMac.mm: Ditto.
1109         * platform/qt/ClipboardQt.cpp: Ditto.
1110         * platform/win/ClipboardWin.cpp: Ditto.
1111
1112         * platform/win/PasteboardWin.cpp:
1113         (WebCore::Pasteboard::writePlainTextToDataObject): Took out a pointless line of code.
1114         (WebCore::Pasteboard::writeMarkup): Added. Currently implemented only for Windows.
1115         This factors out a significant piece of DragController::declareAndWriteDragImage,
1116         and will probably be handy for other platforms later.
1117
1118 2013-08-12  Ryosuke Niwa  <rniwa@webkit.org>
1119
1120         Fix NULL de-refernce in HTMLAnchorElement::sendPings when settings doesn't exist
1121         https://bugs.webkit.org/show_bug.cgi?id=119716
1122
1123         Reviewed by Darin Adler.
1124
1125         Merge https://chromium.googlesource.com/chromium/blink/+/d5783da353ab783e9994b8fbecd91880be5192a1
1126
1127         No new tests since the test in the Blink change doesn't reproduce crash on WebKit.
1128
1129         * html/HTMLAnchorElement.cpp:
1130         (WebCore::HTMLAnchorElement::sendPings):
1131
1132 2013-08-12  Seokju Kwon  <seokju@webkit.org>
1133
1134         Use the correct preprocessor in shouldRepaintFixedBackgroundsOnScroll()
1135         https://bugs.webkit.org/show_bug.cgi?id=119710
1136
1137         Reviewed by Darin Adler.
1138
1139         No behavior change, no new tests needed.
1140
1141         * rendering/RenderObject.cpp: Remove unused parameter warning.
1142         (WebCore::shouldRepaintFixedBackgroundsOnScroll):
1143
1144 2013-08-12  Alexey Proskuryakov  <ap@apple.com>
1145
1146         http/tests/security/sandboxed-iframe-invalid.html is flaky on Mac
1147         https://bugs.webkit.org/show_bug.cgi?id=85522
1148
1149         Reviewed by Andy Estes.
1150
1151         Drive-by FIXMEs and trivial fixes for WebCore issues I noticed while working
1152         on this bug. No behavior change expected.
1153
1154         * loader/FrameLoader.cpp:
1155         (WebCore::FrameLoader::submitForm):
1156         (WebCore::FrameLoader::findFrameForNavigation):
1157         * loader/NavigationScheduler.cpp:
1158         (WebCore::ScheduledFormSubmission::fire):
1159
1160 2013-08-13  Ryosuke Niwa  <rniwa@webkit.org>
1161
1162         Fix variable name |end| -> |size| in EventTarget::fireEventListeners
1163         https://bugs.webkit.org/show_bug.cgi?id=119715
1164
1165         Reviewed by Benjamin Poulain.
1166
1167         Merge https://chromium.googlesource.com/chromium/blink/+/f58b017539c48059bb2b88d18ee0ee3d14decb01
1168         and also fix variable names in FiringEventIterator.
1169
1170         * dom/EventTarget.cpp:
1171         (WebCore::EventTarget::removeEventListener):
1172         (WebCore::EventTarget::fireEventListeners):
1173         (WebCore::EventTarget::removeAllEventListeners):
1174         * dom/EventTarget.h:
1175         (WebCore::FiringEventIterator::FiringEventIterator):
1176
1177 2013-08-12  Ryosuke Niwa  <rniwa@webkit.org>
1178
1179         Encapsulate access to documentNamedItemMap and windowNamedItemMap
1180         https://bugs.webkit.org/show_bug.cgi?id=119701
1181
1182         Reviewed by Darin Adler.
1183
1184         Encapsulate m_documentNamedItem and m_windowNamedItem by adding various methods on HTMLDocument.
1185         This will help us doing more refactorings in the future.
1186
1187         * bindings/js/JSDOMWindowCustom.cpp:
1188         (WebCore::namedItemGetter):
1189         (WebCore::JSDOMWindow::getOwnPropertySlot):
1190         (WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
1191         (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
1192         * bindings/js/JSHTMLDocumentCustom.cpp:
1193         (WebCore::JSHTMLDocument::canGetItemsForName):
1194         (WebCore::JSHTMLDocument::nameGetter):
1195         * dom/Element.cpp:
1196         (WebCore::Element::updateNameForDocument):
1197         (WebCore::Element::updateIdForDocument):
1198         * html/HTMLDocument.cpp:
1199         (WebCore::HTMLDocument::addDocumentNamedItem): Added.
1200         (WebCore::HTMLDocument::removeDocumentNamedItem): Added.
1201         (WebCore::HTMLDocument::addWindowNamedItem): Added.
1202         (WebCore::HTMLDocument::removeWindowNamedItem): Added.
1203         * html/HTMLDocument.h:
1204         (WebCore::HTMLDocument::documentNamedItem): Added.
1205         (WebCore::HTMLDocument::hasDocumentNamedItem): Added.
1206         (WebCore::HTMLDocument::documentNamedItemContainsMultipleElements): Added.
1207         (WebCore::HTMLDocument::windowNamedItem): Added.
1208         (WebCore::HTMLDocument::hasWindowNamedItem): Added.
1209         (WebCore::HTMLDocument::windowNamedItemContainsMultipleElements): Added.
1210         * html/HTMLImageElement.cpp:
1211         (WebCore::HTMLImageElement::parseAttribute):
1212         * html/HTMLObjectElement.cpp:
1213         (WebCore::HTMLObjectElement::updateDocNamedItem):
1214
1215 2013-08-12  Patrick Gansterer  <paroga@webkit.org>
1216
1217         [CMake] Use the correct list of files when compiling ANGLESupport on Windows
1218         https://bugs.webkit.org/show_bug.cgi?id=119439
1219
1220         Reviewed by Gyuyoung Kim.
1221
1222         * CMakeLists.txt: Use ossource_win.cpp instead of ossource_posix.cpp on Windows platforms.
1223
1224 2013-08-12  Arnaud Renevier  <a.renevier@samsung.com>
1225
1226         [cairo] memory corruption with putImageData and accelerated canvas.
1227         https://bugs.webkit.org/show_bug.cgi?id=118621
1228
1229         Reviewed by Martin Robinson.
1230
1231         When we have an accelerated imageBuffer, and we putByteArray with a
1232         non zero destPoint, we create temporary surface of sourceSize. Then,
1233         we write to image data with an offset. This results in an out of bound
1234         write.
1235
1236         In order to avoid that, we use a 0 offset when writing data.
1237
1238         In addition, we also create image with the minimal needed size in
1239         getImageData, and also use a 0 offset. This decrease data transfer
1240         between cpu and gpu
1241
1242         Instead of the map/unmap mechanism, perform an explicit surface copy
1243         when needed. This change also removes an unneeded glReadPixels at the
1244         start of putByteArray
1245
1246         Add two parameters to copyRectFromOneSurfaceToAnother: destination
1247         offset, and cairo drawing operator.
1248
1249         No new tests. Accelerated canvas is not enabled for testing yet.
1250
1251         * platform/graphics/cairo/CairoUtilities.cpp:
1252         (WebCore::copyRectFromOneSurfaceToAnother):
1253         * platform/graphics/cairo/CairoUtilities.h:
1254         * platform/graphics/cairo/ImageBufferCairo.cpp:
1255         (WebCore::copySurfaceToImageAndAdjustRect):
1256         (WebCore::getImageData):
1257         (WebCore::ImageBuffer::putByteArray):
1258
1259 2013-08-12  Ryosuke Niwa  <rniwa@webkit.org>
1260
1261         Use const AtomicStringImpl* in DocumentOrderedMap
1262         https://bugs.webkit.org/show_bug.cgi?id=119700
1263
1264         Reviewed by Benjamin Poulain.
1265
1266         Use const AtomicStringImpl* in DocumentOrderedMap. It caught at least one bug that HTMLNameCollection'
1267         subclasses' nodeMatches were taking const AtomicString& instead of AtomicStringImpl*. This was forcing
1268         DocumentOrderedMap::getElementByWindowNamedItem and DocumentOrderedMap::getElementByDocumentNamedItem
1269         to create temporary AtomicStrings.
1270
1271         * dom/DocumentOrderedMap.cpp:
1272         (WebCore::keyMatchesId):
1273         (WebCore::keyMatchesName):
1274         (WebCore::keyMatchesMapName):
1275         (WebCore::keyMatchesLowercasedMapName):
1276         (WebCore::keyMatchesLabelForAttribute):
1277         (WebCore::keyMatchesWindowNamedItem):
1278         (WebCore::keyMatchesDocumentNamedItem):
1279         (WebCore::DocumentOrderedMap::add):
1280         (WebCore::DocumentOrderedMap::remove):
1281         (WebCore::DocumentOrderedMap::get):
1282         (WebCore::DocumentOrderedMap::getElementById):
1283         (WebCore::DocumentOrderedMap::getElementByName):
1284         (WebCore::DocumentOrderedMap::getElementByMapName):
1285         (WebCore::DocumentOrderedMap::getElementByLowercasedMapName):
1286         (WebCore::DocumentOrderedMap::getElementByLabelForAttribute):
1287         (WebCore::DocumentOrderedMap::getElementByWindowNamedItem):
1288         (WebCore::DocumentOrderedMap::getElementByDocumentNamedItem):
1289         (WebCore::DocumentOrderedMap::getAllElementsById):
1290         * dom/DocumentOrderedMap.h:
1291         (WebCore::DocumentOrderedMap::containsSingle):
1292         (WebCore::DocumentOrderedMap::contains):
1293         (WebCore::DocumentOrderedMap::containsMultiple):
1294         * html/HTMLNameCollection.cpp:
1295         (WebCore::WindowNameCollection::nodeMatches):
1296         (WebCore::DocumentNameCollection::nodeMatches):
1297         * html/HTMLNameCollection.h:
1298         (WebCore::WindowNameCollection::nodeMatches):
1299         (WebCore::DocumentNameCollection::nodeMatches):
1300
1301 2013-08-12  Beth Dakin  <bdakin@apple.com>
1302
1303         The LayoutMilestones didLayout callback should only fire for the main frame
1304         https://bugs.webkit.org/show_bug.cgi?id=119457
1305
1306         Reviewed by Sam Weinig.
1307
1308         This patch makes it so that FrameLoader::didLayout(LayoutMilestones) is only ever 
1309         called for the main frame. Technically this will change existing API for 
1310         didFirstVisuallyNonEmptyLayoutInFrame and didFirstLayoutInFrame. Clients used to 
1311         be able to register for those callbacks for any frame they wanted, however, now 
1312         they will only ever get the callback when it applies to the main frame. We think 
1313         that this is acceptable since we don’t know of any clients that ever used those 
1314         APIs for a non-main frame. This change also makes nothing but sense for the 
1315         didLayout(LayoutMilestones) callback, since that is a Page-level concept, so it 
1316         should only fire for the main frame.
1317
1318         Only call didLayout for the main frame.
1319         * dom/Document.cpp:
1320         (WebCore::Document::setVisualUpdatesAllowed):
1321
1322         Assert that this is the main frame.
1323         * loader/FrameLoader.cpp:
1324         (WebCore::FrameLoader::didLayout):
1325
1326         Only call didLayout for the main frame.
1327         * page/FrameView.cpp:
1328         (WebCore::FrameView::performPostLayoutTasks):
1329
1330 2013-08-12  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1331
1332         Define DOM_KEY_LOCATION_* constants on KeyboardEvent
1333         https://bugs.webkit.org/show_bug.cgi?id=119341
1334
1335         Reviewed by Ryosuke Niwa.
1336
1337         Add support for the DOM_KEY_LOCATION_* constants on KeyboardEvent as per
1338         the specification:
1339         http://www.w3.org/TR/DOM-Level-3-Events/#events-KeyboardEvent
1340
1341         Those constants are already supported by IE10, Firefox 22 and since
1342         recently Blink.
1343
1344         Note that the following constants are not supported / exposed yet:
1345         DOM_KEY_LOCATION_MOBILE and DOM_KEY_LOCATION_JOYSTICK.
1346
1347         Test: fast/events/keyboardevent-location-constants.html
1348
1349         * dom/KeyboardEvent.cpp:
1350         (WebCore::keyLocationCode):
1351         (WebCore::KeyboardEvent::KeyboardEvent):
1352         * dom/KeyboardEvent.h:
1353         * dom/KeyboardEvent.idl:
1354
1355 2013-08-12  Tim Horton  <timothy_horton@apple.com>
1356
1357         dataLog dumpers for WebCore's basic geometry types
1358         https://bugs.webkit.org/show_bug.cgi?id=119636
1359
1360         Reviewed by Filip Pizlo.
1361
1362         * platform/graphics/FloatPoint.cpp:
1363         (WebCore::FloatPoint::dump):
1364         * platform/graphics/FloatPoint.h:
1365         * platform/graphics/FloatRect.cpp:
1366         (WebCore::FloatRect::dump):
1367         * platform/graphics/FloatRect.h:
1368         * platform/graphics/FloatSize.cpp:
1369         (WebCore::FloatSize::dump):
1370         * platform/graphics/FloatSize.h:
1371         * platform/graphics/IntPoint.h:
1372         (WebCore::IntPoint::dump):
1373         * platform/graphics/IntRect.cpp:
1374         (WebCore::IntRect::dump):
1375         * platform/graphics/IntRect.h:
1376         * platform/graphics/IntSize.h:
1377         (WebCore::IntSize::dump):
1378
1379 2013-08-12  Dean Jackson  <dino@apple.com>
1380
1381         Shadows don't support viewport units
1382         https://bugs.webkit.org/show_bug.cgi?id=119649
1383
1384         Reviewed by Darin Adler.
1385
1386         We don't yet support viewport units in shadows, so
1387         fail parsing if we see one. The bug to fix this
1388         completely is: https://webkit.org/b/119650
1389
1390         Test: fast/css/shadow-viewport-units.html
1391
1392         * css/CSSParser.cpp:
1393         (WebCore::CSSParser::parseShadow): Fail if we get one of
1394         vh, vw, vmin, vmax.
1395
1396 2013-08-12  peavo@outlook.com  <peavo@outlook.com>
1397
1398         [Curl] Cookie is not set when url string is unicode.
1399         https://bugs.webkit.org/show_bug.cgi?id=119545
1400
1401         Reviewed by Brent Fulgham.
1402
1403         When the method setCookiesFromDOM is called with an unicode url parameter, the cookie is not correctly set.
1404         We need to convert the cookie string to 8 bit, before passing it to the Curl api function.
1405
1406         * platform/network/curl/CookieJarCurl.cpp:
1407         (WebCore::setCookiesFromDOM): Convert cookie string to 8 bit, if needed.
1408
1409 2013-08-12  Eric Carlson  <eric.carlson@apple.com>
1410
1411         Revert r153912 because it broke some track tests.
1412
1413         Rubber-stamped by Antti Koivisto.
1414
1415         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1416         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged):
1417         (WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack):
1418
1419 2013-08-12  Antti Koivisto  <antti@apple.com>
1420
1421         Add ElementTraversal::next/previousSibling
1422         https://bugs.webkit.org/show_bug.cgi?id=119681
1423
1424         Reviewed by Andreas Kling.
1425
1426         Add nextSibling/previousSibling/lastWithin to ElementTraversal namespace.
1427         
1428         - Use them to replace internal use of Element::next/previousElementSibling DOM API for traversal.
1429         - Replace some Node::nextSibling() usage with ElementTraversal::nextSibling() for tighter code.
1430         - Replace ElementTraversal::nextSkippingChildren where it is used to traverse over immediate children only.
1431
1432         * css/SelectorChecker.cpp:
1433         (WebCore::isFirstChildElement):
1434         (WebCore::isLastChildElement):
1435         (WebCore::isFirstOfType):
1436         (WebCore::isLastOfType):
1437         (WebCore::countElementsBefore):
1438         (WebCore::countElementsOfTypeBefore):
1439         (WebCore::countElementsAfter):
1440         (WebCore::countElementsOfTypeAfter):
1441         * dom/Element.cpp:
1442         (WebCore::Element::lastElementChild):
1443         (WebCore::Element::previousElementSibling):
1444         (WebCore::Element::nextElementSibling):
1445         * dom/Element.h:
1446         * dom/ElementTraversal.h:
1447         (WebCore::ElementTraversal::lastElementWithinTemplate):
1448         (WebCore::ElementTraversal::lastWithin):
1449         (WebCore::ElementTraversal::traverseNextSiblingElementTemplate):
1450         (WebCore::ElementTraversal::nextSibling):
1451         (WebCore::ElementTraversal::traversePreviousSiblingElementTemplate):
1452         (WebCore::ElementTraversal::previousSibling):
1453         * editing/ApplyStyleCommand.cpp:
1454         (WebCore::isSpanWithoutAttributesOrUnstyledStyleSpan):
1455         (WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans):
1456         * editing/CompositeEditCommand.cpp:
1457         (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
1458         * editing/IndentOutdentCommand.cpp:
1459         (WebCore::IndentOutdentCommand::tryIndentingAsListItem):
1460         * editing/InsertListCommand.cpp:
1461         (WebCore::InsertListCommand::mergeWithNeighboringLists):
1462         * editing/markup.cpp:
1463         (WebCore::createContextualFragment):
1464         * html/HTMLCollection.cpp:
1465         (WebCore::firstMatchingChildElement):
1466         (WebCore::nextMatchingSiblingElement):
1467         (WebCore::HTMLCollection::traverseNextElement):
1468         (WebCore::HTMLCollection::traverseForwardToOffset):
1469         * html/HTMLFieldSetElement.cpp:
1470         (WebCore::HTMLFieldSetElement::childrenChanged):
1471         (WebCore::HTMLFieldSetElement::legend):
1472         * html/HTMLMediaElement.cpp:
1473         (WebCore::HTMLMediaElement::finishParsingChildren):
1474         * html/HTMLObjectElement.cpp:
1475         (WebCore::HTMLObjectElement::containsJavaApplet):
1476         * rendering/FilterEffectRenderer.cpp:
1477         (WebCore::FilterEffectRenderer::buildReferenceFilter):
1478         * style/StyleResolveTree.cpp:
1479         (WebCore::Style::resolveTree):
1480         * svg/SVGStyledElement.cpp:
1481         (WebCore::SVGStyledElement::title):
1482
1483 2013-08-12  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1484
1485         [Qt] Add Support for canvas blend modes
1486         https://bugs.webkit.org/show_bug.cgi?id=100072
1487
1488         Reviewed by Jocelyn Turcotte.
1489
1490         Implement basic support for the blend-modes supported by QPainter.
1491
1492         Covered by existing tests.
1493
1494         * platform/graphics/qt/GraphicsContextQt.cpp:
1495         (WebCore::toQtCompositionMode):
1496         (WebCore::GraphicsContext::setPlatformCompositeOperation):
1497         * platform/graphics/qt/ImageBufferQt.cpp:
1498         (WebCore::ImageBuffer::draw):
1499         * platform/graphics/qt/ImageQt.cpp:
1500         (WebCore::BitmapImage::draw):
1501         * platform/graphics/qt/StillImageQt.cpp:
1502         (WebCore::StillImage::draw):
1503
1504 2013-08-12  Gabor Abraham  <abrhm@inf.u-szeged.hu>
1505
1506         Buildfix for !ENABLE(SVG). Fix warning by adding guard after r153901:
1507         void WebCore::addString(WebCore::FeatureSet&, const char*)'
1508         defined but not used [-Werror=unused-function]
1509
1510         Reviewed by Csaba Osztrogonác.
1511
1512         * dom/DOMImplementation.cpp:
1513
1514 2013-08-12  Antti Koivisto  <antti@apple.com>
1515
1516         Move ElementTraversal to ElementTraversal.h
1517         https://bugs.webkit.org/show_bug.cgi?id=119678
1518
1519         Rubber-stamped by Andreas Kling.
1520
1521         Move ElementTraversal namespace from NodeTraversal.h to a correctly named file.
1522
1523         * GNUmakefile.list.am:
1524         * Target.pri:
1525         * WebCore.vcxproj/WebCore.vcxproj:
1526         * WebCore.xcodeproj/project.pbxproj:
1527         * accessibility/AccessibilityRenderObject.cpp:
1528         * css/StyleInvalidationAnalysis.cpp:
1529         * dom/Document.cpp:
1530         * dom/DocumentOrderedMap.cpp:
1531         * dom/Element.cpp:
1532         * dom/ElementTraversal.h: Added.
1533         (WebCore::ElementTraversal::firstElementWithinTemplate):
1534         (WebCore::ElementTraversal::firstWithin):
1535         (WebCore::ElementTraversal::traverseNextElementTemplate):
1536         (WebCore::ElementTraversal::next):
1537         (WebCore::ElementTraversal::traverseNextElementSkippingChildrenTemplate):
1538         (WebCore::ElementTraversal::nextSkippingChildren):
1539         (WebCore::ElementTraversal::previousIncludingPseudo):
1540         (WebCore::ElementTraversal::nextIncludingPseudo):
1541         (WebCore::ElementTraversal::nextIncludingPseudoSkippingChildren):
1542         (WebCore::ElementTraversal::pseudoAwarePreviousSibling):
1543         * dom/Node.cpp:
1544         * dom/NodeTraversal.h:
1545         * dom/SelectorQuery.cpp:
1546         * dom/TreeScope.cpp:
1547         * dom/VisitedLinkState.cpp:
1548         * editing/FrameSelection.cpp:
1549         * editing/markup.cpp:
1550         * html/HTMLCollection.cpp:
1551         * html/HTMLFieldSetElement.cpp:
1552         * html/HTMLFormElement.cpp:
1553         * html/HTMLLabelElement.cpp:
1554         * html/HTMLLegendElement.cpp:
1555         * html/HTMLMapElement.cpp:
1556         * html/HTMLObjectElement.cpp:
1557         * html/HTMLSelectElement.cpp:
1558         * html/shadow/ContentDistributor.cpp:
1559         * page/FocusController.cpp:
1560         * rendering/RenderCounter.cpp:
1561         * rendering/RenderListItem.cpp:
1562         * svg/SVGSVGElement.cpp:
1563         * svg/SVGStyledElement.cpp:
1564         * svg/SVGUseElement.cpp:
1565         * svg/animation/SMILTimeContainer.cpp:
1566         * svg/graphics/SVGImage.cpp:
1567
1568 2013-08-12  Antti Koivisto  <antti@apple.com>
1569
1570         Move some Document recalcStyle code to StyleResolveTree
1571         https://bugs.webkit.org/show_bug.cgi?id=119676
1572
1573         Reviewed by Andreas Kling.
1574
1575         Move the code that resolves the document and child styles to Style::resolveTree(Document*).
1576
1577         * dom/Document.cpp:
1578         (WebCore::Document::recalcStyle):
1579         * style/StyleResolveTree.cpp:
1580         (WebCore::Style::resolveTree):
1581         * style/StyleResolveTree.h:
1582
1583 2013-08-12  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1584
1585         Resource leak related to gstreamer and videos
1586         https://bugs.webkit.org/show_bug.cgi?id=109350
1587
1588         Reviewed by Eric Carlson.
1589
1590         Since active DOM object are only stopped once and can not be restarted, we can
1591         unreference the media player there, instead of waiting for garbage collection.
1592
1593         If the r152778 is rolled back, this also breaks a circular reference between
1594         GStreamer and WebKit which prevented garbage collecting from triggering.
1595
1596         * html/HTMLMediaElement.cpp:
1597         (WebCore::HTMLMediaElement::stop):
1598
1599 2013-08-12  Gabor Rapcsanyi  <rgabor@webkit.org>
1600
1601         [Qt] Unreviewed buildfix for webaudio.
1602
1603         * Target.pri: Add missing files
1604
1605 2013-08-12  Andreas Kling  <akling@apple.com>
1606
1607         Some build juice for the Windows bots after r153926 + r153927.
1608
1609         * html/shadow/MediaControlElements.cpp:
1610         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
1611         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsFullscreen):
1612         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime):
1613
1614 2013-08-11  Sam Weinig  <sam@webkit.org>
1615
1616         Move RenderMathMLSpace.h/cpp to the right group in the Xcode project.
1617
1618         Reviewed by Dean Jackson.
1619
1620         * WebCore.xcodeproj/project.pbxproj:
1621
1622 2013-08-11  Andreas Kling  <akling@apple.com>
1623
1624         Make Page::settings() return a reference.
1625         <http://webkit.org/b/119662>
1626
1627         Reviewed by Anders Carlsson.
1628
1629         ...and remove some pointless null checks that were exposed by doing this.
1630
1631 2013-08-11  Andreas Kling  <akling@apple.com>
1632
1633         Make some things that return never-null pointers return references instead.
1634         <http://webkit.org/b/119660>
1635
1636         Reviewed by Antti Koivisto.
1637
1638         These functions never return null anyway, so remove any ambiguity by letting
1639         them return references instead of pointers.
1640
1641         - Node::ensureRareData()
1642         - Element::ensureUniqueElementData()
1643         - Element::ensureShadow()
1644         - Element::ensureUserAgentShadowRoot()
1645         - StyledElement::ensureMutableInlineStyle()
1646         - NodeRareData::ensureNodeLists()
1647         - NodeRareData::ensureMutationObserverData()
1648         - EventTarget::ensureEventTargetData()
1649         - Document::ensureStyleResolver()
1650         - Document::selectorQueryCache()
1651         - Document::mediaQueryMatcher()
1652         - FlowThreadController::ensureRenderFlowThreadWithName()
1653         - HTMLTrackElement::ensureTrack()
1654         - SVGElement::ensureSVGRareData()
1655         - AnimationControllerPrivate::ensureCompositeAnimation()
1656
1657 2013-08-11  Sam Weinig  <sam@webkit.org>
1658
1659         Cleanup MediaQueryListListener
1660         https://bugs.webkit.org/show_bug.cgi?id=119664
1661
1662         Reviewed by Andreas Kling.
1663
1664         Make MediaQueryListListener a proper WebIDL callback.
1665
1666         * CMakeLists.txt:
1667         * DerivedSources.cpp:
1668         * DerivedSources.make:
1669         * DerivedSources.pri:
1670         * GNUmakefile.list.am:
1671         * Target.pri:
1672         * WebCore.vcxproj/WebCore.vcxproj:
1673         * WebCore.vcxproj/WebCore.vcxproj.filters:
1674         * WebCore.xcodeproj/project.pbxproj:
1675         Update project files.
1676
1677         * bindings/scripts/CodeGeneratorJS.pm:
1678         (GenerateCallbackHeader):
1679         (GenerateCallbackImplementation):
1680         (JSValueToNative):
1681         * bindings/scripts/IDLAttributes.txt:
1682         Add support for CallbackNeedsOperatorEqual, which adds an operator==.
1683
1684         * css/MediaAllInOne.cpp:
1685         Remove MediaQueryListListener.cpp.
1686
1687         * css/MediaQueryListListener.cpp:
1688         Removed.
1689
1690         * css/MediaQueryListListener.h:
1691         (WebCore::MediaQueryListListener::~MediaQueryListListener):
1692         (WebCore::MediaQueryListListener::MediaQueryListListener):
1693         * css/MediaQueryListListener.idl:
1694         Convert to a proper WebIDL callback.
1695
1696         * css/MediaQueryMatcher.cpp:
1697         (WebCore::MediaQueryMatcher::Listener::evaluate):
1698         (WebCore::MediaQueryMatcher::styleResolverChanged):
1699         * css/MediaQueryMatcher.h:
1700         Remove all traces of the ScriptState.
1701
1702 2013-08-11  Carlos Garcia Campos  <cgarcia@igalia.com>
1703
1704         Unreviewed. Fix make distcheck.
1705
1706         * GNUmakefile.list.am: Remove unexistent header file.
1707
1708 2013-08-09  Gustavo Noronha Silva  <gns@gnome.org>
1709
1710         [GObject] Wrap KeyboardEvent
1711         https://bugs.webkit.org/show_bug.cgi?id=119651
1712
1713         Reviewed by Christophe Dumez.
1714
1715         This exposes KeyboardEvent to our GObject API. It is required for handling
1716         keyboard events, such as keydown, keypress, and so on.
1717
1718         * bindings/gobject/GNUmakefile.am:
1719         * bindings/gobject/WebKitDOMPrivate.cpp:
1720         (WebKit::wrap): make sure we create a WebKitDOMKeyboardEvent for a DOM event that
1721         is a KeyboardEvent.
1722         * bindings/scripts/CodeGeneratorGObject.pm:
1723         (GetBaseClass): make WebKitDOMEvent be WebKitDOMKeyboardEvent's parent, like we do
1724         for WebKitDOMMouseEvent.
1725         * dom/KeyboardEvent.idl: generate a single initialization method.
1726
1727 2013-08-09  Jer Noble  <jer.noble@apple.com>
1728
1729         Crash in com.apple.WebKit.WebContent at com.apple.MediaToolbox.
1730         https://bugs.webkit.org/show_bug.cgi?id=119645
1731
1732         Reviewed by Eric Carlson.
1733
1734         Work around crash caused by <rdar://problem/14688471> by releasing
1735         m_request as soon as keys have been added to it.
1736
1737         * Modules/encryptedmedia/CDMPrivateAVFoundation.mm:
1738         (WebCore::CDMSessionAVFoundation::update):
1739
1740 2013-08-09  Anders Carlsson  <andersca@apple.com>
1741
1742         Artifacts seen sometimes with layer backed WebKit1 plug-in
1743         https://bugs.webkit.org/show_bug.cgi?id=119647
1744         <rdar://problem/14002715>
1745
1746         Reviewed by Beth Dakin.
1747
1748         Don't try to paint layer backed views - they will be painted by Core Animation.
1749
1750         * platform/mac/WidgetMac.mm:
1751         (WebCore::Widget::paint):
1752
1753 2013-08-09  Rob Buis  <rwlbuis@webkit.org>
1754
1755         ASSERTION FAILED: stroke->opacity != other->stroke->opacity in WebCore::SVGRenderStyle::diff
1756         https://bugs.webkit.org/show_bug.cgi?id=119623
1757
1758         Reviewed by Dirk Schulze.
1759
1760         Include all the stroke attributes in the style diff comparison, the visited links ones were missing.
1761
1762         Test: svg/animations/animate-stroke-crasher.html
1763
1764         * rendering/style/SVGRenderStyle.cpp:
1765         (WebCore::SVGRenderStyle::diff):
1766
1767 2013-08-09  Alexey Proskuryakov  <ap@apple.com>
1768
1769         REGRESSION (r142755): window.open creates an invisible window when width and height are 0
1770         https://bugs.webkit.org/show_bug.cgi?id=119633
1771
1772         Reviewed by Darin Adler.
1773
1774         Test: fast/dom/Window/open-zero-size-as-default.html
1775
1776         Relying on each WebKit to refuse setting size to zero was fragile - because this
1777         required each one to have the check, and because by the time the client was called,
1778         the initially zero size was not necessarily zero.
1779
1780         * loader/FrameLoader.cpp: (WebCore::createWindow): When sizes are zero, keep the
1781         size the window was created with, because that's the default one by definition.
1782
1783         * page/DOMWindow.cpp: (WebCore::DOMWindow::adjustWindowRect): It's too late to
1784         check for zero size now, it's been mangled to adjust for the difference between
1785         window and viewport size.
1786
1787 2013-08-09  Eric Carlson  <eric.carlson@apple.com>
1788
1789         [Mac] some track language tags are not recognized
1790         https://bugs.webkit.org/show_bug.cgi?id=119643
1791
1792         Reviewed by Dean Jackson.
1793
1794         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1795         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Always call languageOfPrimaryAudioTrack(),
1796             a track may have changed so we may have a new language.
1797         (WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack): Call [AVAssetTrack languageCode]
1798             if [AVAssetTrack extendedLanguageTag] returns NULL in case the media file has an old
1799             QuickTime language code.
1800
1801 2013-08-09  Dean Jackson  <dino@apple.com>
1802
1803         Captions menu needs to reset text-align
1804         https://bugs.webkit.org/show_bug.cgi?id=119637
1805
1806         Reviewed by Eric Carlson.
1807
1808         Reset the text-align property on the menu so that it
1809         doesn't get the inherited value. The full fix for all
1810         controls is http://webkit.org/b/116100.
1811
1812         * css/mediaControlsQuickTime.css:
1813         (video::-webkit-media-controls-closed-captions-container):
1814
1815 2013-08-09  Beth Dakin  <bdakin@apple.com>
1816
1817         AX: Not able to use arrow keys to read text in a WK2 app
1818         https://bugs.webkit.org/show_bug.cgi?id=119605
1819         -and corresponding-
1820         <rdar://problem/14281275>
1821
1822         Reviewed by Darin Adler.
1823
1824         This code from defaultKeyboardEventHandler() is the magic that makes this AX 
1825         functionality work. This patch moves that into a separate function so that we can 
1826         call it from WK2.
1827         * WebCore.exp.in:
1828         * page/EventHandler.cpp:
1829         (WebCore::EventHandler::handleKeyboardSelectionMovementForAccessibility):
1830         (WebCore::EventHandler::defaultKeyboardEventHandler):
1831         * page/EventHandler.h:
1832
1833 2013-08-09  Antti Koivisto  <antti@apple.com>
1834
1835         Move static StyleResolver functions to Style namespace
1836         https://bugs.webkit.org/show_bug.cgi?id=119629
1837
1838         Reviewed by Sam Weinig and Andreas Kling.
1839
1840         - Move static font size computation functions to StyleFontSizeFunctions.h/.cpp
1841         - Move StyleResolver::styleForDocument to Style::resolveForDocument
1842
1843         * WebCore.xcodeproj/project.pbxproj:
1844         * css/DeprecatedStyleBuilder.cpp:
1845         (WebCore::ApplyPropertyFontFamily::applyInitialValue):
1846         (WebCore::ApplyPropertyFontFamily::applyValue):
1847         (WebCore::ApplyPropertyFontSize::applyInitialValue):
1848         (WebCore::ApplyPropertyFontSize::applyValue):
1849         * css/StyleResolver.cpp:
1850         (WebCore::StyleResolver::adjustRenderStyle):
1851         (WebCore::checkForOrientationChange):
1852         (WebCore::StyleResolver::applyProperty):
1853         (WebCore::StyleResolver::checkForGenericFamilyChange):
1854         (WebCore::StyleResolver::initializeFontStyle):
1855         (WebCore::StyleResolver::setFontSize):
1856         * css/StyleResolver.h:
1857         * dom/Document.cpp:
1858         (WebCore::Document::recalcStyle):
1859         * editing/EditingStyle.cpp:
1860         (WebCore::legacyFontSizeFromCSSValue):
1861         * html/HTMLLinkElement.cpp:
1862         (WebCore::HTMLLinkElement::process):
1863         * rendering/style/RenderStyle.cpp:
1864         (WebCore::RenderStyle::getFontAndGlyphOrientation):
1865         
1866             Moved from StyleResolver.cpp so it can be used by Style::resolveForDocument().
1867             This depends on RenderStyle only so it is a natural member function.
1868
1869         * rendering/style/RenderStyle.h:
1870         * rendering/svg/RenderSVGInlineText.cpp:
1871         (WebCore::RenderSVGInlineText::computeNewScaledFontForStyle):
1872         * style/StyleFontSizeFunctions.cpp: Copied from Source/WebCore/css/StyleResolver.cpp.
1873         (WebCore::Style::computedFontSizeFromSpecifiedSize):
1874         (WebCore::Style::computedFontSizeFromSpecifiedSizeForSVGInlineText):
1875         (WebCore::Style::fontSizeForKeyword):
1876         (WebCore::Style::legacyFontSizeForPixelSize):
1877         * style/StyleFontSizeFunctions.h: Added.
1878         * style/StyleResolveForDocument.cpp: Added.
1879         (WebCore::Style::resolveForDocument):
1880         * style/StyleResolveForDocument.h: Added.
1881
1882 2013-08-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1883
1884         Add support for KeyboardEvent.location attribute
1885         https://bugs.webkit.org/show_bug.cgi?id=119326
1886
1887         Reviewed by Benjamin Poulain.
1888
1889         Add support for KeyboardEvent.location attribute as per the latest specification:
1890         http://dev.w3.org/2006/webapi/DOM-Level-3-Events/html/DOM3-Events.html#events-KeyboardEvent
1891
1892         IE10, Firefox 22 and recently Blink all support KeyboardEvent.location already.
1893
1894         The deprecated 'keyLocation' attribute was not removed to maintain backward
1895         compatibility.
1896
1897         No new tests, covered by existing tests.
1898
1899         * bindings/objc/PublicDOMInterfaces.h:
1900         * bindings/scripts/CodeGeneratorJS.pm:
1901         (GenerateConstructorDefinition):
1902         * dom/KeyboardEvent.cpp:
1903         (WebCore::KeyboardEventInit::KeyboardEventInit):
1904         (WebCore::KeyboardEvent::KeyboardEvent):
1905         (WebCore::KeyboardEvent::initKeyboardEvent):
1906         * dom/KeyboardEvent.h:
1907         (WebCore::KeyboardEvent::location):
1908         * dom/KeyboardEvent.idl:
1909
1910 2013-08-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1911
1912         Make atob() throw an InvalidCharacterError on excess padding characters
1913         https://bugs.webkit.org/show_bug.cgi?id=118898
1914
1915         Reviewed by Darin Adler.
1916
1917         According to the latest specification, window.atob() should throw an
1918         InvalidCharacterError on excess padding characters:
1919         http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html#dom-windowbase64-atob
1920
1921         This behavior is consistent with both Firefox, IE10 and recently Blink.
1922
1923         No new tests, already covered by:
1924         fast/dom/Window/atob-btoa.html
1925
1926         * page/DOMWindow.cpp:
1927         (WebCore::DOMWindow::atob):
1928
1929 2013-08-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1930
1931         Make DOMImplementation::hasFeature() behave according to specification
1932         https://bugs.webkit.org/show_bug.cgi?id=119329
1933
1934         Reviewed by Ryosuke Niwa.
1935
1936         Make DOMImplementation::hasFeature() behave according to the latest specification:
1937         http://dom.spec.whatwg.org/#dom-domimplementation-hasfeature
1938
1939         Specifically, the function should now return true unconditionally for any non-SVG feature.
1940         This behavior is consistent with Firefox and since recently Blink.
1941
1942         hasFeature() originally would report whether the user agent claimed to support a
1943         given DOM feature, but experience proved it was not nearly as reliable or granular
1944         as simply checking whether the desired interfaces, attributes, or methods existed.
1945         As such, it should no longer be used, but continues to exist (and simply returns
1946         true) so that old pages don't stop working.
1947
1948         No new tests, covered by existing tests.
1949
1950         * dom/DOMImplementation.cpp:
1951         (WebCore::isSupportedSVG10Feature):
1952         (WebCore::isSupportedSVG11Feature):
1953         (WebCore::DOMImplementation::hasFeature):
1954
1955 2013-08-09  Alejandro G. Castro  <alex@igalia.com>
1956
1957         [GTK] [EFL] Enable tiled shadow blur for the inset shadows.
1958         https://bugs.webkit.org/show_bug.cgi?id=119078
1959
1960         Reviewed by Martin Robinson.
1961
1962         Already covered in the tests.
1963
1964         * platform/graphics/GraphicsContext.cpp:
1965         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1966         (WebCore::fillCurrentCairoPath): Added to allow fill the path
1967         without the shadow.
1968         (WebCore::shadowAndFillCurrentCairoPath):
1969         (WebCore::GraphicsContext::fillRectWithRoundedHole): Added cairo
1970         implementation.
1971
1972 2013-08-09  Jakob Petsovits  <jpetsovits@blackberry.com>
1973
1974         [BlackBerry] Don't release the canvas Drawable, flush it directly instead.
1975         https://bugs.webkit.org/show_bug.cgi?id=119589
1976         https://jira.bbqnx.net/browse/BRWSR-12531
1977         JIRA 444857
1978
1979         Reviewed by George Staikos.
1980
1981         The previous code here used releaseBufferDrawable() to
1982         flush painted ImageBuffer contents, but then proceeded
1983         to use that released Drawable for further painting
1984         without ever locking a new one.
1985
1986         In an implementation that actually releases the Drawable
1987         rather than keeping it around and just flushing it,
1988         this will wreak havoc as bad as black screens or crashes.
1989
1990         As a solution that doesn't require the ImageBuffer object
1991         to swap out its m_canvas member for a new Drawable, we can
1992         access the PlatformGraphicsContext::flush() method directly
1993         to achieve the same effect as was previously intended by
1994         calling releaseBufferDrawable(). All it needs is letting
1995         the canvas layer know about the Drawable so it can call
1996         that flush() method by itself.
1997
1998         No new tests, verified by not crashing with an aforementioned
1999         implementation of releaseBufferDrawable().
2000
2001         * platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:
2002         (WebCore::CanvasLayerCompositingThreadClient::CanvasLayerCompositingThreadClient):
2003         (WebCore::CanvasLayerCompositingThreadClient::commitPendingTextureUploads):
2004         (WebCore::CanvasLayerWebKitThread::CanvasLayerWebKitThread):
2005         * platform/graphics/blackberry/CanvasLayerWebKitThread.h:
2006         (WebCore::CanvasLayerWebKitThread::create):
2007         * platform/graphics/blackberry/ImageBufferBlackBerry.cpp:
2008         (WebCore::ImageBuffer::ImageBuffer):
2009         (WebCore::ImageBuffer::~ImageBuffer):
2010
2011 2013-08-08  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2012
2013         [Qt][WK2] Composited and transformed links asserts in tap highlight
2014         https://bugs.webkit.org/show_bug.cgi?id=94345
2015
2016         Reviewed by Jocelyn Turcotte.
2017
2018         Use a mapping that does not assert when hitting transforms. We still skip
2019         transforms that produces non-rectangular areas.
2020
2021         * page/GestureTapHighlighter.cpp:
2022
2023 2013-08-09  Gabor Abraham  <abrhm@inf.u-szeged.hu>
2024
2025         Buildfix. Fix warning after r153887:
2026         control reaches end of non-void function [-Werror=return-type]
2027
2028         Reviewed by Csaba Osztrogonác.
2029
2030         * svg/SVGAnimateElement.cpp:
2031         (WebCore::SVGAnimateElement::animatedPropertyTypeSupportsAddition):
2032
2033 2013-08-09  Bruno de Oliveira Abinader  <bruno.d@partner.samsung.com>
2034
2035         Text decorations should be listed as non-inheritable
2036         https://bugs.webkit.org/show_bug.cgi?id=119608
2037
2038         Reviewed by Andreas Kling.
2039
2040         Both "text-decoration" specs (CSS 2.1, CSS 3) and "text-decoration-line"
2041         spec (CSS 3) states these properties are not inherited (w/ exceptions,
2042         which are currently handled by -in-effect property), however those were
2043         listed as inherited for no reason - thus preserving behavior as shown by
2044         layout test results.
2045
2046         Backported from Blink: https://codereview.chromium.org/20751008
2047
2048         Updated getComputedStyle tests for both 'text-decoration' and
2049         'text-decoration-line' properties to check that both are not implicitly
2050         inherited.
2051
2052         * css/CSSProperty.cpp:
2053         (WebCore::CSSProperty::isInheritedProperty):
2054
2055 2013-08-09  Andreas Kling  <akling@apple.com>
2056
2057         I wish we had a Windows EWS. :(
2058
2059         * css/ElementRuleCollector.cpp:
2060         (WebCore::ElementRuleCollector::doCollectMatchingRulesForList): No range-based for today.
2061
2062 2013-08-09  Rob Buis  <rwlbuis@webkit.org>
2063
2064         ASSERT_NOT_REACHED() touched in WebCore::SVGAnimatedStringAnimator::addAnimatedTypes
2065         https://bugs.webkit.org/show_bug.cgi?id=113224
2066
2067         Reviewed by Darin Adler.
2068
2069         Do not perform from-by animations for non-additive attributes.
2070
2071         Test: svg/animations/non-additive-type-from-by-animation.html
2072
2073         * svg/SVGAnimateElement.cpp:
2074         (WebCore::SVGAnimateElement::calculateFromAndByValues):
2075         (WebCore::SVGAnimateElement::animatedPropertyTypeSupportsAddition):
2076         (WebCore::SVGAnimateElement::isAdditive):
2077         * svg/SVGAnimateElement.h:
2078
2079 2013-08-09  Rob Buis  <rwlbuis@webkit.org>
2080
2081         ASSERT(m_type == toSVGTransform.type())
2082         https://bugs.webkit.org/show_bug.cgi?id=113217
2083
2084         Reviewed by Darin Adler.
2085
2086         For to animations clear the transform list while animating and reset to it after the animation is done.
2087         This matches Firefox and Opera 12 behavior.
2088
2089         Tests: svg/animations/animateTransform-to-scale-expected.svg
2090                svg/animations/animateTransform-to-scale.svg
2091
2092         * svg/SVGAnimatedTransformList.cpp:
2093         (WebCore::SVGAnimatedTransformListAnimator::calculateAnimatedValue):
2094
2095 2013-08-09  Arunprasad Rajkumar  <arurajku@cisco.com>
2096
2097         [Qt] QtWebKit should allow sending domain specific keycode to HTML applications
2098         https://bugs.webkit.org/show_bug.cgi?id=118445
2099
2100         Reviewed by Allan Sandfeld Jensen.
2101
2102         No new test required, it is covered by QtWebKit API test.
2103
2104         This fix allows sending QKeyEvent::nativeVirtualKey as the DOM KeyboardEvent keyCode value instead
2105         of Windows virtual key code. It can be enabled/disabled using "_q_useNativeVirtualKeyAsDOMKey"
2106         dynamic property present in QWebPage.
2107
2108         * platform/PlatformKeyboardEvent.h:
2109         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2110         * platform/qt/PlatformKeyboardEventQt.cpp:
2111         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2112         (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent):
2113
2114 2013-08-09  Renata Hodovan  <reni@webkit.org>
2115
2116         Missing NULL check in ApplyStyleCommand::applyInlineStyleToNodeRange()
2117         https://bugs.webkit.org/show_bug.cgi?id=119570
2118
2119         Reviewed by Ryosuke Niwa.
2120
2121         The m_mutableStyleSet of EditingStyle can be NULL in ApplyStyleCommand::applyInlineStyleToNodeRange but
2122         this scenario was not checked earlier.
2123
2124         Test: editing/execCommand/null-style-crash.html
2125
2126         * css/StylePropertySet.cpp:
2127         (WebCore::MutableStylePropertySet::mergeAndOverrideOnConflict):
2128         * css/StylePropertySet.h:
2129         * css/ViewportStyleResolver.cpp:
2130         (WebCore::ViewportStyleResolver::addViewportRule):
2131         * editing/ApplyStyleCommand.cpp:
2132         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
2133         * editing/EditingStyle.cpp:
2134         (WebCore::styleFromMatchedRulesForElement):
2135         (WebCore::EditingStyle::mergeStyleFromRules):
2136         (WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
2137
2138 2013-08-09  Andreas Kling  <akling@apple.com>
2139
2140         ElementRuleCollector: Use range-based for syntax in rule collection loop.
2141         <http://webkit.org/b/119617>
2142         <rdar://problem/14695311>
2143
2144         Reviewed by Antti Koivisto.
2145
2146         * css/ElementRuleCollector.cpp:
2147         (WebCore::ElementRuleCollector::doCollectMatchingRulesForList):
2148
2149 2013-08-09  Andreas Kling  <akling@apple.com>
2150
2151         StyleRule*::properties() should return const references.
2152         <http://webkit.org/b/119596>
2153
2154         Reviewed by Antti Koivisto.
2155
2156         Make StyleRule::properties() & friends return const-references instead of
2157         pointers. This exposed some pointless null checking, since rules should
2158         always have properties.
2159
2160         All rule objects that contain properties now require a StylePropertySet at
2161         the time of construction instead having you call setProperties() later.
2162
2163         The only rules that could ever have null properties were the default-inserted
2164         animation keyframe rules for 0% and 100% that we'd conjure up if the author
2165         didn't provide them. Now they just have an empty property set instead.
2166
2167         * css/CSSFontFaceRule.cpp:
2168         (WebCore::CSSFontFaceRule::cssText):
2169         * css/CSSFontSelector.cpp:
2170         (WebCore::CSSFontSelector::addFontFaceRule):
2171         * css/CSSPageRule.cpp:
2172         (WebCore::CSSPageRule::cssText):
2173         * css/CSSParser.cpp:
2174         (WebCore::CSSParser::createFilterRule):
2175         (WebCore::CSSParser::createStyleRule):
2176         (WebCore::CSSParser::createFontFaceRule):
2177         (WebCore::CSSParser::rewriteSpecifiers):
2178         * css/CSSStyleRule.cpp:
2179         (WebCore::CSSStyleRule::cssText):
2180         * css/ElementRuleCollector.cpp:
2181         (WebCore::leftToRightDeclaration):
2182         (WebCore::rightToLeftDeclaration):
2183         (WebCore::ElementRuleCollector::addElementStyleProperties):
2184         (WebCore::ElementRuleCollector::doCollectMatchingRulesForList):
2185         * css/PageRuleCollector.cpp:
2186         (WebCore::PageRuleCollector::matchPageRulesForList):
2187         * css/StylePropertySet.cpp:
2188         (WebCore::MutableStylePropertySet::mergeAndOverrideOnConflict):
2189         * css/StylePropertySet.h:
2190         * css/StyleResolver.cpp:
2191         (WebCore::StyleResolver::MatchResult::addMatchedProperties):
2192         (WebCore::StyleResolver::styleForKeyframe):
2193         (WebCore::StyleResolver::keyframeStylesForAnimation):
2194         * css/StyleResolver.h:
2195         * css/StyleRule.cpp:
2196         (WebCore::StyleRule::StyleRule):
2197         (WebCore::StyleRule::create):
2198         (WebCore::StyleRulePage::StyleRulePage):
2199         (WebCore::StyleRuleFontFace::StyleRuleFontFace):
2200         (WebCore::StyleRuleViewport::StyleRuleViewport):
2201         (WebCore::StyleRuleViewport::mutableProperties):
2202         (WebCore::StyleRuleFilter::StyleRuleFilter):
2203         * css/StyleRule.h:
2204         (WebCore::StyleRule::create):
2205         (WebCore::StyleRule::properties):
2206         (WebCore::StyleRuleFontFace::create):
2207         (WebCore::StyleRuleFontFace::properties):
2208         (WebCore::StyleRulePage::create):
2209         (WebCore::StyleRulePage::properties):
2210         (WebCore::StyleRuleViewport::create):
2211         (WebCore::StyleRuleViewport::properties):
2212         (WebCore::StyleRuleFilter::create):
2213         (WebCore::StyleRuleFilter::properties):
2214         * css/StyleSheetContents.cpp:
2215         (WebCore::StyleSheetContents::addSubresourceStyleURLs):
2216         (WebCore::childRulesHaveFailedOrCanceledSubresources):
2217         * css/WebKitCSSFilterRule.cpp:
2218         (WebCore::WebKitCSSFilterRule::cssText):
2219         * css/WebKitCSSKeyframeRule.cpp:
2220         (WebCore::StyleKeyframe::StyleKeyframe):
2221         (WebCore::StyleKeyframe::mutableProperties):
2222         * css/WebKitCSSKeyframeRule.h:
2223         (WebCore::StyleKeyframe::create):
2224         (WebCore::StyleKeyframe::properties):
2225         * css/WebKitCSSViewportRule.cpp:
2226         (WebCore::WebKitCSSViewportRule::cssText):
2227         * editing/ApplyStyleCommand.cpp:
2228         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
2229         * editing/EditingStyle.cpp:
2230         (WebCore::EditingStyle::mergeStyleFromRules):
2231         (WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
2232         * inspector/InspectorStyleSheet.cpp:
2233         (WebCore::InspectorStyleSheet::revalidateStyle):
2234         * page/PageSerializer.cpp:
2235         (WebCore::PageSerializer::retrieveResourcesForRule):
2236         * svg/SVGFontFaceElement.cpp:
2237         (WebCore::SVGFontFaceElement::SVGFontFaceElement):
2238         (WebCore::SVGFontFaceElement::fontFamily):
2239         (WebCore::SVGFontFaceElement::rebuildFontFace):
2240
2241 2013-08-09  Julien Brianceau  <jbrianceau@nds.com>
2242
2243         [Qt] Fix build (broken by changeset r153826).
2244         https://bugs.webkit.org/show_bug.cgi?id=119616
2245
2246         Reviewed by Andreas Kling.
2247
2248         * xml/parser/XMLDocumentParserQt.cpp:
2249         (WebCore::XMLDocumentParser::XMLDocumentParser):
2250
2251 2013-08-08  Tim Horton  <timothy_horton@apple.com>
2252
2253         navigator.plugins has plugins in it when plugins are disabled
2254         https://bugs.webkit.org/show_bug.cgi?id=119607
2255         <rdar://problem/14678030>
2256
2257         Reviewed by Anders Carlsson.
2258
2259         Test: plugins/navigator-plugins-disabled.html
2260
2261         * page/Settings.cpp:
2262         (WebCore::Settings::setPluginsEnabled):
2263         Refresh the plugin database when plugins are enabled or disabled.
2264         This is necessary to ensure that navigator.plugins will have the
2265         correct set of plugins after dynamically changing whether plugins
2266         are enabled, which makes the test for this patch possible (but it
2267         makes sense in the browser as well).
2268
2269 2013-08-08  Timothy Hatcher  <timothy@apple.com>
2270
2271         Allow SVG images to be drawn into canvas without tainting.
2272         https://bugs.webkit.org/show_bug.cgi?id=119492
2273
2274         Reviewed by Darin Adler.
2275
2276         Tests: svg/as-image/svg-canvas-not-tainted.html
2277                svg/as-image/svg-canvas-link-not-colored.html
2278                svg/as-image/svg-canvas-xhtml-tainted.html
2279
2280         * html/HTMLAnchorElement.cpp:
2281         (WebCore::HTMLAnchorElement::parseAttribute): Call shouldProhibitLinks.
2282         (WebCore::shouldProhibitLinks): Added.
2283         * html/HTMLAnchorElement.h:
2284         * html/HTMLImageElement.cpp:
2285         (WebCore::HTMLImageElement::parseAttribute): Call shouldProhibitLinks.
2286         * rendering/svg/RenderSVGRoot.cpp:
2287         (WebCore::RenderSVGRoot::isEmbeddedThroughSVGImage): Use isInSVGImage.
2288         * svg/SVGAElement.cpp:
2289         (WebCore::SVGAElement::svgAttributeChanged): Call shouldProhibitLinks.
2290         * svg/graphics/SVGImage.cpp:
2291         (WebCore::SVGImage::hasSingleSecurityOrigin): Added.
2292         (WebCore::isInSVGImage): Added.
2293         * svg/graphics/SVGImage.h:
2294
2295 2013-08-08  Simon Fraser  <simon.fraser@apple.com>
2296
2297         Fix ASSERT(m_contentsSolidColor.isValid()) assertion on iOS at nytimes.com
2298         https://bugs.webkit.org/show_bug.cgi?id=119603
2299
2300         Reviewed by Dean Jackson.
2301
2302         On iOS it's possible for a GraphicsLayer to transition between having
2303         a solid background color, and containing media. This happens on nytimes.com
2304         when playing video.
2305         
2306         In this case, GraphicsLayerCA::updateContentsColorLayer() would assert
2307         because m_contentsLayer had been already set up to contain media, but
2308         it would be trying to update the color.
2309         
2310         Fix by bailing from all the updateContents* functions if there is no
2311         contents layer, or that layer exists for a different purpose.
2312
2313         * platform/graphics/ca/GraphicsLayerCA.cpp:
2314         (WebCore::GraphicsLayerCA::updateContentsMediaLayer):
2315         (WebCore::GraphicsLayerCA::updateContentsCanvasLayer):
2316         (WebCore::GraphicsLayerCA::updateContentsColorLayer):
2317
2318 2013-08-08  Commit Queue  <commit-queue@webkit.org>
2319
2320         Unreviewed, rolling out r153847.
2321         http://trac.webkit.org/changeset/153847
2322         https://bugs.webkit.org/show_bug.cgi?id=119609
2323
2324         caused new SVG animation test failures (Requested by smfr on
2325         #webkit).
2326
2327         * svg/SVGAnimateElement.cpp:
2328         (WebCore::SVGAnimateElement::calculateFromAndByValues):
2329
2330 2013-08-08  Simon Fraser  <simon.fraser@apple.com>
2331
2332         Kill updateStyleForAllDocuments()
2333         https://bugs.webkit.org/show_bug.cgi?id=118093
2334
2335         Reviewed by Geoff Garen.
2336
2337         We should never have to eagerly update style, especially for all documents
2338         that the process knows about. The WebKit model is to update style when
2339         required for layout etc, not to update it eagerly.
2340         
2341         This is historical code whose origins are lost in the mists of KHTML.
2342         r42384 makes it possible to do away with this eager updating, and
2343         r55568 removed some calls. Discussion in bug 32580 suggests that
2344         form control code still need this, but tests still pass without it.
2345
2346         * bindings/js/JSCallbackData.cpp:
2347         (WebCore::JSCallbackData::invokeCallback):
2348         * bindings/js/JSCustomXPathNSResolver.cpp:
2349         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
2350         * dom/Document.cpp:
2351         (WebCore::Document::scheduleStyleRecalc):
2352         (WebCore::Document::unscheduleStyleRecalc):
2353         * dom/Document.h:
2354         * dom/Element.cpp:
2355         (WebCore::Element::setActive):
2356
2357 2013-08-08  Jer Noble  <jer.noble@apple.com>
2358
2359         [EME] MediaKey APIs should be prefixed.
2360         https://bugs.webkit.org/show_bug.cgi?id=119606
2361
2362         Reviewed by Anders Carlsson.
2363
2364         No new tests; updated exsisting tests with new names.
2365
2366         Prefix all new classes with "WebKit" and new methods on existing unprefixed
2367         classes with "webkit"
2368
2369         * Modules/encryptedmedia/MediaKeyMessageEvent.idl: MediaKeyMessageEvent -> WebKitMediaKeyMessageEvent
2370         * Modules/encryptedmedia/MediaKeySession.idl: MediaKeySession -> WebKitMediaKeySession
2371         * Modules/encryptedmedia/MediaKeys.idl: MediaKeys -> WebKitMediaKeys
2372         * html/HTMLMediaElement.idl: keys -> webkitKeys, setMediaKeys -> webkitSetMediaKeys
2373         * html/MediaKeyError.idl: MediaKeyError -> WebKitMediaKeyError
2374
2375 2013-08-08  Jer Noble  <jer.noble@apple.com>
2376
2377         [EME] setMediaKeys function as defined in the EME specification does not work
2378         https://bugs.webkit.org/show_bug.cgi?id=119597
2379
2380         Reviewed by Anders Carlsson.
2381
2382         No new tests; updated media/encrypted-media/encrypted-media-v2-syntax.html
2383
2384         Rename the mediaKeys attribute 'keys' and make readonly, and add an explicit
2385         setMediaKeys() method in HTMLMediaElement's IDL.
2386
2387         * html/HTMLMediaElement.h:
2388         (WebCore::HTMLMediaElement::keys):
2389         * html/HTMLMediaElement.idl:
2390
2391 2013-08-06  Sam Weinig  <sam@webkit.org>
2392
2393         Hashing SecurityOrigin's can lead to trouble if you mutate them :(
2394         https://bugs.webkit.org/show_bug.cgi?id=119533
2395         <rdar://problem/12978338>
2396
2397         Reviewed by Andreas Kling.
2398
2399         We are getting into trouble in the following circumstance:
2400         - You have a HashMap<RefPtr<SecurityOrigin>, Value> map.
2401         - You add security origin A (http, www.webkit.org, 80) to the map.
2402         - You mutate security origin A by domain relaxation, so that it has the domain webkit.org.
2403         - You add security origin B (http, www.webkit.org, 80) to the map.
2404         - You mutate security origin B by domain relaxation, so that it has the domain webkit.org.
2405             You now have two identical keys in the map.
2406         - Add few more items to the map causing a rehash.
2407         - When you try to add A and B back into the map, you will have a collision, because they now equal each other.
2408
2409         We should probably stop using SecurityOrigins as keys in HashMaps (and move to using a non-mutable SecurityOriginTuple,
2410         or something), but for now, we can just only use the scheme / host / port part for equality, which is what all the users
2411         really want.
2412
2413         * page/SecurityOriginHash.h:
2414         (WebCore::SecurityOriginHash::equal):
2415         Switch to using isSameSchemeHostPort() for SecurityOriginHash::equal().
2416
2417 2013-08-08  Rob Buis  <rwlbuis@webkit.org>
2418
2419         ASSERT_NOT_REACHED() touched in WebCore::SVGAnimatedStringAnimator::addAnimatedTypes
2420         https://bugs.webkit.org/show_bug.cgi?id=113224
2421
2422         Reviewed by Dirk Schulze.
2423
2424         Do not perform from-by animations for non-additive attributes.
2425
2426         Test: svg/animations/non-additive-type-from-by-animation.html
2427
2428         * svg/SVGAnimateElement.cpp:
2429         (WebCore::SVGAnimateElement::calculateFromAndByValues):
2430
2431 2013-08-08  Brent Fulgham  <bfulgham@apple.com>
2432
2433         [Windows] Improper Caption Button Displayed to Users
2434         https://bugs.webkit.org/show_bug.cgi?id=119593 
2435
2436         Reviewed by Eric Carlson.
2437
2438         Remove the custom drawing code for the Windows port, and
2439         have it render using the CSS/SVG markup like we do on OS X.
2440
2441         * rendering/RenderThemeWin.cpp: Remove drawing code.
2442         * rendering/RenderThemeWin.h: Remove declaration.
2443
2444 2013-08-08  Alex Christensen  <achristensen@apple.com>
2445
2446         Work towards WebGL on AppleWin port.
2447         https://bugs.webkit.org/show_bug.cgi?id=119562
2448
2449         Reviewed by Brent Fulgham.
2450
2451         * WebCore.vcxproj/WebCore.vcxproj:
2452         Build GLContext.cpp and GraphicsContext3DPrivate.cpp on AppleWin port.
2453         * WebCore.vcxproj/WebCore.vcxproj.filters:
2454         Moved GLContext and GraphicsContext3DPrivate from Cairo filter to graphics.
2455         * platform/graphics/GraphicsContext3D.h:
2456         Added m_webGLLayer for AppleWin port.
2457         * platform/graphics/GraphicsContext3DPrivate.cpp:
2458         Protected inclusion of PlatformContextCairo.h in USE(CAIRO) macro for non-cairo ports.
2459         * platform/graphics/win/GraphicsContext3DWin.cpp:
2460         Removed stub GraphicsContext3DPrivate implementation in favor of GraphicsContext3DPrivate.cpp.
2461         (WebCore::GraphicsContext3D::GraphicsContext3D):
2462         Added GraphicsContext3DPrivate and PlatformCALayer initialization.
2463         (WebCore::GraphicsContext3D::makeContextCurrent):
2464         (WebCore::GraphicsContext3D::platformGraphicsContext3D):
2465         Added implementation based on Cairo ports' to be refactored soon.
2466         (WebCore::GraphicsContext3D::platformLayer):
2467         Return PlatformCALayer's PlatformLayer instead of 0.
2468
2469 2013-08-08  Jer Noble  <jer.noble@apple.com>
2470
2471         [EME] Implement MediaKeys.isTypeSupported()
2472         https://bugs.webkit.org/show_bug.cgi?id=119586
2473
2474         Reviewed by Eric Carlson.
2475
2476         Test: media/encrypted-media/encrypted-media-is-type-supported.html
2477
2478         The EME spec has removed the extra keySystem parameter from
2479         HTMLMediaElement.canPlayType() in favor of a new isTypeSupported()
2480         method on MediaKeys.
2481
2482         To implement this method, the CDMFactory needs to know whether the
2483         registered CDM supports the specified mime type.  CDMs must register
2484         this new factory method, which requires changes to CDMPrivateAVFoundation
2485         and MockCDM.
2486
2487         Add the new MediaKeys.isTypeSupported() method:
2488         * Modules/encryptedmedia/MediaKeys.cpp:
2489         (WebCore::MediaKeys::isTypeSupported):
2490         * Modules/encryptedmedia/MediaKeys.h:
2491         * Modules/encryptedmedia/MediaKeys.idl:
2492
2493         Add the new factory CDMSupportsKeySystemAndMimeType method:
2494         * Modules/encryptedmedia/CDM.cpp:
2495         (WebCore::CDMFactory::CDMFactory): Now takes a third parameter.
2496         (WebCore::installedCDMFactories): When adding the AVFoundation CDM, pass its new method.
2497         (WebCore::CDM::registerCDMFactory): Now takes a third parameter.
2498         (WebCore::CDM::keySystemSupportsMimeType): Added.
2499         * Modules/encryptedmedia/CDM.h:
2500         * WebCore.exp.in:
2501
2502         Register this new method with the factory for all concrete CDMs:
2503         * Modules/encryptedmedia/CDMPrivateAVFoundation.h:
2504         * Modules/encryptedmedia/CDMPrivateAVFoundation.mm:
2505         (WebCore::CDMPrivateAVFoundation::supportsKeySystem):
2506         (WebCore::CDMPrivateAVFoundation::supportsKeySystemAndMimeType):
2507         * testing/Internals.cpp:
2508         (WebCore::Internals::initializeMockCDM):
2509         * testing/MockCDM.cpp:
2510         (WebCore::MockCDM::supportsKeySystem):
2511         (WebCore::MockCDM::supportsKeySystemAndMimeType):
2512         * testing/MockCDM.h:
2513
2514 2013-08-08  Rob Buis  <rwlbuis@webkit.org>
2515
2516         Crash in WTF::RefPtr<WebCore::SpaceSplitStringData>::operator UnspecifiedBoolType
2517         https://bugs.webkit.org/show_bug.cgi?id=118839
2518
2519         Reviewed by Darin Adler.
2520
2521         Take into account that elementData() can be null in classAttributeChanged.
2522
2523         Test: svg/animations/classAttributeSettingCrash.html
2524
2525         * dom/Element.cpp:
2526         (WebCore::Element::classAttributeChanged):
2527
2528 2013-08-08  Robert Hogan  <robert@webkit.org>
2529
2530         REGRESSION(r147019): Page has extra space
2531         https://bugs.webkit.org/show_bug.cgi?id=119424
2532
2533         Reviewed by David Hyatt.
2534
2535         Clear the overflow rect before recomputing it in table sections.
2536
2537         No new tests: the reduction uses jquery and I was unable to simulate the reduction without it.
2538
2539         * rendering/RenderTableSection.cpp:
2540         (WebCore::RenderTableSection::layoutRows):
2541         (WebCore::RenderTableSection::computeOverflowFromCells):
2542
2543 2013-08-08  Andreas Kling  <akling@apple.com>
2544
2545         Inserting multiple rules into an empty style sheet should avoid style recalc if possible.
2546         <http://webkit.org/b/119568>
2547
2548         Reviewed by Antti Koivisto.
2549
2550         As a follow-up to <http://webkit.org/b/119475>, where I added a hack for inserting
2551         a single rule into an empty style sheet, this broadens the optimization to support
2552         any number of rules.
2553
2554         This optimizes the scenario where a style sheet is added to the DOM and then populated
2555         rule-by-rule via CSSOM insertRule()/addRule() calls. Previously we'd do a full style
2556         recalc for this case, but now we'll treat it the same as a full sheet added at once.
2557
2558         * css/CSSStyleSheet.h:
2559         * css/CSSStyleSheet.cpp:
2560         (WebCore::CSSStyleSheet::willMutateRules):
2561
2562             Made willMutateRules() return whether the style sheet contents were cloned by the
2563             copy-on-write mechanism.
2564
2565         * dom/Document.h:
2566         (WebCore::CSSStyleSheet::didMutateRules):
2567         (WebCore::CSSStyleSheet::insertRule):
2568
2569             Replaced the InsertionIntoEmptySheet mutation type by a general RuleInsertion.
2570             The mutation callback checks if we're inserting into a rule that's not (yet) part
2571             of the document's active sheet set. In that case, we defer doing the style sheet
2572             until all the insertions are done (or something forces us to style+layout.)
2573
2574             Note that this optimization only happens if the style sheet had a single client.
2575             Shared style sheets that just got cloned before mutation may have pointers into
2576             them from the Document's StyleResolver, so we're forced to do an immediate sheet
2577             update in that case.
2578
2579         (WebCore::CSSStyleSheet::RuleMutationScope::RuleMutationScope):
2580         (WebCore::CSSStyleSheet::RuleMutationScope::~RuleMutationScope):
2581
2582             Moved these out-of-line.
2583
2584         (WebCore::CSSStyleSheet::didMutateRuleFromCSSStyleDeclaration):
2585         * css/PropertySetCSSStyleDeclaration.cpp:
2586         (WebCore::StyleRuleCSSStyleDeclaration::didMutate):
2587
2588             Made a separate mutation callback for CSSStyleDeclaration since its needs are
2589             so simple compared to the mutation callback from CSSStyleSheet. Seems better
2590             than adding yet another mode to the enum.
2591
2592         * dom/Document.cpp:
2593         (WebCore::Document::Document):
2594         (WebCore::Document::recalcStyle):
2595         (WebCore::Document::styleResolverChanged):
2596         (WebCore::Document::optimizedStyleSheetUpdateTimerFired):
2597         (WebCore::Document::scheduleOptimizedStyleSheetUpdate):
2598
2599             Added mechanism to defer doing a RecalcStyleIfNeeded.
2600
2601         (WebCore::Document::updateStyleIfNeeded):
2602
2603             Synchronize the optimized style sheet update if there's one scheduled.
2604             This ensures that stuff like layout-dependent property access won't operate
2605             on stale style.
2606
2607         * dom/DocumentStyleSheetCollection.h:
2608         (WebCore::DocumentStyleSheetCollection::pendingUpdateType):
2609         (WebCore::DocumentStyleSheetCollection::setPendingUpdateType):
2610         (WebCore::DocumentStyleSheetCollection::flushPendingUpdates):
2611         * dom/DocumentStyleSheetCollection.cpp:
2612         (WebCore::DocumentStyleSheetCollection::DocumentStyleSheetCollection):
2613         (WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
2614
2615             Have DSSC track the kind of style sheet update it needs to do (instead of just
2616             a boolean "needs update.") This is used by Document::recalcStyle() to make sure
2617             the right kind of update happens if there's one scheduled.
2618
2619         (WebCore::DocumentStyleSheetCollection::activeStyleSheetsContains):
2620
2621             Added helper to check if a CSSStyleSheet is part of the active set.
2622
2623 2013-08-08  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2624
2625         [WK1] NPStream::headers not initialized
2626         https://bugs.webkit.org/show_bug.cgi?id=119574
2627
2628         Reviewed by Alexey Proskuryakov.
2629
2630         Initialize the header field. According to user feedback that should solve some
2631         cases of random crashes when loading plugins on Mac and Windows.
2632
2633         * plugins/PluginStream.cpp:
2634         (WebCore::PluginStream::PluginStream):
2635
2636 2013-08-08  Andreas Kling  <akling@apple.com>
2637
2638         Element: Modernize attribute storage accessor functions.
2639         <http://webkit.org/b/119578>
2640
2641         Reviewed by Antti Koivisto.
2642
2643         Rename these functions to more WebKit-style names.
2644
2645         - const Attribute* attributeItem(index) => const Attribute& attributeAt(index)
2646         - const Attribute* getAttributeItem(name) => const Attribute* findAttributeByName(name)
2647         - unsigned getAttributeItemIndex(name) => unsigned findAttributeIndexByName(name)
2648
2649         Note that attributeAt() now returns a reference instead of a pointer. That's right.
2650
2651         * css/SelectorChecker.cpp:
2652         (WebCore::attributeValueMatches):
2653         (WebCore::anyAttributeMatches):
2654         * css/SelectorChecker.h:
2655         (WebCore::SelectorChecker::checkExactAttribute):
2656         * dom/Attr.cpp:
2657         (WebCore::Attr::elementAttribute):
2658         * dom/DatasetDOMStringMap.cpp:
2659         (WebCore::DatasetDOMStringMap::getNames):
2660         (WebCore::DatasetDOMStringMap::item):
2661         (WebCore::DatasetDOMStringMap::contains):
2662         * dom/Element.cpp:
2663         (WebCore::Element::detachAttribute):
2664         (WebCore::Element::removeAttribute):
2665         (WebCore::Element::getAttribute):
2666         (WebCore::Element::setAttribute):
2667         (WebCore::Element::setSynchronizedLazyAttribute):
2668         (WebCore::Element::setAttributeInternal):
2669         (WebCore::Element::setAttributeNode):
2670         (WebCore::Element::removeAttributeNode):
2671         (WebCore::Element::removeAttributeInternal):
2672         (WebCore::Element::getAttributeNode):
2673         (WebCore::Element::getAttributeNodeNS):
2674         (WebCore::Element::hasAttribute):
2675         (WebCore::Element::hasAttributeNS):
2676         (WebCore::Element::computeInheritedLanguage):
2677         (WebCore::Element::normalizeAttributes):
2678         (WebCore::Element::getURLAttribute):
2679         (WebCore::Element::getNonEmptyURLAttribute):
2680         (WebCore::Element::detachAllAttrNodesFromElement):
2681         (WebCore::Element::cloneAttributesFromElement):
2682         (WebCore::ElementData::isEquivalent):
2683         (WebCore::ElementData::findAttributeIndexByNameSlowCase):
2684         (WebCore::ElementData::findAttributeIndexByNameForAttributeNode):
2685         (WebCore::UniqueElementData::findAttributeByName):
2686         (WebCore::UniqueElementData::attributeAt):
2687         * dom/Element.h:
2688         (WebCore::Element::findAttributeIndexByName):
2689         (WebCore::Element::fastHasAttribute):
2690         (WebCore::Element::fastGetAttribute):
2691         (WebCore::Element::attributeAt):
2692         (WebCore::Element::findAttributeByName):
2693         (WebCore::ElementData::findAttributeByName):
2694         (WebCore::ElementData::findAttributeIndexByName):
2695         (WebCore::ElementData::attributeAt):
2696         * dom/NamedNodeMap.cpp:
2697         (WebCore::NamedNodeMap::removeNamedItem):
2698         (WebCore::NamedNodeMap::removeNamedItemNS):
2699         (WebCore::NamedNodeMap::item):
2700         * dom/Node.cpp:
2701         (WebCore::Node::dumpStatistics):
2702         (WebCore::Node::isDefaultNamespace):
2703         (WebCore::Node::lookupNamespaceURI):
2704         (WebCore::Node::lookupNamespacePrefix):
2705         (WebCore::Node::compareDocumentPosition):
2706         * dom/StyledElement.cpp:
2707         (WebCore::StyledElement::makePresentationAttributeCacheKey):
2708         (WebCore::StyledElement::rebuildPresentationAttributeStyle):
2709         * editing/MarkupAccumulator.cpp:
2710         (WebCore::MarkupAccumulator::appendElement):
2711         * editing/markup.cpp:
2712         (WebCore::completeURLs):
2713         (WebCore::StyledMarkupAccumulator::appendElement):
2714         * html/HTMLEmbedElement.cpp:
2715         (WebCore::HTMLEmbedElement::parametersForPlugin):
2716         * html/HTMLInputElement.cpp:
2717         (WebCore::HTMLInputElement::updateType):
2718         * html/HTMLObjectElement.cpp:
2719         (WebCore::HTMLObjectElement::parametersForPlugin):
2720         * html/HTMLSelectElement.cpp:
2721         (WebCore::HTMLSelectElement::parseAttribute):
2722         * html/parser/HTMLConstructionSite.cpp:
2723         (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement):
2724         * inspector/DOMPatchSupport.cpp:
2725         (WebCore::DOMPatchSupport::innerPatchNode):
2726         (WebCore::DOMPatchSupport::createDigest):
2727         * inspector/InspectorDOMAgent.cpp:
2728         (WebCore::InspectorDOMAgent::setAttributesAsText):
2729         (WebCore::InspectorDOMAgent::performSearch):
2730         (WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
2731         * page/PageSerializer.cpp:
2732         (WebCore::isCharsetSpecifyingNode):
2733         * svg/SVGStyledElement.cpp:
2734         (WebCore::SVGStyledElement::getPresentationAttribute):
2735         * xml/XPathFunctions.cpp:
2736         (WebCore::XPath::FunLang::evaluate):
2737         * xml/XPathNodeSet.cpp:
2738         (WebCore::XPath::NodeSet::traversalSort):
2739         * xml/XPathStep.cpp:
2740         (WebCore::XPath::Step::nodesInAxis):
2741         * xml/parser/XMLDocumentParserLibxml2.cpp:
2742         (WebCore::XMLDocumentParser::XMLDocumentParser):
2743         * xml/parser/XMLDocumentParserQt.cpp:
2744         (WebCore::XMLDocumentParser::XMLDocumentParser):
2745
2746 2013-08-08  Mark Lam  <mark.lam@apple.com>
2747
2748         Restoring use of StackIterator instead of Interpreter::getStacktrace().
2749         https://bugs.webkit.org/show_bug.cgi?id=119575.
2750
2751         Reviewed by Oliver Hunt.
2752
2753         No new tests.
2754
2755         * bindings/js/ScriptCallStackFactory.cpp:
2756         (WebCore::createScriptCallStack):
2757
2758 2013-08-08  Zalan Bujtas  <zalan@apple.com>
2759
2760         REGRESSION (r121551) Incorrect handling of invalid media query list.
2761         https://bugs.webkit.org/show_bug.cgi?id=119164
2762
2763         Reviewed by Antti Koivisto.
2764
2765         Differentiate between syntactically invalid media queries and media queries with empty expressions.
2766
2767         Introduce a dedicated function for valid, but empty expression queries, so that passing NULL MediaQuerySet
2768         object to CSSParser::createMediaRule() can indicate invalid media query.
2769
2770         Test: fast/media/invalid-media-query-list.html
2771
2772         * css/CSSGrammar.y.in:
2773         * css/CSSParser.cpp:
2774         (WebCore::CSSParser::createMediaRule):
2775         (WebCore::CSSParser::createEmptyMediaRule):
2776         * css/CSSParser.h:
2777
2778 2013-08-08  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2779
2780         Introduce toSVGMPathElement(), and use it
2781         https://bugs.webkit.org/show_bug.cgi?id=119566
2782
2783         Reviewed by Andreas Kling.
2784
2785         As a step to change static_cast with toSVGXXX, static_cast<SVGMPathElement*> can
2786         be changed with toSVGMPathElement().
2787
2788         * svg/SVGAnimateMotionElement.cpp:
2789         (WebCore::SVGAnimateMotionElement::updateAnimationPath):
2790         * svg/SVGMPathElement.h:
2791         (WebCore::toSVGMPathElement):
2792         * svg/SVGPathElement.cpp:
2793         (WebCore::SVGPathElement::invalidateMPathDependencies):
2794
2795 2013-08-08  Antti Koivisto  <antti@apple.com>
2796
2797         Move more style recalc code to StyleResolveTree.cpp
2798         https://bugs.webkit.org/show_bug.cgi?id=119553
2799
2800         Reviewed by Andreas Kling.
2801
2802         * css/StyleResolver.cpp:
2803         * css/StyleResolver.h:
2804         
2805             Remove now unused StyleResolver::styleForText.
2806
2807         * dom/ElementShadow.cpp:
2808         * dom/ElementShadow.h:
2809         
2810             Remove ElementShadow::recalcStyle.
2811
2812         * dom/ShadowRoot.cpp:
2813         (WebCore::ShadowRoot::setResetStyleInheritance):
2814         
2815             Use Style::resolveTree instead of ElementShadow::recalcStyle.
2816
2817         * dom/ShadowRoot.h:
2818         
2819             Remove ShadowRoot::recalcStyle.
2820
2821         * dom/Text.cpp:
2822         * dom/Text.h:
2823         
2824             Remove Text::recalcTextStyle.
2825
2826         * style/StyleResolveTree.cpp:
2827         (WebCore::Style::updateTextStyle):
2828         
2829             Moved from Text::recalcTextStyle. Speed up by just setting the parent style on common case.
2830
2831         (WebCore::Style::resolveShadowTree):
2832         
2833             Moved from ShadowRoot::recalcStyle. 
2834             Simplified to cover only cases that can occur with the current shadow DOM support.
2835
2836         (WebCore::Style::resolveTree):
2837
2838 2013-08-08  Andreas Kling  <akling@apple.com>
2839
2840         REGRESSION(r139282): Old caret sometimes gets "stuck" (not repainted) in contenteditable elements.
2841         <http://webkit.org/b/119520>
2842         <rdar://problem/14658929>
2843
2844         Reviewed by Simon Fraser.
2845
2846         When computing a new caret rect, don't forget to repaint the old rect if the caret jumped
2847         from one node to another.
2848         We were being a little too clever, assuming that oldRect==newRect meant that no repaint was
2849         necessary, but moving from (0,0) in one node to (0,0) in another would cause a ghost caret
2850         in the old node.
2851
2852         Test: fast/repaint/caret-jump-between-nodes.html
2853
2854         * editing/FrameSelection.cpp:
2855         (WebCore::FrameSelection::recomputeCaretRect):
2856
2857             Fall through all the way down to caret repaints if the selection's new anchor node is not
2858             the same as m_previousCaretNode.
2859
2860 2013-08-07  Andrei Bucur  <abucur@adobe.com>
2861
2862         [CSS Regions] Propagate overflow from the flow thread to the first and last region
2863         https://bugs.webkit.org/show_bug.cgi?id=118526
2864
2865         Reviewed by David Hyatt.
2866
2867         The patch implements layout overflow propagation for the first and last regions. The approach
2868         taken is triggering a simple layout on the regions after the named flows are laid out
2869         that extracts the layout overflow from the flow thread and adds it to the regions.
2870
2871         The process is based on adding two new layout phases: the overflow phase and the final phase.
2872         The overflow phase is set after the flow threads are laid out and it marks the regions as
2873         needing to extract the overflow from the flow thread. In case there are blocks with auto overflow
2874         it's possible the overflow to create scrollbars that shrink the regions. In this case the flow
2875         thread is relaid out and set in the final phase, forcing the regions to recollect the layout
2876         overflow. In theory this would be an N-step layout because scrollbars can force content to change
2877         regions and create overflow for other blocks (and thus creating more scrollbars). For now, we are
2878         limiting this to the first pass by inserting this new final layout phase.
2879
2880         A short description of the processing model for a document:
2881         - layout the document (all the flow threads should be in the constrained layout phase after this step)
2882         - reverse iterate through the flow threads and mark the regions for simplified layout (we need to
2883         reverse iterate so the overflow can correctly propagate with nested regions)
2884         - if the layout changes the size of a region, invalidate the flow thread and when laying it out mark
2885         it as needing a new pass
2886         - make a secondary pass through the flow threads that changed after scrollbars have been added and
2887         recompute the overflow for their regions; mark the flow threads in the final phase (flow threads can't
2888         be invalidated in the final phase)
2889         - after the overflow was propagated update all the flow threads in the normal layout phase
2890
2891         There are some issues with the patch:
2892         - the simplified layout doesn't compute correct overflow values for inline blocks
2893         - the layout overflow from the flow thread doesn't take the region size into account
2894
2895         The first issue is not related to regions and will be fixed in a future patch. The second issue
2896         will be fixed when box overflow will be region bound.
2897
2898         Tests: fast/regions/overflow-scrollable-1.html
2899                fast/regions/overflow-scrollable-2.html
2900                fast/regions/overflow-scrollable-3.html
2901                fast/regions/overflow-scrollable-fit-complex.html
2902                fast/regions/overflow-scrollable-fit.html
2903                fast/regions/overflow-scrollable-nested.html
2904
2905         * rendering/FlowThreadController.cpp: Flow threads layout driver functions.
2906         (WebCore::FlowThreadController::updateFlowThreadsNeedingLayout):
2907         (WebCore::FlowThreadController::updateFlowThreadsIntoConstrainedPhase):
2908         (WebCore::FlowThreadController::updateFlowThreadsIntoOverflowPhase):
2909         (WebCore::FlowThreadController::updateFlowThreadsIntoMeasureContentPhase):
2910         (WebCore::FlowThreadController::updateFlowThreadsIntoFinalPhase):
2911         * rendering/FlowThreadController.h:
2912         * rendering/RenderBlock.cpp:
2913         (WebCore::RenderBlock::simplifiedNormalFlowLayout):
2914         * rendering/RenderFlowThread.cpp:
2915         (WebCore::RenderFlowThread::RenderFlowThread):
2916         (WebCore::RenderFlowThread::invalidateRegions):
2917         (WebCore::RenderFlowThread::validateRegions):
2918         (WebCore::RenderFlowThread::layout):
2919         (WebCore::RenderFlowThread::firstRegion): This getter should work even though the region chain is invalid.
2920         (WebCore::RenderFlowThread::lastRegion): This getter should work even though the region chain is invalid.
2921         (WebCore::RenderFlowThread::initializeRegionsComputedAutoHeight):
2922         (WebCore::RenderFlowThread::markRegionsForOverflowLayoutIfNeeded): If the flow thread has no overflow do nothing.
2923         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
2924         (WebCore::RenderFlowThread::addForcedRegionBreak):
2925         * rendering/RenderFlowThread.h:
2926         * rendering/RenderMultiColumnSet.cpp:
2927         (WebCore::RenderMultiColumnSet::flowThreadPortionOverflowRect):
2928         * rendering/RenderRegion.cpp:
2929         (WebCore::RenderRegion::pageLogicalHeight):
2930         (WebCore::RenderRegion::maxPageLogicalHeight):
2931         (WebCore::RenderRegion::logicalHeightOfAllFlowThreadContent):
2932         (WebCore::RenderRegion::flowThreadPortionOverflowRect):
2933         (WebCore::RenderRegion::overflowRectForFlowThreadPortion): Used to get the flow thread visual or layout overflow.
2934         (WebCore::RenderRegion::layoutBlock):
2935         (WebCore::RenderRegion::computeOverflowFromFlowThread):
2936         (WebCore::RenderRegion::updateLogicalHeight):
2937         * rendering/RenderRegion.h:
2938         * rendering/RenderView.cpp:
2939         (WebCore::RenderView::layoutContentToComputeOverflowInRegions):
2940         (WebCore::RenderView::layout):
2941         * rendering/RenderView.h:
2942
2943 2013-08-07  Simon Fraser  <simon.fraser@apple.com>
2944
2945         Avoid spurious "all repaint" layouts when scrolling WebViews on Retina displays
2946         https://bugs.webkit.org/show_bug.cgi?id=119564
2947
2948         Reviewed by Beth Dakin.
2949
2950         When scrolling WebViews on Macs with Retina displays, AppKit uses
2951         device pixels for the scroll offset, so [scrollView() documentVisibleRect]
2952         can return a CGRect with non-integral origin. This rect is used by layout,
2953         via layoutSize(), to decide whether the view size changed, which prompts
2954         a full repaint. However, FrameView gets a value which has been rounded
2955         by enclosingIntRect(), which increases the height or width by 1px if the 
2956         y or x offset is on a half-pixel, causing spurious full repaints.
2957         
2958         Fix by plumbing through platformVisibleContentSize(), which just
2959         gets the size of the -documentVisibleRect.
2960         
2961         * page/FrameView.cpp:
2962         (WebCore::FrameView::layout): Don't get layoutHeight and layoutWidth
2963         separately, since that is two calls down into platformVisibleContentSize.
2964         * platform/ScrollView.cpp:
2965         (WebCore::ScrollView::unscaledVisibleContentSize):
2966         (WebCore::ScrollView::platformVisibleContentSize):
2967         * platform/ScrollView.h:
2968         * platform/mac/ScrollViewMac.mm:
2969         (WebCore::ScrollView::platformVisibleContentSize):
2970
2971 2013-08-07  Simon Fraser  <simon.fraser@apple.com>
2972
2973         Be more aggressive about sending fake mouse events less frequently
2974         https://bugs.webkit.org/show_bug.cgi?id=119563
2975         <rdar://problem/14669029>
2976
2977         Reviewed by Tim Horton.
2978
2979         r109151 added code that throttles back the fake mouse events that we
2980         send during scrolling, but in such a way that a page could take up to
2981         100ms to handle a single mousemove, and we'd still send fake mousemove
2982         events every 100ms. This could cause serious scrolling stutter.
2983         
2984         Fix by changing when we drop back to sending events every 250ms, rather than every
2985         100ms: if the slowest mousemove takes 10ms or more (less than one frame), drop back
2986         to a 250ms fake move interval.
2987
2988         * page/EventHandler.cpp:
2989         (WebCore::EventHandler::dispatchFakeMouseMoveEventSoon):
2990
2991 2013-08-07  Adenilson Cavalcanti  <cavalcantii@gmail.com>
2992
2993         [rendering] Implement PaintInfo interfaces
2994         https://bugs.webkit.org/show_bug.cgi?id=119388
2995
2996         Reviewed by Benjamin Poulain.
2997
2998         In discussion in IRC, it was decided to remove this comment since implementing such change
2999         would have a vast impact on rendering classes.
3000
3001         * rendering/PaintInfo.h:
3002
3003 2013-08-07  Dean Jackson  <dino@apple.com>
3004
3005         Don't remove contents layer from its parent unless necessary
3006         https://bugs.webkit.org/show_bug.cgi?id=119560
3007
3008         Reviewed by Simon Fraser.
3009
3010         RenderLayerBacking::updateInternalHierarchy() is called in some
3011         instances where there doesn't need to be a complete reparenting of the
3012         the m_graphicsLayer. For example, on OS X when the user changes the
3013         scrollbar styles to/from always visible. We don't need to always
3014         remove the graphics layer from its parent - any reparenting does that
3015         automatically.
3016
3017         Unfortunately we can't trigger this situation in an automated test.
3018
3019         * rendering/RenderLayerBacking.cpp:
3020         (WebCore::RenderLayerBacking::updateInternalHierarchy): Don't call removeFromParent().
3021
3022 2013-08-07  Tim Horton  <timothy_horton@apple.com>
3023
3024         Fall out of simple image layer optimization if the image has EXIF rotation
3025         https://bugs.webkit.org/show_bug.cgi?id=119535
3026         <rdar://problem/14071174>
3027
3028         Reviewed by Simon Fraser.
3029
3030         Test: fast/images/exif-orientation-composited.html
3031
3032         * platform/graphics/BitmapImage.cpp:
3033         (WebCore::BitmapImage::frameOrientationAtIndex):
3034         Ensure that the frame is cached if we're requesting the orientation,
3035         so we can acquire orientation information at any given time.
3036
3037         * platform/mac/DragImageMac.mm:
3038         (WebCore::createDragImageFromImage):
3039         * platform/graphics/BitmapImage.h:
3040         Rename currentFrameOrientation to frameOrientationForCurrentFrame to match
3041         the similarly-behaving nativeImageForCurrentFrame.
3042
3043         * platform/graphics/Image.h:
3044         (WebCore::Image::orientationForCurrentFrame): Added. Virtual, overriden by BitmapImage.
3045
3046         * rendering/RenderLayerBacking.cpp:
3047         (WebCore::RenderLayerBacking::isDirectlyCompositedImage):
3048         If the given image has a non-default image orientation, don't use direct compositing.
3049
3050 2013-08-07  Antti Koivisto  <antti@apple.com>
3051
3052         fast/frames/seamless/seamless-custom-font-pruning-crash.html asserts
3053         https://bugs.webkit.org/show_bug.cgi?id=119557
3054
3055         Rubber-stamped by Eric Carlson.
3056         
3057         Pass Style::Detach style change to seamless document as Style::Force. Style::resolveTree does not expect to be called with Detach.
3058
3059         * html/HTMLIFrameElement.cpp:
3060         (WebCore::HTMLIFrameElement::didRecalcStyle):
3061
3062 2013-08-07  Andre Moreira Magalhaes   <andre.magalhaes@collabora.co.uk>
3063
3064         Disable HTTP request "Accept-Encoding:" header field on gstreamer source element to avoid receiving the wrong size when retrieving data
3065         https://bugs.webkit.org/show_bug.cgi?id=115354
3066
3067         Reviewed by Philippe Normand.
3068
3069         The default value for the HTTP "Accept-Encoding:" header field in the request allows
3070         compressed data to be received on requests.
3071         While this works fine for most cases, it can break the webkit source that needs to rely on the
3072         the proper data size when receiving the response (even though the received data is already
3073         uncompressed the size reported in ResourceResponse::expectedContentLength() is the same
3074         represented by the HTTP header field "Content-Length" which is the size of the compressed data).
3075
3076         This patch disables the HTTP "Accept-Encoding:" header field when using the request
3077         as we don't want the received response to be encoded in any way, as we need to rely on the proper
3078         size of the returned data on ResourceHandle::didReceiveResponse().
3079
3080         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3081         (webKitWebSrcStart):
3082         * platform/network/soup/ResourceRequest.h:
3083         (ResourceRequestBase):
3084         (WebCore::ResourceRequest::acceptEncoding):
3085         (WebCore::ResourceRequest::setAcceptEncoding):
3086         (WebCore::ResourceRequest::ResourceRequestBase):
3087         * platform/network/soup/ResourceRequestSoup.cpp:
3088         (WebCore::ResourceRequest::updateSoupMessage):
3089         (WebCore::ResourceRequest::toSoupMessage):
3090
3091 2013-08-07  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3092
3093         [Qt] REGRESSION(r) Two pixel result fail after r153522
3094         https://bugs.webkit.org/show_bug.cgi?id=119392
3095
3096         Reviewed by Jocelyn Turcotte.
3097
3098         Consider scaling transform on the painter to determine final destination size.
3099
3100         Covered by existing tests.
3101
3102         * platform/graphics/qt/ImageQt.cpp:
3103         (WebCore::prescaleImageIfRequired):
3104         (WebCore::BitmapImage::draw):
3105
3106 2013-08-07  Antti Koivisto  <antti@apple.com>
3107
3108         2.5% regression on page cycler moz
3109         https://bugs.webkit.org/show_bug.cgi?id=102822
3110
3111         Reviewed by Andreas Kling.
3112
3113         DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache() triggers a style recalc for quirks mode
3114         documents in the beginning of document parsing via Document::setCompatibilityMode. This often coalesces 
3115         with style recalc triggered by stylesheet loading. However on very simple documents it can generate genuinely
3116         unnecessary work.
3117
3118         * dom/DocumentStyleSheetCollection.cpp:
3119         (WebCore::DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache):
3120         
3121             Check that we actually have cached injected stylesheets before triggering style recalc.
3122             
3123         * page/PageGroup.cpp:
3124         (WebCore::PageGroup::addUserStyleSheetToWorld):
3125         (WebCore::PageGroup::removeUserStyleSheetFromWorld):
3126         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
3127         (WebCore::PageGroup::removeAllUserContent):
3128         
3129             Fix a misspelling.
3130
3131         (WebCore::PageGroup::invalidateInjectedStyleSheetCacheInAllFrames):
3132         
3133             Always invalidate style when user sheets change since we don't do that in
3134             DocumentStyleSheetCollection::invalidateInjectedStyleSheetCache anymore.
3135
3136         * page/PageGroup.h:
3137
3138 2013-08-07  Andre Moreira Magalhaes   <andre.magalhaes@collabora.co.uk>
3139
3140         Do no check seek offset against internal size on gstreamer source element
3141         https://bugs.webkit.org/show_bug.cgi?id=116533
3142
3143         Reviewed by Philippe Normand.
3144
3145         The internal size on gstreamer source element may be wrong in case the received size in
3146         didReceiveResponse is not accurate. Lets just try to seek and let it fail if necessary.
3147
3148         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3149         (webKitWebSrcSeekDataCb):
3150
3151 2013-08-07  Antti Koivisto  <antti@apple.com>
3152
3153         Create WebCore/style and move StyleResolveTree there
3154         https://bugs.webkit.org/show_bug.cgi?id=119543
3155
3156         Reviewed by Andreas Kling.
3157
3158         WebCore/css is bloated. We should move the internal style representation and the style resolver
3159         related code to a directory of their own. CSS language related code including parser and 
3160         CSSOM stays under css.
3161
3162         Things named StyleFoo should generally move under WebCore/style. They should also be moved to
3163         the Style namespace at the same time.
3164
3165         * CMakeLists.txt:
3166         * GNUmakefile.am:
3167         * GNUmakefile.list.am:
3168         * WebCore.pri:
3169         * Target.pri:
3170         * WebCore.vcxproj/WebCore.vcxproj:
3171         * WebCore.vcxproj/WebCoreCommon.props:
3172         * WebCore.vcxproj/copyForwardingHeaders.cmd:
3173         * WebCore.xcodeproj/project.pbxproj:
3174         * css/StyleResolveTree.cpp: Removed.
3175         * css/StyleResolveTree.h: Removed.
3176         * style: Added.
3177         * style/StyleResolveTree.cpp: Copied from Source/WebCore/css/StyleResolveTree.cpp.
3178         * style/StyleResolveTree.h: Copied from Source/WebCore/css/StyleResolveTree.h.
3179
3180 2013-08-07  Antti Koivisto  <antti@apple.com>
3181
3182         Move style recalculation out from Element
3183         https://bugs.webkit.org/show_bug.cgi?id=119497
3184
3185         Reviewed by Andreas Kling.
3186
3187         Element currently does too much. Element::recalcStyle() and the related functions can be turned into
3188         standalone functions that operate on DOM tree. This will also give more freedom for future refactoring,
3189         for example making style recalculation non-recursive.
3190
3191         * WebCore.xcodeproj/project.pbxproj:
3192         * css/StyleResolveTree.cpp: Added.
3193         (WebCore::Style::determineChange):
3194                 
3195             - moved and renamed from Node::diff
3196             - factored to use early return style
3197             - simplifield the null input logic
3198
3199         (WebCore::Style::pseudoStyleCacheIsInvalid):
3200         
3201             - moved from Element::pseudoStyleCacheIsInvalid
3202             - narrowed to take RenderObject rather than operate on Element
3203
3204         (WebCore::Style::resolveLocal):
3205         
3206             - split from Element::recalcStyle
3207             - factored to use early return style
3208
3209         (WebCore::Style::resolveTree):
3210         
3211             - moved and renamed from Element::recalcStyle
3212
3213         * css/StyleResolveTree.h: Added.
3214         
3215             - introcuduce Style namespace for style related classes and functions
3216             - move and rename Node::StyleChange -> Style::Change
3217
3218         * css/StyleResolver.h:
3219         (WebCore::StyleResolverParentPusher::StyleResolverParentPusher):
3220         (WebCore::StyleResolverParentPusher::push):
3221         (WebCore::StyleResolverParentPusher::~StyleResolverParentPusher):
3222         
3223             Moved this stack helper to StyleResolver.h for now since it is needed by both
3224             StyleRecalculation and Element.
3225
3226         * dom/Document.cpp:
3227         (WebCore::Document::recalcStyle):
3228         (WebCore::Document::updateStyleIfNeeded):
3229         (WebCore::Document::updateLayoutIgnorePendingStylesheets):
3230         (WebCore::Document::attach):
3231         (WebCore::Document::styleResolverChanged):
3232         (WebCore::Document::webkitWillEnterFullScreenForElement):
3233         * dom/Document.h:
3234         * dom/Element.cpp:
3235         (WebCore::shouldIgnoreAttributeCase):
3236         (WebCore::Element::updatePseudoElement):
3237         (WebCore::Element::resetComputedStyle):
3238         (WebCore::Element::willRecalcStyle):
3239         (WebCore::Element::didRecalcStyle):
3240         * dom/Element.h:
3241         
3242             - remove Element::recalcStyle
3243             - make a few private functions needed by StyleRecalculation public
3244
3245         * dom/ElementShadow.cpp:
3246         (WebCore::ElementShadow::recalcStyle):
3247         * dom/ElementShadow.h:
3248         * dom/Node.cpp:
3249         * dom/Node.h:
3250
3251             - remove Node::StyleChange
3252             - remove Node::diff
3253
3254         * dom/PseudoElement.cpp:
3255         (WebCore::PseudoElement::didRecalcStyle):
3256         * dom/PseudoElement.h:
3257         * dom/ShadowRoot.cpp:
3258         (WebCore::ShadowRoot::recalcStyle):
3259         (WebCore::ShadowRoot::setResetStyleInheritance):
3260         * dom/ShadowRoot.h:
3261         * dom/Text.cpp:
3262         (WebCore::Text::recalcTextStyle):
3263         * dom/Text.h:
3264         * html/HTMLFormControlElement.cpp:
3265         (WebCore::HTMLFormControlElement::didRecalcStyle):
3266         * html/HTMLFormControlElement.h:
3267         * html/HTMLFrameSetElement.cpp:
3268         (WebCore::HTMLFrameSetElement::willRecalcStyle):
3269         * html/HTMLFrameSetElement.h:
3270         * html/HTMLIFrameElement.cpp:
3271         (WebCore::HTMLIFrameElement::didRecalcStyle):
3272         * html/HTMLIFrameElement.h:
3273         * html/HTMLMediaElement.cpp:
3274         (WebCore::HTMLMediaElement::didRecalcStyle):
3275         * html/HTMLMediaElement.h:
3276         * html/HTMLOptionElement.cpp:
3277         (WebCore::HTMLOptionElement::didRecalcStyle):
3278         * html/HTMLOptionElement.h:
3279         * html/HTMLPlugInImageElement.cpp:
3280         (WebCore::HTMLPlugInImageElement::willRecalcStyle):
3281         (WebCore::HTMLPlugInImageElement::documentWillSuspendForPageCache):
3282         (WebCore::HTMLPlugInImageElement::documentDidResumeFromPageCache):
3283         * html/HTMLPlugInImageElement.h:
3284         * inspector/InspectorOverlay.cpp:
3285         (WebCore::InspectorOverlay::update):
3286         * loader/DocumentWriter.cpp:
3287         (WebCore::DocumentWriter::reportDataReceived):
3288         * page/Frame.cpp:
3289         (WebCore::Frame::setPageAndTextZoomFactors):
3290         * page/Page.cpp:
3291         (WebCore::Page::setPageScaleFactor):
3292         * rendering/RenderBlock.cpp:
3293         (WebCore::RenderBlock::updateFirstLetterStyle):
3294         * svg/SVGElement.cpp:
3295         (WebCore::SVGElement::willRecalcStyle):
3296         * svg/SVGElement.h:
3297         * svg/SVGUseElement.cpp:
3298         (WebCore::SVGUseElement::willRecalcStyle):
3299         * svg/SVGUseElement.h:
3300
3301 2013-08-07  Mihnea Ovidenie  <mihnea@adobe.com>
3302
3303         [CSSRegions] Wrong auto-height region computation for nested named flows
3304         https://bugs.webkit.org/show_bug.cgi?id=119517
3305
3306         Reviewed by David Hyatt.
3307
3308         Test: fast/regions/abspos-autoheight-nested-region.html
3309
3310         In the case of an (inner) auto-height region that is absolutely positioned in a named flow that is displayed in an (outer) auto-height region,
3311         when we are doing the layout for the named flow we need to add a "forced region break" also for the case of simplified layout, otherwise
3312         the outer auto-height region will not get the chance to compute its auto-height, ending up with a huge value that was used to initialize
3313         the auto-height computed value before the start of the layout algorithm.
3314
3315         * rendering/RenderBlock.cpp:
3316         (WebCore::RenderBlock::simplifiedLayout):
3317
3318 2013-08-06  Stephanie Lewis  <slewis@apple.com>
3319
3320         Update Order Files for Safari
3321         <rdar://problem/14517392>
3322
3323         Unreviewed.
3324
3325         No change in functionality.
3326
3327         * WebCore.order:
3328
3329 2013-08-04  Sam Weinig  <sam@webkit.org>
3330
3331         Remove support for HTML5 Microdata
3332         https://bugs.webkit.org/show_bug.cgi?id=119480
3333
3334         Reviewed by Anders Carlsson.
3335
3336         * CMakeLists.txt:
3337         * Configurations/FeatureDefines.xcconfig:
3338         * DerivedSources.cpp:
3339         * DerivedSources.make:
3340         * DerivedSources.pri:
3341         * GNUmakefile.list.am:
3342         * Target.pri:
3343         * UseJSC.cmake:
3344         * WebCore.vcxproj/WebCore.vcxproj:
3345         * WebCore.vcxproj/WebCore.vcxproj.filters:
3346         * WebCore.xcodeproj/project.pbxproj:
3347         * bindings/gobject/GNUmakefile.am:
3348         * bindings/js/JSBindingsAllInOne.cpp:
3349         * bindings/js/JSHTMLCollectionCustom.cpp:
3350         (WebCore::JSHTMLCollection::nameGetter):
3351         * bindings/js/JSHTMLElementCustom.cpp:
3352         * bindings/js/JSMicroDataItemValueCustom.cpp: Removed.
3353         * bindings/scripts/CodeGeneratorJS.pm:
3354         (GenerateImplementation):
3355         * dom/Document.cpp:
3356         * dom/Document.h:
3357         * dom/Document.idl:
3358         * dom/Element.cpp:
3359         (WebCore::Element::ensureCachedHTMLCollection):
3360         * dom/LiveNodeList.cpp:
3361         (WebCore::LiveNodeListBase::rootNode):
3362         (WebCore::LiveNodeListBase::invalidateCache):
3363         (WebCore::LiveNodeList::namedItem):
3364         * dom/LiveNodeList.h:
3365         (WebCore::LiveNodeListBase::shouldInvalidateTypeOnAttributeChange):
3366         * dom/MicroDataItemList.cpp: Removed.
3367         * dom/MicroDataItemList.h: Removed.
3368         * dom/Node.cpp:
3369         * dom/Node.h:
3370         * dom/NodeRareData.cpp:
3371         * dom/NodeRareData.h:
3372         * dom/PropertyNodeList.cpp: Removed.
3373         * dom/PropertyNodeList.h: Removed.
3374         * dom/PropertyNodeList.idl: Removed.
3375         * html/CollectionType.h:
3376         * html/HTMLAnchorElement.cpp:
3377         * html/HTMLAnchorElement.h:
3378         * html/HTMLAreaElement.cpp:
3379         * html/HTMLAreaElement.h:
3380         * html/HTMLCollection.cpp:
3381         (WebCore::shouldOnlyIncludeDirectChildren):
3382         (WebCore::rootTypeFromCollectionType):
3383         (WebCore::invalidationTypeExcludingIdAndNameAttributes):
3384         (WebCore::isMatchingElement):
3385         (WebCore::LiveNodeListBase::item):
3386         * html/HTMLElement.cpp:
3387         (WebCore::HTMLElement::parseAttribute):
3388         (WebCore::HTMLElement::isURLAttribute):
3389         * html/HTMLElement.h:
3390         * html/HTMLElement.idl:
3391         * html/HTMLEmbedElement.cpp:
3392         * html/HTMLEmbedElement.h:
3393         * html/HTMLIFrameElement.cpp:
3394         * html/HTMLIFrameElement.h:
3395         * html/HTMLImageElement.cpp:
3396         * html/HTMLImageElement.h:
3397         * html/HTMLLinkElement.cpp:
3398         * html/HTMLLinkElement.h:
3399         * html/HTMLMediaElement.cpp:
3400         * html/HTMLMediaElement.h:
3401         * html/HTMLMetaElement.cpp:
3402         * html/HTMLMetaElement.h:
3403         * html/HTMLObjectElement.cpp:
3404         * html/HTMLObjectElement.h:
3405         * html/HTMLPropertiesCollection.cpp: Removed.
3406         * html/HTMLPropertiesCollection.h: Removed.
3407         * html/HTMLPropertiesCollection.idl: Removed.
3408         * html/HTMLSourceElement.cpp:
3409         * html/HTMLSourceElement.h:
3410         * html/HTMLTrackElement.cpp:
3411         * html/HTMLTrackElement.h:
3412         * html/MicroDataAttributeTokenList.cpp: Removed.
3413         * html/MicroDataAttributeTokenList.h: Removed.
3414         * html/MicroDataItemValue.cpp: Removed.
3415         * html/MicroDataItemValue.h: Removed.
3416         * html/MicroDataItemValue.idl: Removed.
3417
3418 2013-08-06  Tim Horton  <timothy_horton@apple.com>
3419
3420         Remove PlatformCALayer::contentsTransform and ::setContentsTransform
3421         https://bugs.webkit.org/show_bug.cgi?id=119529
3422
3423         Reviewed by Sam Weinig.
3424
3425         No new tests, removing dead code.
3426
3427         These methods are not used and are currently unimplemented.
3428
3429         * platform/graphics/ca/PlatformCALayer.h:
3430         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
3431         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
3432
3433 2013-08-06  Alex Christensen  <achristensen@apple.com>
3434
3435         Moved GraphicsContext3DPrivate out of cairo directory to be used by the AppleWin port.
3436         https://bugs.webkit.org/show_bug.cgi?id=119525
3437
3438         Reviewed by Dean Jackson.
3439
3440         * GNUmakefile.list.am:
3441         * PlatformGTK.cmake:
3442         * WebCore.vcxproj/WebCore.vcxproj:
3443         * WebCore.vcxproj/WebCore.vcxproj.filters:
3444         Changed location of GraphicsContext3DPrivate.cpp and GraphicsContext3DPrivate.h.
3445         * platform/graphics/GraphicsContext3DPrivate.cpp: Copied from WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.cpp.
3446         * platform/graphics/GraphicsContext3DPrivate.h: Copied from WebCore/platform/graphics/cairo/GraphicsContext3DPrivate.h.
3447         * platform/graphics/cairo/GraphicsContext3DPrivate.cpp: Removed.
3448         * platform/graphics/cairo/GraphicsContext3DPrivate.h: Removed.
3449
3450 2013-08-06  Brent Fulgham  <bfulgham@apple.com>
3451
3452         [Windows] Unreviewed build correction after r153754 and r153757.
3453
3454         * page/animation/CSSPropertyAnimation.cpp:
3455         (WebCore::blendFunc): Don't force std::remainder, since we are using our own
3456         custom implementation on Windows.
3457
3458 2013-08-06  Brent Fulgham  <bfulgham@apple.com>
3459
3460         Improper Calculation of In-band Cue Colors
3461         https://bugs.webkit.org/show_bug.cgi?id=119523
3462
3463         Reviewed by Eric Carlson.
3464
3465         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
3466         (WebCore::makeRGBA32FromARGBCFArray): Remove redundant multiplication by
3467         255.  The internal conversion logic already converts to bytes.