Source/WebCore: Remove ENABLE_CSS_COMPOSITING guards around -webkit-background-blend...
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-06-27  Horia Iosif Olaru  <olaru@adobe.com>
2
3         Remove ENABLE_CSS_COMPOSITING guards around -webkit-background-blend mode related code. The same flag guards -webkit-blend-mode code, but those guards are not touched by this change.
4
5         https://bugs.webkit.org/show_bug.cgi?id=117619
6
7         Reviewed by Dean Jackson.
8
9         Test: css3/compositing/effect-background-blend-mode-tiled.html
10
11         * WebCore.exp.in:
12         * bindings/generic/RuntimeEnabledFeatures.h:
13         * css/CSSComputedStyleDeclaration.cpp:
14         (WebCore::ComputedStyleExtractor::propertyValue):
15         * css/CSSParser.cpp:
16         (WebCore::CSSParser::parseValue):
17         (WebCore::CSSParser::parseFillProperty):
18         * css/CSSProperty.cpp:
19         (WebCore::CSSProperty::isInheritedProperty):
20         * css/CSSPropertyNames.in:
21         * css/DeprecatedStyleBuilder.cpp:
22         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
23
24 2013-06-26  Christophe Dumez  <ch.dumez@sisa.samsung.com>
25
26         Rename WorkerContext to WorkerGlobalScope
27         https://bugs.webkit.org/show_bug.cgi?id=118059
28
29         Reviewed by Kentaro Hara.
30
31         Rename WorkerContext / SharedWorkerContext / DedicatedWorkerContext to
32         WorkerGlobalScope / SharedWorkerGlobalScope / DedicatedWorkerGlobalScope
33         to match the latest specification:
34         http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#workerglobalscope
35
36         Those interfaces have [NoInterfaceObject] IDL extended attribute so the
37         name did not matter much so far. However, the specification was updated
38         and [NoInterfaceObject] was removed. We should therefore rename those
39         interfaces as a preparation for this change.
40
41         No new tests, no behavior change as these interfaces are not exposed to
42         JavaScript yet.
43
44         * CMakeLists.txt:
45         * DerivedSources.cpp:
46         * DerivedSources.make:
47         * DerivedSources.pri:
48         * GNUmakefile.am:
49         * GNUmakefile.list.am:
50         * Modules/filesystem/WorkerGlobalScopeFileSystem.cpp: Renamed from Source/WebCore/Modules/filesystem/WorkerContextFileSystem.cpp.
51         (WebCore::WorkerGlobalScopeFileSystem::webkitRequestFileSystem):
52         (WebCore::WorkerGlobalScopeFileSystem::webkitRequestFileSystemSync):
53         (WebCore::WorkerGlobalScopeFileSystem::webkitResolveLocalFileSystemURL):
54         (WebCore::WorkerGlobalScopeFileSystem::webkitResolveLocalFileSystemSyncURL):
55         * Modules/filesystem/WorkerGlobalScopeFileSystem.h: Renamed from Source/WebCore/Modules/filesystem/WorkerContextFileSystem.h.
56         * Modules/filesystem/WorkerGlobalScopeFileSystem.idl: Renamed from Source/WebCore/Modules/filesystem/WorkerContextFileSystem.idl.
57         * Modules/indexeddb/IDBFactory.cpp:
58         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp: Renamed from Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.cpp.
59         (WebCore::WorkerGlobalScopeIndexedDatabase::WorkerGlobalScopeIndexedDatabase):
60         (WebCore::WorkerGlobalScopeIndexedDatabase::~WorkerGlobalScopeIndexedDatabase):
61         (WebCore::WorkerGlobalScopeIndexedDatabase::supplementName):
62         (WebCore::WorkerGlobalScopeIndexedDatabase::from):
63         (WebCore::WorkerGlobalScopeIndexedDatabase::indexedDB):
64         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h: Renamed from Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.h.
65         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl: Renamed from Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.idl.
66         * Modules/notifications/Notification.cpp:
67         * Modules/notifications/NotificationCenter.cpp:
68         * Modules/notifications/WorkerGlobalScopeNotifications.cpp: Renamed from Source/WebCore/Modules/notifications/WorkerContextNotifications.cpp.
69         (WebCore::WorkerGlobalScopeNotifications::WorkerGlobalScopeNotifications):
70         (WebCore::WorkerGlobalScopeNotifications::~WorkerGlobalScopeNotifications):
71         (WebCore::WorkerGlobalScopeNotifications::supplementName):
72         (WebCore::WorkerGlobalScopeNotifications::from):
73         (WebCore::WorkerGlobalScopeNotifications::webkitNotifications):
74         * Modules/notifications/WorkerGlobalScopeNotifications.h: Renamed from Source/WebCore/Modules/notifications/WorkerContextNotifications.h.
75         * Modules/notifications/WorkerGlobalScopeNotifications.idl: Renamed from Source/WebCore/Modules/notifications/WorkerContextNotifications.idl.
76         * Modules/webdatabase/DatabaseContext.cpp:
77         (WebCore::DatabaseContext::allowDatabaseAccess):
78         (WebCore::DatabaseContext::databaseExceededQuota):
79         * Modules/webdatabase/WorkerGlobalScopeWebDatabase.cpp: Renamed from Source/WebCore/Modules/webdatabase/WorkerContextWebDatabase.cpp.
80         (WebCore::WorkerGlobalScopeWebDatabase::openDatabase):
81         (WebCore::WorkerGlobalScopeWebDatabase::openDatabaseSync):
82         * Modules/webdatabase/WorkerGlobalScopeWebDatabase.h: Renamed from Source/WebCore/Modules/webdatabase/WorkerContextWebDatabase.h.
83         (WebCore::WorkerGlobalScopeWebDatabase::WorkerGlobalScopeWebDatabase):
84         (WebCore::WorkerGlobalScopeWebDatabase::~WorkerGlobalScopeWebDatabase):
85         * Modules/webdatabase/WorkerGlobalScopeWebDatabase.idl: Renamed from Source/WebCore/Modules/webdatabase/WorkerContextWebDatabase.idl.
86         * Modules/websockets/ThreadableWebSocketChannel.cpp:
87         (WebCore::ThreadableWebSocketChannel::create):
88         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
89         (WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasksCallback):
90         * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
91         (WebCore::WorkerThreadableWebSocketChannel::WorkerThreadableWebSocketChannel):
92         (WebCore::workerGlobalScopeDidSend):
93         (WebCore::WorkerThreadableWebSocketChannel::Peer::send):
94         (WebCore::workerGlobalScopeDidGetBufferedAmount):
95         (WebCore::WorkerThreadableWebSocketChannel::Peer::bufferedAmount):
96         (WebCore::workerGlobalScopeDidConnect):
97         (WebCore::WorkerThreadableWebSocketChannel::Peer::didConnect):
98         (WebCore::workerGlobalScopeDidReceiveMessage):
99         (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveMessage):
100         (WebCore::workerGlobalScopeDidReceiveBinaryData):
101         (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveBinaryData):
102         (WebCore::workerGlobalScopeDidUpdateBufferedAmount):
103         (WebCore::WorkerThreadableWebSocketChannel::Peer::didUpdateBufferedAmount):
104         (WebCore::workerGlobalScopeDidStartClosingHandshake):
105         (WebCore::WorkerThreadableWebSocketChannel::Peer::didStartClosingHandshake):
106         (WebCore::workerGlobalScopeDidClose):
107         (WebCore::WorkerThreadableWebSocketChannel::Peer::didClose):
108         (WebCore::workerGlobalScopeDidReceiveMessageError):
109         (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveMessageError):
110         (WebCore::WorkerThreadableWebSocketChannel::Bridge::Bridge):
111         (WebCore::WorkerThreadableWebSocketChannel::WorkerGlobalScopeDidInitializeTask::create):
112         (WebCore::WorkerThreadableWebSocketChannel::WorkerGlobalScopeDidInitializeTask::~WorkerGlobalScopeDidInitializeTask):
113         (WebCore::WorkerThreadableWebSocketChannel::WorkerGlobalScopeDidInitializeTask::WorkerGlobalScopeDidInitializeTask):
114         (WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
115         (WebCore::WorkerThreadableWebSocketChannel::Bridge::disconnect):
116         (WebCore::WorkerThreadableWebSocketChannel::Bridge::waitForMethodCompletion):
117         * Modules/websockets/WorkerThreadableWebSocketChannel.h:
118         (WebCore::WorkerThreadableWebSocketChannel::create):
119         (WebCore::WorkerThreadableWebSocketChannel::Bridge::create):
120         * Target.pri:
121         * UseJSC.cmake:
122         * WebCore.order:
123         * WebCore.vcxproj/WebCore.vcxproj:
124         * WebCore.vcxproj/WebCore.vcxproj.filters:
125         * WebCore.xcodeproj/project.pbxproj:
126         * bindings/cpp/WebDOMEventTarget.cpp:
127         (toWebKit):
128         * bindings/cpp/WebDOMEventTarget.h:
129         * bindings/generic/ActiveDOMCallback.cpp:
130         * bindings/js/DOMRequestState.h:
131         (WebCore::DOMRequestState::DOMRequestState):
132         * bindings/js/JSBindingsAllInOne.cpp:
133         * bindings/js/JSDOMBinding.h:
134         * bindings/js/JSDOMGlobalObject.cpp:
135         (WebCore::JSDOMGlobalObject::scriptExecutionContext):
136         (WebCore::toJSDOMGlobalObject):
137         * bindings/js/JSDedicatedWorkerGlobalScopeCustom.cpp: Renamed from Source/WebCore/bindings/js/JSDedicatedWorkerContextCustom.cpp.
138         (WebCore::JSDedicatedWorkerGlobalScope::postMessage):
139         * bindings/js/JSEventListener.cpp:
140         (WebCore::JSEventListener::handleEvent):
141         * bindings/js/JSEventTargetCustom.cpp:
142         (WebCore::toJS):
143         * bindings/js/JSWorkerGlobalScopeBase.cpp: Renamed from Source/WebCore/bindings/js/JSWorkerContextBase.cpp.
144         (WebCore::JSWorkerGlobalScopeBase::JSWorkerGlobalScopeBase):
145         (WebCore::JSWorkerGlobalScopeBase::finishCreation):
146         (WebCore::JSWorkerGlobalScopeBase::destroy):
147         (WebCore::JSWorkerGlobalScopeBase::scriptExecutionContext):
148         (WebCore::toJS):
149         (WebCore::toJSDedicatedWorkerGlobalScope):
150         (WebCore::toJSSharedWorkerGlobalScope):
151         (WebCore::toJSWorkerGlobalScope):
152         * bindings/js/JSWorkerGlobalScopeBase.h: Renamed from Source/WebCore/bindings/js/JSWorkerContextBase.h.
153         (WebCore::JSWorkerGlobalScopeBase::impl):
154         (WebCore::JSWorkerGlobalScopeBase::createStructure):
155         * bindings/js/JSWorkerGlobalScopeCustom.cpp: Renamed from Source/WebCore/bindings/js/JSWorkerContextCustom.cpp.
156         (WebCore::JSWorkerGlobalScope::visitChildren):
157         (WebCore::JSWorkerGlobalScope::getOwnPropertySlotDelegate):
158         (WebCore::JSWorkerGlobalScope::getOwnPropertyDescriptorDelegate):
159         (WebCore::JSWorkerGlobalScope::importScripts):
160         (WebCore::JSWorkerGlobalScope::setTimeout):
161         (WebCore::JSWorkerGlobalScope::setInterval):
162         * bindings/js/ScheduledAction.cpp:
163         (WebCore::ScheduledAction::execute):
164         * bindings/js/ScheduledAction.h:
165         * bindings/js/ScriptProfiler.cpp:
166         (WebCore::ScriptProfiler::startForWorkerGlobalScope):
167         (WebCore::ScriptProfiler::stopForWorkerGlobalScope):
168         * bindings/js/ScriptProfiler.h:
169         * bindings/js/ScriptState.cpp:
170         (WebCore::scriptStateFromWorkerGlobalScope):
171         * bindings/js/ScriptState.h:
172         * bindings/js/WorkerScriptController.cpp:
173         (WebCore::WorkerScriptController::WorkerScriptController):
174         (WebCore::WorkerScriptController::~WorkerScriptController):
175         (WebCore::WorkerScriptController::initScript):
176         (WebCore::WorkerScriptController::evaluate):
177         (WebCore::WorkerScriptController::setException):
178         (WebCore::WorkerScriptController::forbidExecution):
179         (WebCore::WorkerScriptController::isExecutionForbidden):
180         (WebCore::WorkerScriptController::disableEval):
181         (WebCore::WorkerScriptController::attachDebugger):
182         (WebCore::WorkerScriptController::detachDebugger):
183         * bindings/js/WorkerScriptController.h:
184         (WebCore::WorkerScriptController::workerGlobalScopeWrapper):
185         (WebCore::WorkerScriptController::initScriptIfNeeded):
186         * bindings/js/WorkerScriptDebugServer.cpp:
187         (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
188         (WebCore::WorkerScriptDebugServer::addListener):
189         (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
190         (WebCore::WorkerScriptDebugServer::removeListener):
191         (WebCore::WorkerScriptDebugServer::runEventLoopWhilePaused):
192         * bindings/js/WorkerScriptDebugServer.h:
193         * bindings/scripts/CodeGeneratorJS.pm:
194         (GenerateHeader):
195         (GenerateImplementation):
196         * bindings/scripts/IDLAttributes.txt:
197         * bindings/scripts/preprocess-idls.pl:
198         * dom/ActiveDOMObject.cpp:
199         * dom/EventTarget.h:
200         * dom/EventTargetFactory.in:
201         * dom/MessagePort.cpp:
202         (WebCore::MessagePort::dispatchMessages):
203         * dom/ScriptExecutionContext.cpp:
204         (WebCore::ScriptExecutionContext::createdMessagePort):
205         (WebCore::ScriptExecutionContext::destroyedMessagePort):
206         (WebCore::ScriptExecutionContext::vm):
207         * dom/ScriptExecutionContext.h:
208         (WebCore::ScriptExecutionContext::isWorkerGlobalScope):
209         * inspector/InjectedScriptManager.cpp:
210         (WebCore::InjectedScriptManager::createForWorker):
211         (WebCore::InjectedScriptManager::canAccessInspectedWorkerGlobalScope):
212         * inspector/InjectedScriptManager.h:
213         * inspector/InspectorConsoleInstrumentation.h:
214         (WebCore::InspectorInstrumentation::addMessageToConsole):
215         * inspector/InspectorInstrumentation.cpp:
216         (WebCore::InspectorInstrumentation::didStartWorkerGlobalScopeImpl):
217         (WebCore::InspectorInstrumentation::willEvaluateWorkerScript):
218         (WebCore::InspectorInstrumentation::workerGlobalScopeTerminatedImpl):
219         (WebCore::InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope):
220         (WebCore::InspectorInstrumentation::instrumentingAgentsForNonDocumentContext):
221         * inspector/InspectorInstrumentation.h:
222         (WebCore::InspectorInstrumentation::didStartWorkerGlobalScope):
223         (WebCore::InspectorInstrumentation::workerGlobalScopeTerminated):
224         * inspector/InspectorProfilerAgent.cpp:
225         (WebCore::WorkerProfilerAgent::WorkerProfilerAgent):
226         (WebCore::WorkerProfilerAgent::startProfiling):
227         (WebCore::WorkerProfilerAgent::stopProfiling):
228         (WebCore::InspectorProfilerAgent::create):
229         * inspector/InspectorProfilerAgent.h:
230         * inspector/InspectorRuntimeAgent.h:
231         * inspector/InspectorWorkerAgent.cpp:
232         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::WorkerFrontendChannel):
233         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::~WorkerFrontendChannel):
234         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::proxy):
235         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::connectToWorkerGlobalScope):
236         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::disconnectFromWorkerGlobalScope):
237         (WebCore::InspectorWorkerAgent::connectToWorker):
238         (WebCore::InspectorWorkerAgent::disconnectFromWorker):
239         (WebCore::InspectorWorkerAgent::didStartWorkerGlobalScope):
240         (WebCore::InspectorWorkerAgent::workerGlobalScopeTerminated):
241         (WebCore::InspectorWorkerAgent::destroyWorkerFrontendChannels):
242         (WebCore::InspectorWorkerAgent::createWorkerFrontendChannel):
243         * inspector/InspectorWorkerAgent.h:
244         * inspector/InstrumentingAgents.cpp:
245         (WebCore::instrumentationForWorkerGlobalScope):
246         * inspector/InstrumentingAgents.h:
247         * inspector/WorkerDebuggerAgent.cpp:
248         (WebCore::WorkerDebuggerAgent::create):
249         (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
250         (WebCore::WorkerDebuggerAgent::~WorkerDebuggerAgent):
251         (WebCore::WorkerDebuggerAgent::interruptAndDispatchInspectorCommands):
252         (WebCore::WorkerDebuggerAgent::injectedScriptForEval):
253         * inspector/WorkerDebuggerAgent.h:
254         * inspector/WorkerInspectorController.cpp:
255         (WebCore::WorkerInspectorController::WorkerInspectorController):
256         (WebCore::WorkerInspectorController::connectFrontend):
257         * inspector/WorkerInspectorController.h:
258         * inspector/WorkerRuntimeAgent.cpp:
259         (WebCore::WorkerRuntimeAgent::WorkerRuntimeAgent):
260         (WebCore::WorkerRuntimeAgent::injectedScriptForEval):
261         (WebCore::WorkerRuntimeAgent::pauseWorkerGlobalScope):
262         * inspector/WorkerRuntimeAgent.h:
263         (WebCore::WorkerRuntimeAgent::create):
264         * loader/ThreadableLoader.cpp:
265         (WebCore::ThreadableLoader::create):
266         (WebCore::ThreadableLoader::loadResourceSynchronously):
267         * loader/WorkerThreadableLoader.cpp:
268         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
269         (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
270         (WebCore::workerGlobalScopeDidSendData):
271         (WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
272         (WebCore::workerGlobalScopeDidReceiveResponse):
273         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
274         (WebCore::workerGlobalScopeDidReceiveData):
275         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
276         (WebCore::workerGlobalScopeDidFinishLoading):
277         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
278         (WebCore::workerGlobalScopeDidFail):
279         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
280         (WebCore::workerGlobalScopeDidFailAccessControlCheck):
281         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailAccessControlCheck):
282         (WebCore::workerGlobalScopeDidFailRedirectCheck):
283         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
284         * loader/WorkerThreadableLoader.h:
285         (WebCore::WorkerThreadableLoader::create):
286         * loader/cache/MemoryCache.cpp:
287         (WebCore::MemoryCache::removeRequestFromCache):
288         * platform/blackberry/LocalFileSystemBlackBerry.cpp:
289         (WebCore::openFileSystem):
290         (WebCore::LocalFileSystem::deleteFileSystem):
291         * platform/blackberry/WorkerAsyncFileSystemBlackBerry.cpp:
292         (WebCore::WorkerAsyncFileSystemBlackBerry::WorkerAsyncFileSystemBlackBerry):
293         (WebCore::WorkerAsyncFileSystemBlackBerry::openFileSystem):
294         (WebCore::WorkerAsyncFileSystemBlackBerry::deleteFileSystem):
295         * platform/blackberry/WorkerAsyncFileSystemBlackBerry.h:
296         (WebCore::WorkerAsyncFileSystemBlackBerry::create):
297         * platform/blackberry/WorkerAsyncFileWriterBlackBerry.h:
298         * platform/blackberry/WorkerPlatformAsyncFileSystemCallbacks.cpp:
299         (WebCore::WorkerPlatformAsyncFileSystemCallbacks::postTaskToWorkerThread):
300         * platform/blackberry/WorkerPlatformAsyncFileSystemCallbacks.h:
301         * platform/blackberry/WorkerPlatformFileWriterClient.cpp:
302         (WebCore::WorkerPlatformFileWriterClient::postTaskToWorkerThreadIfNeeded):
303         * platform/blackberry/WorkerPlatformFileWriterClient.h:
304         * workers/DedicatedWorkerGlobalScope.cpp: Renamed from Source/WebCore/workers/DedicatedWorkerContext.cpp.
305         (WebCore::DedicatedWorkerGlobalScope::create):
306         (WebCore::DedicatedWorkerGlobalScope::DedicatedWorkerGlobalScope):
307         (WebCore::DedicatedWorkerGlobalScope::~DedicatedWorkerGlobalScope):
308         (WebCore::DedicatedWorkerGlobalScope::interfaceName):
309         (WebCore::DedicatedWorkerGlobalScope::postMessage):
310         (WebCore::DedicatedWorkerGlobalScope::importScripts):
311         (WebCore::DedicatedWorkerGlobalScope::thread):
312         * workers/DedicatedWorkerGlobalScope.h: Renamed from Source/WebCore/workers/DedicatedWorkerContext.h.
313         * workers/DedicatedWorkerGlobalScope.idl: Renamed from Source/WebCore/workers/DedicatedWorkerContext.idl.
314         * workers/DedicatedWorkerThread.cpp:
315         (WebCore::DedicatedWorkerThread::createWorkerGlobalScope):
316         (WebCore::DedicatedWorkerThread::runEventLoop):
317         * workers/DedicatedWorkerThread.h:
318         * workers/DefaultSharedWorkerRepository.cpp:
319         (WebCore::SharedWorkerProxy::postTaskForModeToWorkerGlobalScope):
320         (WebCore::SharedWorkerProxy::workerGlobalScopeClosed):
321         (WebCore::SharedWorkerProxy::workerGlobalScopeDestroyed):
322         (WebCore::SharedWorkerConnectTask::performTask):
323         (WebCore::SharedWorkerScriptLoader::notifyFinished):
324         (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
325         * workers/SharedWorkerGlobalScope.cpp: Renamed from Source/WebCore/workers/SharedWorkerContext.cpp.
326         (WebCore::createConnectEvent):
327         (WebCore::SharedWorkerGlobalScope::create):
328         (WebCore::SharedWorkerGlobalScope::SharedWorkerGlobalScope):
329         (WebCore::SharedWorkerGlobalScope::~SharedWorkerGlobalScope):
330         (WebCore::SharedWorkerGlobalScope::interfaceName):
331         (WebCore::SharedWorkerGlobalScope::thread):
332         (WebCore::SharedWorkerGlobalScope::logExceptionToConsole):
333         * workers/SharedWorkerGlobalScope.h: Renamed from Source/WebCore/workers/SharedWorkerContext.h.
334         (WebCore::SharedWorkerGlobalScope::name):
335         * workers/SharedWorkerGlobalScope.idl: Renamed from Source/WebCore/workers/SharedWorkerContext.idl.
336         * workers/SharedWorkerThread.cpp:
337         (WebCore::SharedWorkerThread::createWorkerGlobalScope):
338         * workers/SharedWorkerThread.h:
339         * workers/Worker.cpp:
340         (WebCore::Worker::Worker):
341         (WebCore::Worker::postMessage):
342         (WebCore::Worker::terminate):
343         (WebCore::Worker::notifyFinished):
344         * workers/Worker.h:
345         * workers/WorkerGlobalScope.cpp: Renamed from Source/WebCore/workers/WorkerContext.cpp.
346         (WebCore::CloseWorkerGlobalScopeTask::create):
347         (WebCore::CloseWorkerGlobalScopeTask::performTask):
348         (WebCore::CloseWorkerGlobalScopeTask::isCleanupTask):
349         (WebCore::WorkerGlobalScope::WorkerGlobalScope):
350         (WebCore::WorkerGlobalScope::~WorkerGlobalScope):
351         (WebCore::WorkerGlobalScope::applyContentSecurityPolicyFromString):
352         (WebCore::WorkerGlobalScope::scriptExecutionContext):
353         (WebCore::WorkerGlobalScope::virtualURL):
354         (WebCore::WorkerGlobalScope::virtualCompleteURL):
355         (WebCore::WorkerGlobalScope::completeURL):
356         (WebCore::WorkerGlobalScope::userAgent):
357         (WebCore::WorkerGlobalScope::disableEval):
358         (WebCore::WorkerGlobalScope::location):
359         (WebCore::WorkerGlobalScope::close):
360         (WebCore::WorkerGlobalScope::navigator):
361         (WebCore::WorkerGlobalScope::hasPendingActivity):
362         (WebCore::WorkerGlobalScope::postTask):
363         (WebCore::WorkerGlobalScope::setTimeout):
364         (WebCore::WorkerGlobalScope::clearTimeout):
365         (WebCore::WorkerGlobalScope::clearInspector):
366         (WebCore::WorkerGlobalScope::setInterval):
367         (WebCore::WorkerGlobalScope::clearInterval):
368         (WebCore::WorkerGlobalScope::importScripts):
369         (WebCore::WorkerGlobalScope::errorEventTarget):
370         (WebCore::WorkerGlobalScope::logExceptionToConsole):
371         (WebCore::WorkerGlobalScope::addConsoleMessage):
372         (WebCore::WorkerGlobalScope::addMessage):
373         (WebCore::WorkerGlobalScope::addMessageToWorkerConsole):
374         (WebCore::WorkerGlobalScope::isContextThread):
375         (WebCore::WorkerGlobalScope::isJSExecutionForbidden):
376         (WebCore::WorkerGlobalScope::eventTargetData):
377         (WebCore::WorkerGlobalScope::ensureEventTargetData):
378         (WebCore::WorkerGlobalScope::Observer::Observer):
379         (WebCore::WorkerGlobalScope::Observer::~Observer):
380         (WebCore::WorkerGlobalScope::Observer::stopObserving):
381         (WebCore::WorkerGlobalScope::registerObserver):
382         (WebCore::WorkerGlobalScope::unregisterObserver):
383         (WebCore::WorkerGlobalScope::notifyObserversOfStop):
384         (WebCore::WorkerGlobalScope::eventQueue):
385         * workers/WorkerGlobalScope.h: Renamed from Source/WebCore/workers/WorkerContext.h.
386         (WebCore::WorkerGlobalScope::isSharedWorkerGlobalScope):
387         (WebCore::WorkerGlobalScope::isDedicatedWorkerGlobalScope):
388         (WebCore::WorkerGlobalScope::url):
389         (WebCore::WorkerGlobalScope::groupSettings):
390         (WebCore::WorkerGlobalScope::script):
391         (WebCore::WorkerGlobalScope::clearScript):
392         (WebCore::WorkerGlobalScope::thread):
393         (WebCore::WorkerGlobalScope::self):
394         (WebCore::WorkerGlobalScope::workerInspectorController):
395         (WebCore::WorkerGlobalScope::optionalNavigator):
396         (WebCore::WorkerGlobalScope::optionalLocation):
397         (WebCore::WorkerGlobalScope::isClosing):
398         * workers/WorkerGlobalScope.idl: Renamed from Source/WebCore/workers/WorkerContext.idl.
399         * workers/WorkerGlobalScopeProxy.h: Renamed from Source/WebCore/workers/WorkerContextProxy.h.
400         (WebCore::WorkerGlobalScopeProxy::~WorkerGlobalScopeProxy):
401         (WebCore::WorkerGlobalScopeProxy::PageInspector::~PageInspector):
402         (WebCore::WorkerGlobalScopeProxy::connectToInspector):
403         (WebCore::WorkerGlobalScopeProxy::disconnectFromInspector):
404         (WebCore::WorkerGlobalScopeProxy::sendMessageToInspector):
405         * workers/WorkerLoaderProxy.h:
406         * workers/WorkerMessagingProxy.cpp:
407         (WebCore::MessageWorkerGlobalScopeTask::create):
408         (WebCore::MessageWorkerGlobalScopeTask::MessageWorkerGlobalScopeTask):
409         (WebCore::MessageWorkerGlobalScopeTask::performTask):
410         (WebCore::WorkerGlobalScopeDestroyedTask::create):
411         (WebCore::WorkerGlobalScopeDestroyedTask::WorkerGlobalScopeDestroyedTask):
412         (WebCore::WorkerGlobalScopeDestroyedTask::performTask):
413         (WebCore::WorkerTerminateTask::performTask):
414         (WebCore::PostMessageToPageInspectorTask::performTask):
415         (WebCore::WorkerGlobalScopeProxy::create):
416         (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
417         (WebCore::WorkerMessagingProxy::~WorkerMessagingProxy):
418         (WebCore::WorkerMessagingProxy::startWorkerGlobalScope):
419         (WebCore::WorkerMessagingProxy::postMessageToWorkerGlobalScope):
420         (WebCore::WorkerMessagingProxy::postTaskForModeToWorkerGlobalScope):
421         (WebCore::WorkerMessagingProxy::workerObjectDestroyedInternal):
422         (WebCore::connectToWorkerGlobalScopeInspectorTask):
423         (WebCore::WorkerMessagingProxy::connectToInspector):
424         (WebCore::disconnectFromWorkerGlobalScopeInspectorTask):
425         (WebCore::WorkerMessagingProxy::disconnectFromInspector):
426         (WebCore::dispatchOnInspectorBackendTask):
427         (WebCore::WorkerMessagingProxy::workerGlobalScopeDestroyed):
428         (WebCore::WorkerMessagingProxy::workerGlobalScopeClosed):
429         (WebCore::WorkerMessagingProxy::workerGlobalScopeDestroyedInternal):
430         (WebCore::WorkerMessagingProxy::terminateWorkerGlobalScope):
431         * workers/WorkerMessagingProxy.h:
432         * workers/WorkerObjectProxy.h:
433         * workers/WorkerReportingProxy.h:
434         * workers/WorkerRunLoop.cpp:
435         (WebCore::WorkerRunLoop::run):
436         (WebCore::WorkerRunLoop::runInMode):
437         (WebCore::WorkerRunLoop::runCleanupTasks):
438         (WebCore::WorkerRunLoop::Task::performTask):
439         * workers/WorkerRunLoop.h:
440         * workers/WorkerScriptLoader.cpp:
441         (WebCore::WorkerScriptLoader::loadSynchronously):
442         * workers/WorkerThread.cpp:
443         (WebCore::WorkerThread::workerThread):
444         (WebCore::WorkerThread::runEventLoop):
445         (WebCore::WorkerThreadShutdownFinishTask::performTask):
446         (WebCore::WorkerThreadShutdownStartTask::performTask):
447         (WebCore::WorkerThread::stop):
448         * workers/WorkerThread.h:
449         (WebCore::WorkerThread::workerGlobalScope):
450         * xml/XMLHttpRequest.cpp:
451         (WebCore::XMLHttpRequest::usesDashboardBackwardCompatibilityMode):
452         (WebCore::XMLHttpRequest::responseXML):
453
454 2013-06-26  Sanjoy Pal  <sanjoy.pal@samsung.com>
455
456         Avoid redundant checks for Compositing reasons in RenderLayerCompositor
457         https://bugs.webkit.org/show_bug.cgi?id=118114
458
459         Reviewed by Anders Carlsson.
460
461         A RenderObject can be any one of the Video, Canvas, Plugin or Iframe.
462         Hence removing the redundant checks.
463
464         No new tests as no functionality change.
465
466         * rendering/RenderLayerCompositor.cpp:
467         (WebCore::RenderLayerCompositor::reasonsForCompositing):
468
469 2013-06-26  Gwang Yoon Hwang  <ryumiel@company100.net>
470
471         Coordinated Graphics: Separate CoordinatedLayerTreeHost into CoordinatedLayerTreeHost and CompositingCoordinator
472         https://bugs.webkit.org/show_bug.cgi?id=104360
473
474         Reviewed by Noam Rosenthal.
475
476         The CoordinatedLayerTreeHost has too many responsibilities. It
477         implements LayerTreeHost, GraphicsLayerClient,
478         CoordinatedGraphicsLayerClient, CoordinatedImageBacking::Client,
479         UpdateAtlas::Client, GraphicsLayerFactory and
480         WebCustomFilterProgramProxyClient.
481
482         This refactoring reduces the responsibilities of CoordinatedLayerTreeHost.
483
484         This patch introduces a new class called CompositingCoordinator, which
485         takes the responsibility of managing compositing resources in
486         WebProcess.
487
488         CoordinatedLayerTreeHost is responsible only for the scheduling and
489         IPC-specific stuff, which are relevant only for WebKit2.
490
491         No new tests, covered by existing tests.
492
493         * CMakeLists.txt:
494         * Target.pri:
495         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: Added.
496         (WebCore::CompositingCoordinator::create):
497         (WebCore::CompositingCoordinator::~CompositingCoordinator):
498         (WebCore::CompositingCoordinator::CompositingCoordinator):
499         (WebCore::CompositingCoordinator::setRootCompositingLayer):
500         (WebCore::CompositingCoordinator::sizeDidChange):
501         (WebCore::CompositingCoordinator::flushPendingLayerChanges):
502         (WebCore::CompositingCoordinator::syncDisplayState):
503         (WebCore::CompositingCoordinator::nextAnimationServiceTime):
504         (WebCore::CompositingCoordinator::clearPendingStateChanges):
505         (WebCore::CompositingCoordinator::initializeRootCompositingLayerIfNeeded):
506         (WebCore::CompositingCoordinator::createRootLayer):
507         (WebCore::CompositingCoordinator::syncLayerState):
508         (WebCore::CompositingCoordinator::createImageBackingIfNeeded):
509         (WebCore::CompositingCoordinator::createImageBacking):
510         (WebCore::CompositingCoordinator::updateImageBacking):
511         (WebCore::CompositingCoordinator::clearImageBackingContents):
512         (WebCore::CompositingCoordinator::removeImageBacking):
513         (WebCore::CompositingCoordinator::flushPendingImageBackingChanges):
514         (WebCore::CompositingCoordinator::notifyAnimationStarted):
515         (WebCore::CompositingCoordinator::notifyFlushRequired):
516         (WebCore::CompositingCoordinator::paintContents):
517         (WebCore::CompositingCoordinator::createGraphicsLayer):
518         (WebCore::CompositingCoordinator::deviceScaleFactor):
519         (WebCore::CompositingCoordinator::pageScaleFactor):
520         (WebCore::CompositingCoordinator::createUpdateAtlas):
521         (WebCore::CompositingCoordinator::removeUpdateAtlas):
522         (WebCore::CompositingCoordinator::visibleContentsRect):
523         (WebCore::CompositingCoordinator::mainContentsLayer):
524         (WebCore::CompositingCoordinator::setVisibleContentsRect):
525         (WebCore::CompositingCoordinator::deviceOrPageScaleFactorChanged):
526         (WebCore::CompositingCoordinator::detachLayer):
527         (WebCore::CompositingCoordinator::commitScrollOffset):
528         (WebCore::CompositingCoordinator::renderNextFrame):
529         (WebCore::CompositingCoordinator::purgeBackingStores):
530         (WebCore::CompositingCoordinator::paintToSurface):
531         (WebCore::CompositingCoordinator::scheduleReleaseInactiveAtlases):
532         (WebCore::CompositingCoordinator::releaseInactiveAtlasesTimerFired):
533         * platform/graphics/texmap/coordinated/CompositingCoordinator.h: Added.
534         (WebCore::CompositingCoordinator::clearRootLayer):
535         (WebCore::CompositingCoordinator::rootLayer):
536         (WebCore::CompositingCoordinator::state):
537
538 2013-06-26  Kihong Kwon  <kihong.kwon@samsung.com>
539
540         Vibration cannot be canceled during pattern vibration.
541         https://bugs.webkit.org/show_bug.cgi?id=117822
542
543         Reviewed by Gyuyoung Kim.
544
545         Vibration can not cancel during pattern vibration is working. If resting time which are
546         even numbers of pattern m_isVibraing will be false and cancel will thus return early.
547         In addition, m_timerStart needs to be stopped in the cancelVibration().
548         If cancelVibration() is called right after m_timerStart is fired, timerStartFired
549         function can be called even if vibration is already canceled because of timing issue of timer.
550
551         Test: vibration/cancelVibration-during-pattern-vibrating.html
552
553         * Modules/vibration/Vibration.cpp:
554         (WebCore::Vibration::vibrate):
555         (WebCore::Vibration::cancelVibration):
556         (WebCore::Vibration::suspendVibration):
557         (WebCore::Vibration::resumeVibration):
558         (WebCore::Vibration::stopVibration):
559         (WebCore::Vibration::timerStartFired):
560         (WebCore::Vibration::timerStopFired):
561         * Modules/vibration/Vibration.h:
562
563 2013-06-26  Anders Carlsson  <andersca@apple.com>
564
565         Deprecate StringImpl::charactersWithNullTermination
566         https://bugs.webkit.org/show_bug.cgi?id=118108
567
568         Reviewed by Beth Dakin.
569
570         Rename calls to charactersWithNullTermination to deprecatedCharactersWithNullTermination.
571
572         * html/canvas/WebGLProgram.cpp:
573         (WebCore::WebGLProgram::cacheActiveAttribLocations):
574         * platform/graphics/win/FontCacheWin.cpp:
575         (WebCore::getLinkedFonts):
576         * platform/graphics/win/FontCustomPlatformData.cpp:
577         (WebCore::FontCustomPlatformData::fontPlatformData):
578         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
579         (WebCore::FontCustomPlatformData::fontPlatformData):
580         * platform/graphics/win/IconWin.cpp:
581         (WebCore::Icon::createIconForFiles):
582         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
583         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime):
584         * platform/graphics/wince/FontPlatformData.cpp:
585         (WebCore::FontPlatformData::FontPlatformData):
586         * platform/network/curl/CurlDownload.cpp:
587         (CurlDownload::moveFileToDestination):
588         * platform/network/win/CookieJarWin.cpp:
589         (WebCore::setCookiesFromDOM):
590         (WebCore::cookiesForDOM):
591         * platform/network/win/DownloadBundleWin.cpp:
592         (WebCore::DownloadBundle::appendResumeData):
593         (WebCore::DownloadBundle::extractResumeData):
594         * platform/network/win/ResourceHandleWin.cpp:
595         (WebCore::createInternetHandle):
596         (WebCore::ResourceHandle::start):
597         (WebCore::ResourceHandle::fileLoadTimer):
598         * platform/sql/SQLiteFileSystem.cpp:
599         (WebCore::SQLiteFileSystem::openDatabase):
600         * platform/sql/SQLiteStatement.cpp:
601         (WebCore::SQLiteStatement::prepare):
602         * platform/text/win/LocaleWin.cpp:
603         (WebCore::LCIDFromLocaleInternal):
604         * platform/text/win/TextCodecWin.cpp:
605         (WebCore::TextCodecWin::enumerateSupportedEncodings):
606         * platform/win/ClipboardUtilitiesWin.cpp:
607         (WebCore::getWebLocData):
608         (WebCore::createGlobalData):
609         (WebCore::setFileDescriptorData):
610         (WebCore::getURL):
611         (WebCore::setCFData):
612         * platform/win/ContextMenuWin.cpp:
613         (WebCore::ContextMenu::createPlatformContextMenuFromItems):
614         * platform/win/DragImageWin.cpp:
615         (WebCore::createDragImageIconForCachedImageFilename):
616         * platform/win/FileSystemWin.cpp:
617         (WebCore::getFindData):
618         (WebCore::deleteFile):
619         (WebCore::deleteEmptyDirectory):
620         (WebCore::pathByAppendingComponent):
621         (WebCore::makeAllDirectories):
622         (WebCore::pathGetFileName):
623         (WebCore::openTemporaryFile):
624         (WebCore::openFile):
625         * platform/win/MIMETypeRegistryWin.cpp:
626         (WebCore::mimeTypeForExtension):
627         (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
628         * platform/win/PasteboardWin.cpp:
629         (WebCore::createGlobalImageFileDescriptor):
630         (WebCore::createGlobalHDropContent):
631         * platform/win/PathWalker.cpp:
632         (WebCore::PathWalker::PathWalker):
633         * platform/win/SSLKeyGeneratorWin.cpp:
634         (WebCore::WebCore::signedPublicKeyAndChallengeString):
635         * platform/win/SharedBufferWin.cpp:
636         (WebCore::SharedBuffer::createWithContentsOfFile):
637         * platform/wince/FileSystemWinCE.cpp:
638         (WebCore::getFileInfo):
639         (WebCore::fileExists):
640         (WebCore::deleteFile):
641         (WebCore::deleteEmptyDirectory):
642         (WebCore::makeAllDirectories):
643         (WebCore::openTemporaryFile):
644         (WebCore::openFile):
645         * plugins/win/PluginDatabaseWin.cpp:
646         (WebCore::PluginDatabase::getPluginPathsInDirectories):
647         (WebCore::addMozillaPluginDirectories):
648         (WebCore::addAdobeAcrobatPluginDirectory):
649         (WebCore::addJavaPluginDirectory):
650         * plugins/win/PluginPackageWin.cpp:
651         (WebCore::getVersionInfo):
652         (WebCore::PluginPackage::fetchInfo):
653         (WebCore::PluginPackage::load):
654         * plugins/win/PluginViewWin.cpp:
655         (WebCore::PluginView::handlePostReadFile):
656
657 2013-06-26  Roger Fong  <roger_fong@apple.com>
658
659         Add an accessibility delegate interface to AppleWin port.
660         https://bugs.webkit.org/show_bug.cgi?id=118094.
661
662         Reviewed by Brent Fulgham.
663
664         * accessibility/win/AXObjectCacheWin.cpp: We call the page client's AXStartFrameLoad and AXFinishFrameLoad methods here, which will in turn call the AccessibilityDelegate's callbacks.
665         (WebCore::AXObjectCache::frameLoadingEventPlatformNotification):
666         * loader/EmptyClients.h:
667         (WebCore::EmptyChromeClient::AXStartFrameLoad):
668         (WebCore::EmptyChromeClient::AXFinishFrameLoad):
669         * page/ChromeClient.h:
670
671 2013-06-26  Jer Noble  <jer.noble@apple.com>
672
673         Potential use-after-free after neutering AudioBuffer's underlying ArrayBuffer.
674         https://bugs.webkit.org/show_bug.cgi?id=118040
675
676         Reviewed by Filip Pizlo.
677
678         Test: webaudio/audiobuffer-neuter.html
679
680         When creating an AudioBuffer's backing ArrayBufferView objects, mark them as 'unneuterable',
681         meaning the underlying data will be copied in a neuter scenario rather than transferred. This
682         means the underlying assumtions of the webaudio code can continue to assume that the memory
683         areas owned by the ArrayBufferView will be present until the AudioBuffer is itself destroyed.
684
685         In order to not expose the 'unneuterable' behavior to JavaScript, return a fresh Float32Array
686         wrapper around the ArrayBuffer object, rather than our own.
687
688         * Modules/webaudio/AudioBuffer.cpp:
689         (WebCore::AudioBuffer::AudioBuffer): Mark the newly created channels as not neuterable.
690         (WebCore::AudioBuffer::getChannelData): Return a new Float32Array object rather than a pointer to our own.
691         * Modules/webaudio/AudioBuffer.h:
692
693 2013-06-26  Brent Fulgham  <bfulgham@apple.com>
694
695         [Windows] Unreviewed build correction after r152035.
696
697         * page/CaptionUserPreferencesMediaAF.cpp: Don't attempt to include CoreText.h
698           if we do not have MediaAccessibility Framework.
699
700 2013-06-26  Brent Fulgham  <bfulgham@apple.com>
701
702         [Windows] Enable CaptionUserPreferencesMediaAF on Windows.
703         https://bugs.webkit.org/show_bug.cgi?id=118076
704
705         Reviewed by Eric Carlson.
706
707         * WebCore.vcxproj/WebCore.vcxproj: Enable building the CaptionUserPreferencesMediaAF source file.
708         * page/CaptionUserPreferencesMediaAF.cpp: Add soft-link commands for CoreText symbols needed in
709           the implementation for Windows.
710         * platform/LocalizedStrings.cpp: Enable Text Track-related strings on Windows.
711         * platform/LocalizedStrings.h: Ditto.
712
713 2013-06-26  Ryosuke Niwa  <rniwa@webkit.org>
714
715         Speed up SVG sprites by only painting the source rect in SVGImage::draw
716         https://bugs.webkit.org/show_bug.cgi?id=118070
717
718         Reviewed by Tim Horton.
719
720         Merge https://chromium.googlesource.com/chromium/blink/+/d359ab67fdd76a877d666dca91c311505dd27bbf.
721
722         * svg/graphics/SVGImage.cpp:
723         (WebCore::SVGImage::draw):
724
725 2013-06-26  David Kilzer  <ddkilzer@apple.com>
726
727         BUILD FIX (r151981): Include HTMLAudioElement.h for ENABLE(PLUGIN_PROXY_FOR_VIDEO)
728
729         * css/StyleResolver.cpp:
730         - Include HTMLAudioElement.h.
731         - Sort headers.
732         * rendering/RenderLayerCompositor.cpp:
733         - Include HTMLAudioElement.h.
734
735 2013-06-26  Yuki Sekiguchi  <yuki.sekiguchi@access-company.com>
736
737         getComputedStyle().width wrong after text changed
738         https://bugs.webkit.org/show_bug.cgi?id=106611
739
740         Reviewed by Dean Jackson.
741
742         When a new RenderText is created, NodeRenderingContext::createRendererForTextIfNeeded() sets a style to the RenderText.
743         If a font in the new style needs transcode (e.g. Meiryo), styleDidChange() calls transformText().
744         It sets a preferredLogicalWidthsDirty flag.
745         After that, createRendererForTextIfNeeded() inserts the RenderText to its parent renderer.
746         However, RenderObjectChildList::insertChildNode() doesn't set a preferredLogicalWidthsDirty flag of owner
747         because a preferredLogicalWidthsDirty flag of the RenderText is already true.
748
749         Inserting new child should always sets a preferredLogicalWidthsDirty flag.
750         Therefore, this patch called setPreferredLogicalWidthsDirty() of owner.
751
752         Test: fast/dynamic/empty-absolute-innerhtml-transcoding-text.html
753
754         * rendering/RenderObjectChildList.cpp:
755         (WebCore::RenderObjectChildList::insertChildNode):
756
757 2013-06-26  Brent Fulgham  <bfulgham@apple.com>
758
759         Prepare CaptionUserPreferencesMac for use on Windows port.
760         https://bugs.webkit.org/show_bug.cgi?id=118069
761
762         Reviewed by Eric Carlson.
763
764         * WebCore.vcxproj/WebCore.vcxproj: Add new files.
765         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
766         * WebCore.xcodeproj/project.pbxproj: Update for new file name.
767         * page/CaptionUserPreferencesMac.h: Removed.
768         * page/CaptionUserPreferencesMac.mm: Removed.
769         * page/CaptionUserPreferencesMediaAF.cpp: Copied from page/CaptionUserPreferencesMac.mm.
770         * page/CaptionUserPreferencesMediaAF.h: Copied from page/CaptionUserPreferencesMac.h.
771         * page/PageGroup.cpp:
772         (WebCore::PageGroup::captionPreferences): Updated to new class name.
773
774 2013-06-26  Ryosuke Niwa  <rniwa@webkit.org>
775
776         Remove unneccesary cast to Node* in MediaControlTextTrackContainerElement::updateDisplay
777         https://bugs.webkit.org/show_bug.cgi?id=118020
778
779         Reviewed by Christophe Dumez.
780
781         Merge https://chromium.googlesource.com/chromium/blink/+/2de89f61bb316f5e166b45ce71bb2b293dbf575d
782
783         TextTrackCue is a Node, there's no reason to static_cast from it to Node*.
784
785         * html/shadow/MediaControlElements.cpp:
786         (WebCore::MediaControlTextTrackContainerElement::updateDisplay):
787
788 2013-06-26  Ryosuke Niwa  <rniwa@webkit.org>
789
790         RenderBox::hasRenderOverflow should return bool instead of RenderOverflow*
791         https://bugs.webkit.org/show_bug.cgi?id=118041
792
793         Reviewed by Christophe Dumez.
794
795         Merge https://chromium.googlesource.com/chromium/blink/+/1683b58c855b745463acbf18086e32279db5000f.
796
797         * rendering/RenderBox.h:
798         (WebCore::RenderBox::hasRenderOverflow):
799         (WebCore::RenderBox::hasHorizontalLayoutOverflow):
800         (WebCore::RenderBox::hasVerticalLayoutOverflow):
801
802 2013-06-26  Ryosuke Niwa  <rniwa@webkit.org>
803
804         Remove unneeded static_casts from SelectorChecker
805         https://bugs.webkit.org/show_bug.cgi?id=118018
806
807         Reviewed by Christophe Dumez.
808
809         Merge https://chromium.googlesource.com/chromium/blink/+/adc5b8bec2d8c6a857b3c930ca7484f76cad1367
810
811         SelectorChecker::checkOne casts to StyledElement just to call classNames, but
812         this method is on Element so there's no reason for this. The cast here also
813         looks pretty suspect. The method also casts to HTMLFrameElementBase to call
814         containsFullScreenElement which is also on Element so the cast can be removed.
815
816         * css/SelectorChecker.cpp:
817         (WebCore::SelectorChecker::checkOne):
818
819 2013-06-26  Ryosuke Niwa  <rniwa@webkit.org>
820
821         Set Attr.ownerDocument in Element#setAttributeNode()
822         https://bugs.webkit.org/show_bug.cgi?id=118031
823
824         Reviewed by Andreas Kling.
825
826         Merge https://chromium.googlesource.com/chromium/blink/+/fa739fe5369f55bbdcb3fa123cb64df36b8ae414.
827
828         Adopt Attr node as needed.
829
830         Test: fast/dom/Attr/set-attribute-node-from-iframe.html
831
832         * dom/Element.cpp:
833         (WebCore::Element::setAttributeNode):
834
835 2013-06-25  David Hyatt  <hyatt@apple.com>
836
837         Flex boxes (both old and new) don't handle max-height images correctly.
838         https://bugs.webkit.org/show_bug.cgi?id=118000
839
840         Reviewed by Beth Dakin.
841
842         Tests: css3/flexbox/image-percent-max-height.html
843                fast/flexbox/image-percent-max-height.html
844
845         * rendering/RenderBlock.cpp:
846         (WebCore::RenderBlock::dirtyForLayoutFromPercentageHeightDescendants):
847         (WebCore::RenderBlock::layoutBlockChildren):
848         Pull the percentage height descendant code that dirties those descendants
849         out of layoutBlockChildren and into a protected helper function,
850         dirtyForLayoutFromPercentageHeightDescendants, that can be called from the 
851         flex box code.
852         
853         Also patch dirtyForLayoutFromPercentageHeightDescendants so that it will dirty
854         preferred logical widths when a child has an aspect ratio, since we know that
855         percentage height changes will potentially affect the preferred widths of the image and
856         its ancestor blocks.
857
858         * rendering/RenderBlock.h:
859         Declaration of the new dirtyForLayoutFromPercentageHeightDescendants function.
860
861         * rendering/RenderDeprecatedFlexibleBox.cpp:
862         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
863         Make the old flex box code call dirtyForLayoutFromPercentageHeightDescendants so
864         that everything is dirtied properly.
865
866         (WebCore::RenderDeprecatedFlexibleBox::layoutHorizontalBox):
867         (WebCore::RenderDeprecatedFlexibleBox::layoutVerticalBox):
868         Remove the isReplaced()/percentage height/width dirtying now that the old flexible
869         box is using the same dirtying mechanism as RenderBlock.
870
871         * rendering/RenderFlexibleBox.cpp:
872         (WebCore::RenderFlexibleBox::layoutBlock):
873         Patch the new flexible box code to use the dirtying mechanism that RenderBlock
874         uses for percentage heights/widths on replaced descendants.
875
876         * rendering/RenderObject.h:
877         (WebCore::RenderObject::hasAspectRatio):
878         Pulled the static helper function from RenderReplaced into a full-blown method
879         on RenderObject, so that dirtyForLayoutFromPercentageHeightDescendants can call
880         it to check if an object has an aspect ratio.
881
882         * rendering/RenderReplaced.cpp:
883         (WebCore::RenderReplaced::computeAspectRatioInformationForRenderBox):
884         (WebCore::RenderReplaced::computeIntrinsicRatioInformation):
885         Patch the call sites of the static helper function to use hasAspectRatio instead
886         and get rid of the static in the cpp file.
887
888 2013-06-26  Kangil Han  <kangil.han@samsung.com>
889
890         Adopt is/toHTMLAreaElement for code cleanup
891         https://bugs.webkit.org/show_bug.cgi?id=117980
892
893         Reviewed by Antonio Gomes.
894
895         To enhance readibility, this patch adopts is/toHTMLAreaElement.
896         This also helps out to reduce duplicated use of static_cast.
897
898         * accessibility/AXObjectCache.cpp:
899         (WebCore::AXObjectCache::focusedUIElementForPage):
900         * accessibility/AccessibilityRenderObject.cpp:
901         (WebCore::AccessibilityRenderObject::getDocumentLinks):
902         (WebCore::AccessibilityRenderObject::accessibilityHitTest):
903         (WebCore::AccessibilityRenderObject::addImageMapChildren):
904         * html/HTMLAreaElement.h:
905         (WebCore::isHTMLAreaElement):
906         (WebCore::toHTMLAreaElement):
907         * html/HTMLMapElement.cpp:
908         (WebCore::HTMLMapElement::mapMouseEvent):
909         * page/FocusController.cpp:
910         (WebCore::FocusController::advanceFocusDirectionally):
911         * page/SpatialNavigation.cpp:
912         (WebCore::FocusCandidate::FocusCandidate):
913         (WebCore::areElementsOnSameLine):
914         * rendering/HitTestResult.cpp:
915         (WebCore::HitTestResult::absoluteLinkURL):
916         * rendering/RenderImage.cpp:
917         (WebCore::RenderImage::paintAreaElementFocusRing):
918
919 2013-06-26  Brady Eidson  <beidson@apple.com>
920
921         [Mac] Document URL is not updated by HSTS
922         <rdar://problem/14241270> and https://bugs.webkit.org/show_bug.cgi?id=118003
923         
924         Patch started by Alexey Proskuryakov, finished by Brady Eidson.
925
926         Reviewed by Brady Eidson and then Alexey Proskuryakov.
927
928         Synthesize a response and properly handle willSendRequest when the URL changes in a way that's typical for HSTS.
929
930         * platform/network/mac/WebCoreURLResponse:
931         * platform/network/mac/WebCoreURLResponse:
932         (WebCore::synthesizeRedirectResponseIfNecessary): Synthesize a redirect response and when the URL changes in a way that's
933           typical for HSTS connections.
934
935         * platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
936         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): Call synthesizeRedirectResponseIfNecessary.
937
938         * platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
939         (-[WebCoreResourceHandleAsOperationQueueDelegate connection:willSendRequest:redirectResponse:]): Ditto.
940
941 2013-06-26  Andrei Bucur  <abucur@adobe.com>
942
943         [CSS Regions] fast/regions/seamless-iframe-flowed-into-regions.html asserts
944         https://bugs.webkit.org/show_bug.cgi?id=117797
945
946         Reviewed by Antti Koivisto.
947
948         The seamless iframes inherit the current RenderFlowThread during layout. This means getting
949         the LayoutState object from the flow thread RenderView object is not always correct.
950         For RenderObjects inside the seamless iframes the view()/LayoutState object is different than the one
951         of the RenderFlowThread. The patch changes the code to use the correct LayoutState object during
952         layout when pushing a new state.
953
954         Tests: covered by fast/regions/seamless-iframe-flowed-into-regions.html
955
956         * rendering/RenderFlowThread.cpp:
957         (WebCore::RenderFlowThread::currentActiveRenderBox):
958         (WebCore::RenderFlowThread::pushFlowThreadLayoutState):
959         (WebCore::RenderFlowThread::popFlowThreadLayoutState):
960
961 2013-06-26  Ryosuke Niwa  <rniwa@webkit.org>
962
963         Remove many static_casts to Element types from AccessibilityNodeObject
964         https://bugs.webkit.org/show_bug.cgi?id=118021
965
966         Reviewed by Chris Fleizach.
967
968         Merge https://chromium.googlesource.com/chromium/blink/+/ecd837f94996a20fdb8798e24f26cf6edea2a423.
969
970         * accessibility/AccessibilityNodeObject.cpp:
971         (WebCore::AccessibilityNodeObject::isReadOnly):
972         (WebCore::AccessibilityNodeObject::alternativeTextForWebArea):
973         (WebCore::AccessibilityNodeObject::text):
974
975 2013-06-26  Christophe Dumez  <ch.dumez@sisa.samsung.com>
976
977         Stop inheriting SVGExternalResourcesRequired, SVGFitToViewBox and SVGZoomAndPan
978         https://bugs.webkit.org/show_bug.cgi?id=118029
979
980         Reviewed by Kentaro Hara.
981
982         Stop inheriting SVGExternalResourcesRequired, SVGFitToViewBox and SVGZoomAndPan
983         in the IDL and use implements statements instead.
984
985         This is one step towards getting rid of multiple inheritance in the SVG code
986         and matching the latest specification:
987         http://www.w3.org/TR/SVG2/types.html#BasicDOMInterfaces
988
989         There is no webexposed behavior change.
990
991         No new tests, no behavior change.
992
993         * svg/SVGAnimationElement.idl:
994         * svg/SVGCircleElement.idl:
995         * svg/SVGClipPathElement.idl:
996         * svg/SVGCursorElement.idl:
997         * svg/SVGDefsElement.idl:
998         * svg/SVGEllipseElement.idl:
999         * svg/SVGFEImageElement.idl:
1000         * svg/SVGFilterElement.idl:
1001         * svg/SVGForeignObjectElement.idl:
1002         * svg/SVGGElement.idl:
1003         * svg/SVGGradientElement.idl:
1004         * svg/SVGImageElement.idl:
1005         * svg/SVGLineElement.idl:
1006         * svg/SVGMPathElement.idl:
1007         * svg/SVGMarkerElement.idl:
1008         * svg/SVGMaskElement.idl:
1009         * svg/SVGPathElement.idl:
1010         * svg/SVGPatternElement.idl:
1011         * svg/SVGPolygonElement.idl:
1012         * svg/SVGPolylineElement.idl:
1013         * svg/SVGRectElement.idl:
1014         * svg/SVGSVGElement.idl:
1015         * svg/SVGScriptElement.idl:
1016         * svg/SVGSwitchElement.idl:
1017         * svg/SVGSymbolElement.idl:
1018         * svg/SVGTextContentElement.idl:
1019         * svg/SVGUseElement.idl:
1020         * svg/SVGViewSpec.idl:
1021
1022 2013-06-26  Ryosuke Niwa  <rniwa@webkit.org>
1023
1024         Use-after-free in RadioInputType::handleKeydownEvent
1025         https://bugs.webkit.org/show_bug.cgi?id=118035
1026
1027         Reviewed by Kent Tamura.
1028
1029         Use RefPtr for inputElement since setFocusedNode could blow it away.
1030
1031         * html/RadioInputType.cpp:
1032         (WebCore::RadioInputType::handleKeydownEvent):
1033
1034 2013-06-26  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1035
1036         Get rid of multiple inheritence for SVGViewElement interface
1037         https://bugs.webkit.org/show_bug.cgi?id=118014
1038
1039         Reviewed by Kentaro Hara.
1040
1041         Web IDL no longer supports multiple inheritence. As per the latest
1042         specification SVGViewElement should only inherit from SVGElement.
1043         'implements' statements are used for the rest. This patch refactors
1044         the IDL files to match the latest specification:
1045         http://www.w3.org/TR/SVG2/linking.html#InterfaceSVGViewElement
1046
1047         Note that there is a WebExposed change as SVGZoomAndPan used to be
1048         exposed on the Window and it is not anymore. SVGZoomAndPan merely
1049         supplements SVGViewElement and should not be exposed to JavaScript
1050         according to the latest specification.
1051
1052         No new tests, covered by existing tests.
1053
1054         * CMakeLists.txt:
1055         * DerivedSources.pri:
1056         * GNUmakefile.list.am:
1057         * svg/SVGExternalResourcesRequired.idl:
1058         * svg/SVGFitToViewBox.idl:
1059         * svg/SVGViewElement.idl:
1060         * svg/SVGZoomAndPan.idl:
1061
1062 2013-06-26  Ryosuke Niwa  <rniwa@webkit.org>
1063
1064         Mark SVG(Circle|Path|Rect)Element::createRenderer() with OVERRIDE
1065         https://bugs.webkit.org/show_bug.cgi?id=118037
1066
1067         Reviewed by Philip Rogers.
1068
1069         Merge https://chromium.googlesource.com/chromium/blink/+/e8196920e769ab0786b2b4b21d3fdc2d87afef0d.
1070
1071         * svg/SVGCircleElement.h:
1072         * svg/SVGPathElement.h:
1073         * svg/SVGRectElement.h:
1074
1075 2013-06-26  Kangil Han  <kangil.han@samsung.com>
1076
1077         Adopt is/toHTMLAudioElement for code cleanup
1078         https://bugs.webkit.org/show_bug.cgi?id=117985
1079
1080         Reviewed by Jer Noble.
1081
1082         To enhance readibility, this patch adopts is/toHTMLAudioElement.
1083         This also helps out to reduce duplicated use of static_cast.
1084
1085         * bindings/js/JSNodeCustom.cpp:
1086         (WebCore::isReachableFromDOM):
1087         * css/CSSDefaultStyleSheets.cpp:
1088         (WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):
1089         * css/StyleResolver.cpp:
1090         (WebCore::StyleResolver::canShareStyleWithElement):
1091         * html/HTMLAudioElement.h:
1092         (WebCore::isHTMLAudioElement):
1093         (WebCore::toHTMLAudioElement):
1094         * loader/SubframeLoader.cpp:
1095         (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
1096         * rendering/HitTestResult.cpp:
1097         (WebCore::HitTestResult::mediaElement):
1098         * rendering/RenderLayerCompositor.cpp:
1099         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
1100         * rendering/RenderThemeMac.mm:
1101         (WebCore::RenderThemeMac::paintMediaMuteButton):
1102         (WebCore::RenderThemeMac::paintMediaPlayButton):
1103
1104 2013-06-26  Ryosuke Niwa  <rniwa@webkit.org>
1105
1106         Refactoring: Fold Document::focusedNodeRemoved into Document::removeFocusedNodeOfSubtree
1107         https://bugs.webkit.org/show_bug.cgi?id=118036
1108
1109         Reviewed by Kent Tamura.
1110
1111         Merge https://chromium.googlesource.com/chromium/blink/+/3391beabe75548cc638a6c88982f913621a4410f.
1112
1113         * dom/Document.cpp:
1114         (WebCore::Document::removeFocusedNodeOfSubtree):
1115         * dom/Document.h:
1116
1117 2013-06-25  Ryosuke Niwa  <rniwa@webkit.org>
1118
1119         JSString should remember AtomicString
1120         https://bugs.webkit.org/show_bug.cgi?id=117386
1121
1122         Reviewed by Geoffrey Garen.
1123
1124         Added "Atomic" attribute as a WebKit extension to WebIDL, and deployed it in Element.idl and Node.idl so that
1125         the binding code can use newly added JSValue::toAtomic to update JSString's m_value.
1126
1127         * bindings/js/JSDOMBinding.cpp:
1128         (WebCore::valueToAtomicStringWithNullCheck): Added.
1129         (WebCore::valueToAtomicStringWithUndefinedOrNullCheck): Added.
1130
1131         * bindings/js/JSDOMBinding.h:
1132
1133         * bindings/scripts/CodeGeneratorJS.pm:
1134         (GetNativeTypeFromSignature): Return const AtomicString& when either Atomic attribute is specified or the type is
1135         Reflect. Note that setAttribute and getAttribute both use AtomicString for all arguments.
1136         (JSValueToNative): Use AtomicString equivalents when possible when converting DOMString to a WebCore object.
1137
1138         * bindings/scripts/IDLAttributes.txt: Added "Atomic" attribute.
1139
1140         * bindings/scripts/test/JS/JSTestObj.cpp: Baselined test cases.
1141         (WebCore::setJSTestObjReflectedStringAttr):
1142         (WebCore::setJSTestObjReflectedURLAttr):
1143         (WebCore::setJSTestObjReflectedCustomURLAttr):
1144
1145         * dom/Document.idl:
1146         * dom/Element.idl:
1147         * dom/Node.idl:
1148
1149 2013-06-25  Kangil Han  <kangil.han@samsung.com>
1150
1151         Adopt is/toHTMLAnchorElement for code cleanup
1152         https://bugs.webkit.org/show_bug.cgi?id=117973
1153
1154         Reviewed by Andreas Kling.
1155
1156         To enhance readibility, this patch adopts is/toHTMLAnchorElement.
1157         This also helps out to reduce duplicated use of static_cast.
1158
1159         * accessibility/AccessibilityNodeObject.cpp:
1160         (WebCore::AccessibilityNodeObject::anchorElement):
1161         * accessibility/AccessibilityRenderObject.cpp:
1162         (WebCore::AccessibilityRenderObject::anchorElement):
1163         (WebCore::AccessibilityRenderObject::internalLinkElement):
1164         (WebCore::AccessibilityRenderObject::url):
1165         (WebCore::AccessibilityRenderObject::stringValueForMSAA):
1166         (WebCore::AccessibilityRenderObject::isLinked):
1167         * css/CSSDefaultStyleSheets.cpp:
1168         (WebCore::elementCanUseSimpleDefaultStyle):
1169         * css/SelectorChecker.cpp:
1170         (WebCore::SelectorChecker::checkOne):
1171         * dom/Document.cpp:
1172         (WebCore::Document::updateBaseURL):
1173         * dom/TreeScope.cpp:
1174         (WebCore::TreeScope::findAnchor):
1175         * dom/VisitedLinkState.cpp:
1176         (WebCore::linkHashForElement):
1177         (WebCore::VisitedLinkState::determineLinkStateSlowCase):
1178         * html/HTMLAnchorElement.h:
1179         (WebCore::isHTMLAnchorElement):
1180         (WebCore::toHTMLAnchorElement):
1181         * page/DragController.cpp:
1182         (WebCore::DragController::draggableElement):
1183         * rendering/HitTestResult.cpp:
1184         (WebCore::HitTestResult::absoluteLinkURL):
1185         (WebCore::HitTestResult::isLiveLink):
1186         * rendering/RenderObject.cpp:
1187         (WebCore::RenderObject::getTextDecorationColors):
1188
1189 2013-06-25  Dean Jackson  <dino@apple.com>
1190
1191         Don't snapshot plug-ins that come from the same host as the page
1192         https://bugs.webkit.org/show_bug.cgi?id=117969
1193         <rdar://problem/12885400>
1194
1195         Reviewed by Tim Horton.
1196
1197         If a page is serving plug-in content directly, then that content
1198         is typically very important to the page. For example, embedding
1199         a video or audio player. In this case, don't snapshot the plug-ins.
1200
1201         * html/HTMLPlugInImageElement.cpp:
1202         (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Add a test
1203         that compares the plug-in's URL against the main page's URL and don't snapshot
1204         if they are the same.
1205
1206 2013-06-25  Alex Christensen  <achristensen@apple.com>
1207
1208         Added PLATFORM(WIN) to many places where it was missing for compiling WebGL for Windows.
1209         https://bugs.webkit.org/show_bug.cgi?id=117955
1210
1211         Reviewed by Brent Fulgham.
1212
1213         * platform/graphics/GraphicsContext3D.cpp:
1214         * platform/graphics/OpenGLShims.cpp:
1215         * platform/graphics/cairo/GraphicsContext3DCairo.cpp: Include new location of ShaderLang.h on Windows as of r151854.
1216         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
1217         (WebCore::Extensions3DOpenGL::createVertexArrayOES):
1218         (WebCore::Extensions3DOpenGL::deleteVertexArrayOES):
1219         (WebCore::Extensions3DOpenGL::isVertexArrayOES):
1220         (WebCore::Extensions3DOpenGL::bindVertexArrayOES):
1221         * platform/graphics/opengl/Extensions3DOpenGL.h:
1222         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
1223         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1224         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: Added PLATFORM(WIN) when necessary to each file.
1225
1226 2013-06-25  Bruno de Oliveira Abinader  <brunoabinader@gmail.com>
1227
1228         Fixes a typo in renderTextDecorationFlagsToCSSValue
1229         https://bugs.webkit.org/show_bug.cgi?id=117989
1230
1231         Reviewed by Gyuyoung Kim.
1232
1233         Return value should be PassRefPtr instead of RefPtr.
1234
1235         Backported from Blink:
1236         https://src.chromium.org/viewvc/blink?view=rev&revision=152994
1237
1238         No new tests, no behavior change.
1239
1240         * css/CSSComputedStyleDeclaration.cpp:
1241         (WebCore::renderTextDecorationFlagsToCSSValue):
1242
1243 2013-06-25  Santosh Mahto  <santosh.ma@samsung.com>
1244
1245         "application/x-mimearchive" should be included in finding remoteWebArchive while document loading
1246         https://bugs.webkit.org/show_bug.cgi?id=117734
1247
1248         Reviewed by Alexey Proskuryakov.
1249
1250         "application/x-mimearchive" is also used  while checking for
1251          RemoteArchive.
1252
1253         * loader/DocumentLoader.cpp:
1254         (WebCore::DocumentLoader::continueAfterContentPolicy):
1255
1256 2013-06-25  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1257
1258         HTMLMediaElement should inherit from MediaPlayerClient privately
1259         https://bugs.webkit.org/show_bug.cgi?id=117874
1260
1261         Reviewed by Andreas Kling.
1262
1263         Fixing FIXME: HTMLMediaElement was stuck with public inheritance from
1264         MediaPlayerClient due to the Chromium and Qt port.
1265
1266         The Qt port is changed to not cast from MediaPlayerClient to HTMLMediaElement.
1267
1268         * html/HTMLMediaElement.h:
1269         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1270         (WebCore::MediaPlayerPrivateQt::commitLoad):
1271
1272 2013-06-25  Csaba Osztrogon√°c  <ossy@webkit.org>
1273
1274         Checking if frame is complete and access duration doesn't need a decode
1275         https://bugs.webkit.org/show_bug.cgi?id=116041
1276
1277         Reviewed by Allan Sandfeld Jensen.
1278
1279         This change is to avoid image decoding for these two operations:
1280         1. frameIsCompleteAtIndex
1281         2. frameDurationAtIndex
1282         These two operations are moved to ImageDecoder interface and are now const
1283         to prevent future regression.
1284
1285         We are now able to check if a frame is complete by parsing the entire GIF file
1286         without decoding. This also provides information like frame duration such that
1287         controller the animation doesn't require any decoding.
1288
1289         Based on the Blink patch by Hin-Chung Lam <hclam@google.com>
1290         https://src.chromium.org/viewvc/blink?revision=149883&view=revision
1291
1292         * platform/graphics/BitmapImage.cpp:
1293         (WebCore::BitmapImage::frameIsCompleteAtIndex):
1294         (WebCore::BitmapImage::frameDurationAtIndex):
1295         * platform/graphics/ImageSource.cpp:
1296         (WebCore::ImageSource::frameDurationAtIndex):
1297         (WebCore::ImageSource::frameHasAlphaAtIndex):
1298         (WebCore::ImageSource::frameIsCompleteAtIndex):
1299         * platform/graphics/ImageSource.h:
1300         * platform/image-decoders/ImageDecoder.cpp:
1301         (WebCore::ImageDecoder::frameHasAlphaAtIndex):
1302         (WebCore::ImageDecoder::frameIsCompleteAtIndex):
1303         * platform/image-decoders/ImageDecoder.h:
1304         (WebCore::ImageDecoder::frameDurationAtIndex):
1305         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1306         (WebCore::GIFImageDecoder::frameIsCompleteAtIndex):
1307         (WebCore::GIFImageDecoder::frameDurationAtIndex):
1308         (WebCore::GIFImageDecoder::haveDecodedRow):
1309         (WebCore::GIFImageDecoder::gifComplete):
1310         (WebCore::GIFImageDecoder::decode):
1311         (WebCore::GIFImageDecoder::initFrameBuffer):
1312         * platform/image-decoders/gif/GIFImageDecoder.h:
1313         * platform/image-decoders/gif/GIFImageReader.h:
1314         (GIFImageReader::frameContext):
1315         (GIFImageReader::parseCompleted):
1316
1317 2013-06-24  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1318
1319         Update AbstractWorker, Worker and SharedWorker to match the specification
1320         https://bugs.webkit.org/show_bug.cgi?id=117930
1321
1322         Reviewed by Kentaro Hara.
1323
1324         Update AbstractWorker, Worker and SharedWorker to match the spec:
1325         http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#abstractworker
1326         http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#worker
1327         http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#sharedworker
1328
1329         Worker and SharedWorker no longer inherit from AbstractWorker. Web IDL 'implements'
1330         statements are used instead. Worker and SharedWorker can now inherit from EventTarget
1331         as per the specification.
1332
1333         No new tests, no behavior change.
1334
1335         * workers/AbstractWorker.idl:
1336         * workers/SharedWorker.idl:
1337         * workers/Worker.idl:
1338
1339 2013-06-24  Andy Estes  <aestes@apple.com>
1340
1341         DerivedSources.make should optionally include SupplementalDependencies.dep
1342         https://bugs.webkit.org/show_bug.cgi?id=117972
1343
1344         Reviewed by Dan Bernstein.
1345
1346         make(1) logs a non-fatal error to stderr when an included Makefile can't
1347         be found. This error is non-fatal because after make(1) reads in all the
1348         Makefiles it runs the recipe for any rule that specifies one of the
1349         Makefiles as a target. Only if the Makefile is still missing after
1350         applying these rules does the error become fatal.
1351
1352         Since SupplementalDependencies.dep is generated by running a script on
1353         SupplementalDependencies.txt, the file won't exist during clean builds.
1354         Each time make(1) logs this non-fatal error, Xcode sees it and itself
1355         logs a non-fatal error. This is annoying.
1356
1357         We don't care about this error. We only care if the recipe to generate
1358         SupplementalDependencies.dep fails, which is already a fatal error.
1359         Suppress the error by including SupplementalDependencies.dep optionally.
1360
1361         * DerivedSources.make:
1362
1363 2013-06-24  Kangil Han  <kangil.han@samsung.com>
1364
1365         Add support for document.currentScript
1366         https://bugs.webkit.org/show_bug.cgi?id=104221
1367
1368         Reviewed by Ryosuke Niwa.
1369
1370         Merge http://src.chromium.org/viewvc/blink?view=revision&revision=152230
1371         document.currentScript reflects the script that is currently being executed.
1372
1373         Merge http://src.chromium.org/viewvc/blink?view=revision&revision=152237
1374         Following up patch for code clean-up.
1375
1376         Tests: fast/dom/Document/document-current-script-async.html
1377                fast/dom/Document/document-current-script.html
1378
1379         * dom/Document.cpp:
1380         (WebCore::Document::pushCurrentScript):
1381         (WebCore::Document::popCurrentScript):
1382         * dom/Document.h:
1383         (WebCore::Document::currentScript):
1384         * dom/Document.idl:
1385         * dom/ScriptElement.cpp:
1386         (WebCore::isHTMLScriptElement):
1387         (WebCore::isSVGScriptElement):
1388         (WebCore::ScriptElement::executeScript):
1389         (WebCore::toScriptElementIfPossible):
1390         * html/HTMLScriptElement.h:
1391         (WebCore::toHTMLScriptElement):
1392         * svg/SVGScriptElement.cpp:
1393         * svg/SVGScriptElement.h:
1394         (WebCore::toSVGScriptElement):
1395
1396 2013-06-24  Kangil Han  <kangil.han@samsung.com>
1397
1398         Adopt is/toHTMLFormElement for code cleanup
1399         https://bugs.webkit.org/show_bug.cgi?id=117937
1400
1401         Reviewed by Andreas Kling.
1402
1403         This refers to http://src.chromium.org/viewvc/blink?view=revision&revision=152859
1404
1405         To enhance readibility, this patch adopts is/toHTMLFormElement.
1406         This also helps out to reduce duplicated use of static_cast.
1407
1408         * accessibility/AccessibilityRenderObject.cpp:
1409         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
1410         * bindings/js/JSDOMFormDataCustom.cpp:
1411         (WebCore::toHTMLFormElement):
1412         * bindings/js/JSHTMLFormElementCustom.cpp:
1413         (WebCore::JSHTMLFormElement::nameGetter):
1414         * editing/FrameSelection.cpp:
1415         (WebCore::scanForForm):
1416         (WebCore::FrameSelection::currentForm):
1417         * editing/InsertParagraphSeparatorCommand.cpp:
1418         (WebCore::InsertParagraphSeparatorCommand::doApply):
1419         * html/FormAssociatedElement.cpp:
1420         (WebCore::FormAssociatedElement::findAssociatedForm):
1421         * html/HTMLElement.cpp:
1422         (WebCore::HTMLElement::findFormAncestor):
1423         * html/HTMLFormControlsCollection.cpp:
1424         (WebCore::HTMLFormControlsCollection::HTMLFormControlsCollection):
1425         (WebCore::HTMLFormControlsCollection::formControlElements):
1426         (WebCore::HTMLFormControlsCollection::formImageElements):
1427         (WebCore::HTMLFormControlsCollection::updateNameCache):
1428         * html/HTMLFormElement.h:
1429         (WebCore::isHTMLFormElement):
1430         (WebCore::toHTMLFormElement):
1431         * html/HTMLImageElement.cpp:
1432         (WebCore::HTMLImageElement::insertedInto):
1433         * html/HTMLNameCollection.cpp:
1434         (WebCore::WindowNameCollection::nodeMatchesIfNameAttributeMatch):
1435         (WebCore::DocumentNameCollection::nodeMatchesIfNameAttributeMatch):
1436         (WebCore::DocumentNameCollection::nodeMatches):
1437         * html/RadioInputType.cpp:
1438         (WebCore::RadioInputType::handleKeydownEvent):
1439         * html/RadioNodeList.cpp:
1440         (WebCore::RadioNodeList::RadioNodeList):
1441         (WebCore::RadioNodeList::checkElementMatchesRadioNodeListFilter):
1442         * html/parser/HTMLConstructionSite.cpp:
1443         (WebCore::HTMLConstructionSite::insertHTMLFormElement):
1444         * html/parser/HTMLTreeBuilder.cpp:
1445         (WebCore::closestFormAncestor):
1446         * page/Frame.cpp:
1447         (WebCore::Frame::searchForLabelsBeforeElement):
1448
1449 2013-06-24  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1450
1451         Remove unneeded include header files from WebCore
1452         https://bugs.webkit.org/show_bug.cgi?id=117926
1453
1454         Reviewed by Andreas Kling.
1455
1456         Merge from https://chromiumcodereview.appspot.com/17388003. 
1457
1458         Cleanup unused includes from WebCore.
1459
1460         * editing/CompositeEditCommand.cpp:
1461         * editing/DeleteSelectionCommand.cpp:
1462         * editing/EditingStyle.cpp:
1463         * editing/Editor.cpp:
1464         * editing/FrameSelection.cpp:
1465         * editing/HTMLInterchange.cpp:
1466         * editing/IndentOutdentCommand.cpp:
1467         * editing/InsertListCommand.cpp:
1468         * editing/InsertTextCommand.cpp:
1469         * editing/SpellChecker.h:
1470         * editing/VisibleUnits.cpp:
1471         * editing/VisibleUnits.h:
1472         * editing/markup.cpp:
1473         * fileapi/Blob.h:
1474         * fileapi/File.h:
1475         * fileapi/WebKitBlobBuilder.h:
1476         * history/HistoryItem.cpp:
1477         * history/HistoryItem.h:
1478         * html/BaseDateAndTimeInputType.cpp:
1479         * html/BaseDateAndTimeInputType.h:
1480         * html/ClassList.cpp:
1481         * html/ClassList.h:
1482         * html/DOMSettableTokenList.h:
1483         * html/DOMURL.cpp:
1484         * html/DateInputType.h:
1485         * html/FormController.h:
1486         * html/HTMLCanvasElement.cpp:
1487         * html/HTMLCollection.cpp:
1488         * html/HTMLCollection.h:
1489         * html/HTMLDocument.h:
1490         * html/HTMLEmbedElement.cpp:
1491         * html/HTMLFieldSetElement.h:
1492         * html/HTMLFormElement.cpp:
1493         * html/HTMLFrameOwnerElement.h:
1494         * html/HTMLIFrameElement.cpp:
1495         * html/HTMLInputElement.cpp:
1496         * html/HTMLLegendElement.cpp:
1497         * html/HTMLLinkElement.h:
1498         * html/HTMLMediaElement.cpp:
1499         * html/HTMLMeterElement.cpp:
1500         * html/HTMLOptionElement.cpp:
1501         * html/HTMLOutputElement.h:
1502         * html/HTMLPlugInImageElement.cpp:
1503         * html/HTMLPlugInImageElement.h:
1504         * html/HTMLProgressElement.cpp:
1505         * html/HTMLSelectElement.cpp:
1506         * html/HTMLTableElement.cpp:
1507         * html/HTMLTitleElement.cpp:
1508         * html/HTMLTrackElement.cpp:
1509         * html/ImageInputType.h:
1510         * html/InputType.h:
1511         * html/MediaController.h:
1512         * html/MediaFragmentURIParser.h:
1513         * html/NumberInputType.cpp:
1514         * html/RadioNodeList.h:
1515         * html/TextFieldInputType.h:
1516         * html/TypeAhead.cpp:
1517         * html/ValidityState.cpp:
1518         * html/canvas/CanvasPathMethods.h:
1519         * html/canvas/CanvasRenderingContext2D.cpp:
1520         * html/canvas/CanvasRenderingContext2D.h:
1521         * html/canvas/OESVertexArrayObject.h:
1522         * html/canvas/WebGLBuffer.cpp:
1523         * html/canvas/WebGLBuffer.h:
1524         * html/canvas/WebGLCompressedTextureATC.h:
1525         * html/canvas/WebGLCompressedTextureS3TC.cpp:
1526         * html/canvas/WebGLCompressedTextureS3TC.h:
1527         * html/canvas/WebGLContextObject.h:
1528         * html/canvas/WebGLDebugShaders.cpp:
1529         * html/canvas/WebGLObject.h:
1530         * html/canvas/WebGLProgram.h:
1531         * html/canvas/WebGLRenderingContext.cpp:
1532         * html/canvas/WebGLRenderingContext.h:
1533         * html/canvas/WebGLShader.h:
1534         * html/canvas/WebGLTexture.h:
1535         * html/canvas/WebGLUniformLocation.h:
1536         * html/canvas/WebGLVertexArrayObjectOES.h:
1537         * html/parser/BackgroundHTMLParser.cpp:
1538         * html/parser/BackgroundHTMLParser.h:
1539         * html/parser/CSSPreloadScanner.cpp:
1540         * html/parser/HTMLConstructionSite.cpp:
1541         * html/parser/HTMLConstructionSite.h:
1542         * html/parser/HTMLDocumentParser.h:
1543         * html/parser/HTMLElementStack.h:
1544         * html/parser/HTMLParserIdioms.cpp:
1545         * html/parser/HTMLParserIdioms.h:
1546         * html/parser/HTMLParserScheduler.h:
1547         * html/parser/HTMLPreloadScanner.cpp:
1548         * html/parser/HTMLSourceTracker.h:
1549         * html/parser/HTMLTreeBuilder.h:
1550         * html/parser/HTMLTreeBuilderSimulator.h:
1551         * html/parser/XSSAuditor.cpp:
1552         * html/parser/XSSAuditorDelegate.h:
1553         * html/shadow/HTMLContentElement.cpp:
1554         * html/shadow/HTMLContentElement.h:
1555         * html/shadow/MediaControlElements.cpp:
1556         * html/shadow/MediaControls.h:
1557         * html/shadow/SliderThumbElement.cpp:
1558         * html/shadow/SliderThumbElement.h:
1559         * html/shadow/TextControlInnerElements.cpp:
1560         * html/track/InbandTextTrack.h:
1561         * html/track/LoadableTextTrack.cpp:
1562         * html/track/LoadableTextTrack.h:
1563         * html/track/TextTrackCueGeneric.h:
1564
1565 2013-06-24  Simon Fraser  <simon.fraser@apple.com>
1566
1567         Don't crash if renderName() is called on a renderer with no style
1568         https://bugs.webkit.org/show_bug.cgi?id=117960
1569
1570         Reviewed by Dave Hyatt.
1571
1572         Calling renderName() at the top of RenderObject::willChangeStyle() when
1573         adding debug logging would often crash because various functions called
1574         from renderName() assume style is non-null. Fix this.
1575
1576         * rendering/RenderBlock.cpp:
1577         (WebCore::RenderBlock::renderName):
1578         * rendering/RenderInline.cpp:
1579         (WebCore::RenderInline::renderName):
1580
1581 2013-06-24  Alex Christensen  <achristensen@apple.com>
1582
1583         Added /d option to xcopy to prevent unnecessary copying and compiling.
1584         https://bugs.webkit.org/show_bug.cgi?id=117951
1585
1586         Reviewed by Brent Fulgham.
1587
1588         * WebCore.vcxproj/WebCorePreBuild.cmd:
1589
1590 2013-06-24  Simon Fraser  <simon.fraser@apple.com>
1591
1592         Fix various crashes on sites with fixed backgrounds
1593         https://bugs.webkit.org/show_bug.cgi?id=117959
1594
1595         Reviewed by Andy Estes.
1596         
1597         FrameView::removeSlowRepaintObject() would assume that addSlowRepaintObject()
1598         had been called before it, but this isn't always the case. For example, if
1599         a page has a fixed background on the body, this falls into the accelerated
1600         path in WK2 tiled mode, so addSlowRepaintObject() is never called. However,
1601         we still call removeSlowRepaintObject() if the body is removed.
1602         
1603         So null-check m_slowRepaintObjects to avoid crashing.
1604
1605         Test: platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-removal.html
1606
1607         * page/FrameView.cpp:
1608         (WebCore::FrameView::removeSlowRepaintObject):
1609
1610 2013-06-24  Ruth Fong  <ruth_fong@apple.com>
1611
1612         Expose the mediaHasAudio() function in WK2
1613         https://bugs.webkit.org/show_bug.cgi?id=117946
1614         <rdar://problem/14250527>
1615
1616         Reviewed by Beth Dakin.
1617
1618         * WebCore.exp.in: Updated to include symbol for
1619         HTMLMediaElement::mediaHasAudio() function.
1620
1621 2013-06-24  Simon Fraser  <simon.fraser@apple.com>
1622
1623         Move displayID stuff from Widget to Chrome
1624         https://bugs.webkit.org/show_bug.cgi?id=117944
1625
1626         Reviewed by Anders Carlsson.
1627
1628         In r151877 I polluted Widget with displayID-related stuff. This would
1629         be better on HostWindow, so move it there. This is a net code reduction,
1630         and eliminates PlatformScreenMac.h, and the NSScreen category.
1631
1632         * WebCore.exp.in: Remove some functions from the exports list.
1633         * WebCore.xcodeproj/project.pbxproj: PlatformScreenMac.h is gone!
1634         * dom/Document.cpp:
1635         (WebCore::Document::requestAnimationFrame): Get the displayID from page->chrome()
1636         * page/Chrome.cpp:
1637         (WebCore::Chrome::Chrome): Initialize m_displayID.
1638         (WebCore::Chrome::displayID):
1639         (WebCore::Chrome::windowScreenDidChange): Code moved from Page; save the
1640         displayID, and tell all subframes that the displayID changed.
1641         * page/Chrome.h: Add displayID-related functions.
1642         * page/FrameView.cpp: Removed windowDisplayID().
1643         * page/FrameView.h: Ditto.
1644         * page/Page.cpp: Removed code.
1645         (WebCore::Page::Page):
1646         * page/Page.h:
1647         * platform/HostWindow.h: Added virtual displayID-related functions.
1648         * platform/Widget.cpp: Removed code.
1649         * platform/Widget.h: Ditto.
1650         * platform/mac/PlatformScreenMac.h: Removed.
1651         * platform/mac/PlatformScreenMac.mm: Removed the NSScreen category.
1652         (WebCore::displayIDFromScreen):
1653         (WebCore::screenForDisplayID):
1654         (WebCore::displayFromWidget):
1655         (WebCore::screenForWidget):
1656         * platform/mac/WidgetMac.mm: Removed windowDisplayID().
1657         * rendering/RenderLayerCompositor.cpp:
1658         (WebCore::RenderLayerCompositor::notifyFlushBeforeDisplayRefresh): Get
1659         the displayID via chrome().
1660
1661 2013-06-24  Andreas Kling  <akling@apple.com>
1662
1663         Don't create Document's selector query cache just to invalidate it.
1664         <http://webkit.org/b/117942>
1665
1666         Reviewed by Anders Carlsson.
1667
1668         If Document::m_selectorQueryCache is null, there's nothing to invalidate,
1669         so don't go through the trouble of creating a query cache.
1670
1671         * dom/Document.cpp:
1672         (WebCore::Document::setCompatibilityMode):
1673         (WebCore::Document::updateBaseURL):
1674
1675 2013-06-24  Robert Hogan  <robert@webkit.org>
1676
1677         Refactor adding a line break
1678         https://bugs.webkit.org/show_bug.cgi?id=117907
1679
1680         Reviewed by Ryosuke Niwa.
1681
1682         Reduce code duplication when adding a line break.
1683         
1684         No new tests, refactoring.
1685
1686         * rendering/RenderBlockLineLayout.cpp:
1687         (WebCore::addLineBreak):
1688         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
1689
1690 2013-06-24  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1691
1692         HashMap: reverse the order of the template arguments at alternate 'find', 'contains' and 'add' methods
1693         https://bugs.webkit.org/show_bug.cgi?id=117911
1694
1695         Reviewed by Anders Carlsson.
1696
1697         The order of the template arguments at HashMap alternate 'find', 'contains' and
1698         'add' methods is reversed so that callers can just pass the translator
1699         and let the compiler deduce input argument type.
1700
1701         Another rational is consistency with HashSet class.
1702
1703         * platform/network/HTTPHeaderMap.cpp:
1704         (WebCore::HTTPHeaderMap::get):
1705         (WebCore::HTTPHeaderMap::contains):
1706         (WebCore::HTTPHeaderMap::add):
1707
1708 2013-06-24  Robert Hogan  <robert@webkit.org>
1709
1710         Remove unnecessary check in RenderBlockLineLayout::nextSegmentBreak()
1711         https://bugs.webkit.org/show_bug.cgi?id=117713
1712
1713         Reviewed by David Hyatt.
1714
1715         Changeset r151613 should have done this instead. Since r151518 changed
1716         nextSegmentBreak() to detect line-break opportunities between no-wrap
1717         inlines there is no need to force the break later.
1718
1719         No new tests, covered by existing tests.
1720
1721         * rendering/RenderBlockLineLayout.cpp:
1722         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
1723
1724 2013-06-24  Eric Carlson  <eric.carlson@apple.com>
1725
1726         Potential crash when in-band track is removed
1727         https://bugs.webkit.org/show_bug.cgi?id=117938
1728         <rdar://problem/14246763>
1729
1730         Reviewed by Jer Noble.
1731
1732         This is timing dependent and I was unable to come up with a reliable test.
1733
1734         * html/track/InbandTextTrack.cpp:
1735         (WebCore::InbandTextTrack::willRemoveTextTrackPrivate): Early return if the media element
1736             has been cleared.
1737
1738 2013-06-24  Chris Rogers  <crogers@google.com>
1739
1740         WaveTable name has changed to PeriodicWave
1741         https://bugs.webkit.org/show_bug.cgi?id=117748
1742
1743         Reviewed by Jer Noble.
1744
1745         See related Web Audio bug and spec change:
1746         https://www.w3.org/Bugs/Public/show_bug.cgi?id=19561
1747         https://dvcs.w3.org/hg/audio/rev/7c4a40a9bb57
1748
1749         * CMakeLists.txt:
1750         * DerivedSources.make:
1751         * DerivedSources.pri:
1752         * GNUmakefile.list.am:
1753         * Modules/webaudio/AudioContext.cpp:
1754         (WebCore::AudioContext::createPeriodicWave):
1755         * Modules/webaudio/AudioContext.h:
1756         * Modules/webaudio/AudioContext.idl:
1757         * Modules/webaudio/OscillatorNode.cpp:
1758         (WebCore::OscillatorNode::OscillatorNode):
1759         (WebCore::OscillatorNode::setType):
1760         (WebCore::OscillatorNode::calculateSampleAccuratePhaseIncrements):
1761         (WebCore::OscillatorNode::process):
1762         (WebCore::OscillatorNode::setPeriodicWave):
1763         (WebCore::OscillatorNode::propagatesSilence):
1764         * Modules/webaudio/OscillatorNode.h:
1765         * Modules/webaudio/OscillatorNode.idl:
1766         * Modules/webaudio/PeriodicWave.cpp: Renamed from Source/WebCore/Modules/webaudio/WaveTable.cpp.
1767         (WebCore::PeriodicWave::create):
1768         (WebCore::PeriodicWave::createSine):
1769         (WebCore::PeriodicWave::createSquare):
1770         (WebCore::PeriodicWave::createSawtooth):
1771         (WebCore::PeriodicWave::createTriangle):
1772         (WebCore::PeriodicWave::PeriodicWave):
1773         (WebCore::PeriodicWave::waveDataForFundamentalFrequency):
1774         (WebCore::PeriodicWave::maxNumberOfPartials):
1775         (WebCore::PeriodicWave::numberOfPartialsForRange):
1776         (WebCore::PeriodicWave::createBandLimitedTables):
1777         (WebCore::PeriodicWave::generateBasicWaveform):
1778         * Modules/webaudio/PeriodicWave.h: Renamed from Source/WebCore/Modules/webaudio/WaveTable.h.
1779         (WebCore::PeriodicWave::rateScale):
1780         (WebCore::PeriodicWave::periodicWaveSize):
1781         (WebCore::PeriodicWave::sampleRate):
1782         (WebCore::PeriodicWave::numberOfRanges):
1783         * Modules/webaudio/PeriodicWave.idl: Renamed from Source/WebCore/Modules/webaudio/WaveTable.idl.
1784         * Target.pri:
1785         * WebCore.xcodeproj/project.pbxproj:
1786
1787 2013-06-24  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1788
1789         Commented IDL implements statements should not impact code generation
1790         https://bugs.webkit.org/show_bug.cgi?id=117932
1791
1792         Reviewed by Kentaro Hara.
1793
1794         Fix regular expression in preprocess-idls.pl script so that commented
1795         IDL implements statements no longer cause any code to be generated.
1796
1797         No new tests, covered by TestObj.idl.
1798
1799         * bindings/scripts/preprocess-idls.pl:
1800         (getImplementedInterfacesFromIDL):
1801         * bindings/scripts/test/TestObj.idl:
1802
1803 2013-06-24  Kangil Han  <kangil.han@samsung.com>
1804
1805         Adopt is/toHTMLStyleElement for minor code cleanup
1806         https://bugs.webkit.org/show_bug.cgi?id=117917
1807
1808         Reviewed by Antti Koivisto.
1809
1810         This patch refers to http://src.chromium.org/viewvc/blink?view=revision&revision=152853
1811
1812         There are some usages of static_cast to HTMLStyleElement so this patch creates toHTMLStyleElement
1813         function for code cleanup. Plus, isHTMLStyleElement is also made for same purpose.
1814
1815         * css/CSSStyleSheet.cpp:
1816         (WebCore::isAcceptableCSSStyleSheetParent):
1817         * css/StyleScopeResolver.cpp:
1818         (WebCore::StyleScopeResolver::scopeFor):
1819         * css/StyleSheetList.cpp:
1820         (WebCore::StyleSheetList::getNamedItem):
1821         * dom/DocumentStyleSheetCollection.cpp:
1822         (WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
1823         * dom/Node.cpp:
1824         (WebCore::Node::numberOfScopedHTMLStyleChildren):
1825         * html/HTMLStyleElement.h:
1826         (WebCore::isHTMLStyleElement):
1827         (WebCore::toHTMLStyleElement):
1828         * inspector/InspectorCSSAgent.cpp:
1829         (WebCore::InspectorCSSAgent::viaInspectorStyleSheet):
1830         * inspector/InspectorStyleSheet.cpp:
1831         (WebCore::InspectorStyleSheet::inlineStyleSheetText):
1832         * page/PageSerializer.cpp:
1833         (WebCore::PageSerializer::serializeFrame):
1834
1835 2013-06-24  Patrick Gansterer  <paroga@webkit.org>
1836
1837         Cleanup RenderThemeWin after r151783 and r151794.
1838         https://bugs.webkit.org/show_bug.cgi?id=117936
1839
1840         Reviewed by Alexis Menard.
1841
1842         GetSysColor() takes an integer as argument. Let cssValueIdToSysColorIndex()
1843         return an int instead of casting the values to the CSSValueID type.
1844
1845         * rendering/RenderThemeWin.cpp:
1846         (WebCore::cssValueIdToSysColorIndex):
1847         (WebCore::RenderThemeWin::systemColor):
1848
1849 2013-06-24  Patrick Gansterer  <paroga@webkit.org>
1850
1851         Use SetFilePointer instead of SetFilePointerEx in FileSystemWin
1852         https://bugs.webkit.org/show_bug.cgi?id=116205
1853
1854         Reviewed by Ryosuke Niwa.
1855
1856         SetFilePointerEx is not available on Windows CE, so use SetFilePointer.
1857         Also add a extra return for the case of an failure.
1858
1859         * platform/win/FileSystemWin.cpp:
1860         (WebCore::seekFile):
1861
1862 2013-06-24  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1863
1864         Introduce WindowTimers IDL interface
1865         https://bugs.webkit.org/show_bug.cgi?id=117929
1866
1867         Reviewed by Kentaro Hara.
1868
1869         Introduce WindowTimers IDL interface and have both DOMWindow and WorkerContext
1870         implement it to match the latest specification and avoid IDL duplication:
1871         - http://www.whatwg.org/specs/web-apps/current-work/multipage/timers.html#windowtimers
1872         - http://dev.w3.org/html5/workers/#apis-available-to-workers
1873
1874         No new tests, no behavior change.
1875
1876         * CMakeLists.txt:
1877         * DerivedSources.make:
1878         * DerivedSources.pri:
1879         * GNUmakefile.list.am:
1880         * page/DOMWindow.idl:
1881         * page/WindowTimers.idl:
1882         * workers/WorkerContext.idl:
1883
1884 2013-06-24  Patrick Gansterer  <paroga@webkit.org>
1885
1886         Build fix for WinCE after r151563.
1887
1888         * bindings/js/JSDOMBinding.cpp:
1889         (WebCore::toInt8): Use fabs() instead of abs().
1890         (WebCore::toUInt8): Ditto.
1891
1892 2013-06-24  Patrick Gansterer  <paroga@webkit.org>
1893
1894         Build fix for WinCE after r151783.
1895
1896         * rendering/RenderThemeWinCE.cpp:
1897         (WebCore::cssValueIdToSysColorIndex):
1898         (WebCore::RenderThemeWinCE::systemColor):
1899
1900 2013-06-24  Commit Queue  <commit-queue@webkit.org>
1901
1902         Unreviewed, rolling out r151021.
1903         http://trac.webkit.org/changeset/151021
1904         https://bugs.webkit.org/show_bug.cgi?id=117924
1905
1906         caused regressions on Qt and GTK (#117141 and #117688)
1907         (Requested by philn on #webkit).
1908
1909         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1910         (webkit_web_src_init):
1911         (webKitWebSrcFinalize):
1912         (webKitWebSrcSetProperty):
1913         (webKitWebSrcGetProperty):
1914         (webKitWebSrcStop):
1915         (webKitWebSrcStart):
1916         (webKitWebSrcChangeState):
1917         (webKitWebSrcQueryWithParent):
1918         (webKitWebSrcGetUri):
1919         (webKitWebSrcSetUri):
1920         (webKitWebSrcNeedDataMainCb):
1921         (webKitWebSrcEnoughDataMainCb):
1922         (webKitWebSrcSeekMainCb):
1923         (webKitWebSrcSeekDataCb):
1924         (StreamingClient::StreamingClient):
1925         (StreamingClient::~StreamingClient):
1926         (StreamingClient::didReceiveResponse):
1927         (StreamingClient::didReceiveData):
1928         (StreamingClient::didFinishLoading):
1929         (StreamingClient::wasBlocked):
1930         (StreamingClient::cannotShowURL):
1931
1932 2013-06-24  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1933
1934         Move IDL implements statements to IDL files that implement the interface
1935         https://bugs.webkit.org/show_bug.cgi?id=117921
1936
1937         Reviewed by Kentaro Hara.
1938
1939         Move IDL implements statements to IDL files that implement the interface
1940         so that we can more easily know that a given IDL interface implements
1941         another.
1942
1943         The generator now enforces this as well for consistency.
1944
1945         No new tests, covered by TestImplements.idl.
1946
1947         * bindings/scripts/preprocess-idls.pl:
1948         (getImplementedInterfacesFromIDL):
1949         * bindings/scripts/test/TestImplements.idl:
1950         * bindings/scripts/test/TestInterface.idl:
1951         * dom/CharacterData.idl:
1952         * dom/ChildNode.idl:
1953         * dom/DocumentType.idl:
1954         * dom/Element.idl:
1955
1956 2013-06-24  Zalan Bujtas  <zalan@apple.com>
1957
1958         Hittest finds the truncated text instead of the floating input, when the input is clicked.
1959         https://bugs.webkit.org/show_bug.cgi?id=115675
1960
1961         Reviewed by David Hyatt.
1962
1963         Ignore truncated text on inline textbox and everything beyond the ellipsis box on
1964         the root inlinebox while hittesting. (provided that nodeAtPoint finds no hit for any of
1965         the root inline's children.)
1966
1967         Test: fast/css/text-overflow-ellipsis-and-floating-input-hittest.html
1968
1969         * rendering/InlineFlowBox.cpp:
1970         (WebCore::InlineFlowBox::nodeAtPoint):
1971         * rendering/InlineTextBox.cpp:
1972         (WebCore::InlineTextBox::nodeAtPoint):
1973         (WebCore::InlineTextBox::paint):
1974
1975 2013-06-17  Darin Adler  <darin@apple.com>
1976
1977         Sort all the Xcode project files
1978         https://bugs.webkit.org/show_bug.cgi?id=117696
1979
1980         Reviewed by Anders Carlsson.
1981
1982         * WebCore.xcodeproj/project.pbxproj: Ran the sort-Xcode-project-file script.
1983
1984 2013-06-22  Zalan Bujtas  <zalan@apple.com>
1985
1986         Remove redundant helper from RenderRegion.
1987         https://bugs.webkit.org/show_bug.cgi?id=117915
1988
1989         Reviewed by Andreas Kling.
1990
1991         Minor code cleanup.
1992
1993         * rendering/RenderRegion.cpp:
1994         (WebCore::RenderRegion::regionOversetState):
1995         (WebCore::RenderRegion::setRegionOversetState):
1996         * rendering/RenderRegion.h:
1997
1998 2013-06-22  Mark Rowe  <mrowe@apple.com>
1999
2000         Build fix after r151878.
2001
2002         * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
2003         (WebCore::WebCoreAVFResourceLoader::startLoading): Pass the new UseDefaultOriginRestrictionsForType
2004         argument to the ResourceLoaderOptions constructor.
2005
2006 2013-06-22  Simon Fraser  <simon.fraser@apple.com>
2007
2008         Followup from r151877 .
2009         Fix crash in fast/frames/iframe-access-screen-of-deleted.html by null-checking the widget.
2010
2011         * platform/mac/PlatformScreenMac.mm:
2012         (WebCore::screenForWidget):
2013
2014 2013-06-22  Hans Muller  <hmuller@adobe.com>
2015
2016         [CSS Shapes] limit shape image values to same origin
2017         https://bugs.webkit.org/show_bug.cgi?id=117610
2018
2019         Reviewed by Alexey Proskuryakov.
2020
2021         Restrict the image URL values for shape-inside and shape-outside to
2022         the same origin as the document. The alpha channel of image shape values
2023         will be thresholded to produce the shape's boundaries (see bug 116643)
2024         so normal image access rules aren't secure enough.
2025
2026         Added a RequestOriginPolicy ResourceLoaderOption which is used by
2027         StyleResolver::loadPendingShapeImage() to request the additional restriction.
2028         The change should have no other effect although it does enable one to apply
2029         the same restriction to other resources which can currently be loaded from
2030         any origin - see CachedResourceLoader::canRequest().
2031
2032         Test: http/tests/security/shape-inside-image-origin.html
2033
2034         * css/CSSImageValue.cpp:
2035         (WebCore::CSSImageValue::cachedImage): Add an effectively optional ResourceLoaderOptions parameter.
2036         * css/CSSImageValue.h:
2037         (WebCore::CSSImageValue::cachedImage): Ditto.
2038         * css/StyleResolver.cpp:
2039         (WebCore::StyleResolver::loadPendingShapeImage): Load the image with the default CachedResourceLoader options plus RestrictToSameOrigin.
2040         (WebCore::StyleResolver::loadPendingImages): Call loadPendingShapeImage().
2041         * css/StyleResolver.h:
2042         * loader/DocumentLoader.cpp:
2043         (WebCore::DocumentLoader::startLoadingMainResource): Update the ResourceLoaderOptions static variable.
2044         * loader/NetscapePlugInStreamLoader.cpp:
2045         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader): Ditto.
2046         * loader/ResourceLoader.h:
2047         (WebCore::ResourceLoader::options):
2048         * loader/ResourceLoaderOptions.h: Add RequestOriginPolicy enum.
2049         (WebCore::ResourceLoaderOptions::ResourceLoaderOptions):
2050         * loader/SubresourceLoader.cpp:
2051         (WebCore::SubresourceLoader::willSendRequest): Pass ResourceLoaderOptions along to revised CachedResourceLoader::canRequest().
2052         * loader/cache/CachedResourceLoader.cpp:
2053         (WebCore::CachedResourceLoader::requestImage):
2054         (WebCore::CachedResourceLoader::requestUserCSSStyleSheet): Update load() ResourceLoaderOptions.
2055         (WebCore::CachedResourceLoader::canRequest): Replaced ContentSecurityPolicyCheck parameter with ResourceLoaderOptions.
2056         (WebCore::CachedResourceLoader::requestResource): Pass ResourceLoaderOptions along to revised CachedResourceLoader::canRequest().
2057         (WebCore::CachedResourceLoader::defaultCachedResourceOptions): Added UseDefaultOriginRestrictionsForType initializer.
2058         * loader/cache/CachedResourceLoader.h:
2059         * loader/icon/IconLoader.cpp:
2060         (WebCore::IconLoader::startLoading): Added UseDefaultOriginRestrictionsForType intializer.
2061
2062 2013-06-22  Simon Fraser  <simon.fraser@apple.com>
2063
2064         screen.availWidth always returns width of primary display
2065         https://bugs.webkit.org/show_bug.cgi?id=117863
2066
2067         Reviewed by Geoffrey Garen.
2068
2069         In WebKit2, Widgets have no platformWidget, so trying to get to the
2070         NSScreen via the platform widget's window never succeeded, and we always
2071         fell back on getting info for the main display.
2072
2073         However, we were already pushing the WKView's displayID down to the
2074         WebProcess for the requestAnimationFrame infrastructure, so use that.
2075
2076         Add a virtual function on Widget windowDisplayID(), that is overridden
2077         in FrameView to return the PlatformDisplayID which Page has.
2078
2079         Fix PlatformScreenMac to fall back to Widget::windowDisplayID() when it fails
2080         to get an NSWindow from the Widget.
2081
2082         Add a utility category on NSScreen to get an NSScreen's displayID, and to
2083         find an NSScreen given a displayID.
2084
2085         * WebCore.exp.in:
2086         * WebCore.xcodeproj/project.pbxproj:
2087         * page/FrameView.cpp:
2088         (WebCore::FrameView::windowDisplayID):
2089         * page/FrameView.h:
2090         * platform/Widget.cpp:
2091         (WebCore::Widget::windowDisplayID):
2092         * platform/Widget.h:
2093         * platform/mac/PlatformScreenMac.h: Added.
2094         * platform/mac/PlatformScreenMac.mm:
2095         (+[NSScreen screenForDislayID:]):
2096         (-[NSScreen displayID]):
2097         (WebCore::screenRect):
2098         (WebCore::screenAvailableRect):
2099         * platform/mac/WidgetMac.mm:
2100         (WebCore::Widget::windowDisplayID):
2101
2102 2013-06-21  Geoffrey Garen  <ggaren@apple.com>
2103
2104         Crashes due to NULL dereference beneath WebCore::StyleResolver::loadPendingSVGDocuments and related functions
2105         https://bugs.webkit.org/show_bug.cgi?id=117903
2106         <rdar://problem/14202130>
2107
2108         Reviewed by Darin Adler.
2109
2110         * css/StyleResolver.cpp:
2111         (WebCore::StyleResolver::loadPendingSVGDocuments): Add a NULL check for
2112         RenderStyle here...
2113         (WebCore::StyleResolver::loadPendingResources): ...and here.
2114
2115 2013-06-21  Simon Fraser  <simon.fraser@apple.com>
2116
2117         Occasional crash swiping between pages
2118         https://bugs.webkit.org/show_bug.cgi?id=117902
2119
2120         Reviewed by Beth Dakin.
2121
2122         m_scrollingStateTree->rootStateNode() can be null when quickly swiping between pages,
2123         so check this in ScrollingCoordinatorMac::commitTreeState().
2124
2125         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
2126         (WebCore::ScrollingCoordinatorMac::commitTreeState):
2127
2128 2013-06-21  Brent Fulgham  <bfulgham@apple.com>
2129
2130         AX: Title for ListItemRole should consist of concatenated child text elements.
2131         https://bugs.webkit.org/show_bug.cgi?id=117892
2132
2133         Reviewed by Chris Fleizach.
2134
2135         accessibility/listitem-title.html
2136
2137         * accessibility/AccessibilityNodeObject.cpp:
2138         (WebCore::AccessibilityNodeObject::visibleText): Add ListItemRole to set of
2139         elements that concatenate their children for display purposes.
2140         (WebCore::AccessibilityNodeObject::title): Ditto.
2141
2142 2013-06-21  Sergio Correia  <sergio.correia@openbossa.org>
2143
2144         [MediaStream]: Remove ``>= 0'' assertion from a size_t variable
2145         https://bugs.webkit.org/show_bug.cgi?id=117890
2146
2147         Reviewed by Adam Barth.
2148
2149         This patch fixes a strict build by removing the ``>= 0'' assertion from
2150         a size_t (unsigned type) variable in RTCStatsResponse.cpp.
2151
2152         No new tests; build fix.
2153
2154         * Modules/mediastream/RTCStatsResponse.cpp:
2155         (WebCore::RTCStatsResponse::addStatistic): Remove ``>=0''assertion,
2156         since the variable is unsigned and is always >= 0.
2157
2158 2013-06-21  Alex Christensen  <achristensen@apple.com>
2159
2160         GraphicsContext3DNEON.h cannot be found on Windows and does not need to be found.
2161         https://bugs.webkit.org/show_bug.cgi?id=117894
2162
2163         Reviewed by Brent Fulgham.
2164
2165         * platform/graphics/GraphicsContext3D.cpp:
2166         Added #if HAVE(ARM_NEON_INTRINSICS) around #include "GraphicsContext3DNEON.h"
2167
2168 2013-06-21  Robert Hogan  <robert@webkit.org>
2169
2170         Ignoring padding-right of inline elements in containers with undefined width
2171         https://bugs.webkit.org/show_bug.cgi?id=76451
2172
2173         Reviewed by David Hyatt.
2174
2175         Collapsed trailing space on a normal wrap line should not cause a line-break 
2176         if it is the difference between fitting on the line and breaking. Likewise, on a line that
2177         has a mix of auto-wrap and no-wrap inlines we don't want a trailing space at the end of a no-wrap inline
2178         to be the difference between that no-wrap inline fitting or breaking the line. This latter
2179         scenario is covered already by inline-whitespace-wrapping-8.html.
2180
2181         Test: fast/text/whitespace/inline-whitespace-wrapping-9.html
2182
2183         * rendering/RenderBlockLineLayout.cpp:
2184         (WebCore::LineWidth::fitsOnLine):
2185         (WebCore::LineWidth::fitsOnLineIncludingExtraWidth):
2186         (WebCore::LineWidth::fitsOnLineExcludingTrailingWhitespace):
2187         (WebCore::LineWidth::currentWidth):
2188         (WebCore::LineWidth::fitsOnLineExcludingTrailingCollapsedWhitespace):
2189         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
2190
2191 2013-06-21  Alex Christensen  <achristensen@apple.com>
2192
2193         Added WebGL source files to Windows build and made Windows build successfully with them.
2194         https://bugs.webkit.org/show_bug.cgi?id=117853
2195
2196         Reviewed by Brent Fulgham.
2197
2198         * WebCore.vcxproj/WebCore.vcxproj: Added WebGL source files.
2199         * WebCore.vcxproj/WebCore.vcxproj.filters: Added platform\graphics\opengl and platform\graphics\gpu filters.
2200         * WebCore.vcxproj/WebCorePreBuild.cmd: Copy ANGLE headers and glext.h before building WebCore (which now uses them).
2201         * platform/graphics/ANGLEWebKitBridge.h: Look in newly copied directory for ShaderLang.h.
2202         * platform/graphics/OpenGLShims.h: Include GL/glext.h.
2203         * platform/graphics/gpu/LoopBlinnShader.cpp: 
2204         (WebCore::LoopBlinnShader::use): Fixed parameter ordering in call to uniformMatrix4fv.
2205         * platform/graphics/opengl/GLPlatformSurface.cpp:
2206         (WebCore::GLPlatformSurface::createOffScreenSurface): Added notImplemented for non-EGL builds for now.
2207
2208 2013-06-21  Eric Carlson  <eric.carlson@apple.com>
2209
2210         Update platform text track menu
2211         https://bugs.webkit.org/show_bug.cgi?id=117884
2212
2213         Reviewed by Jer Noble.
2214
2215         * html/HTMLMediaElement.cpp:
2216         (WebCore::HTMLMediaElement::setSelectedTextTrack):
2217         * html/track/TextTrack.cpp:
2218         (WebCore::TextTrack::platformTextTrack):
2219         * platform/graphics/PlatformTextTrack.h:
2220         (WebCore::PlatformTextTrack::create): 
2221         (WebCore::PlatformTextTrack::uniqueId):
2222         (WebCore::PlatformTextTrack::captionMenuOffItem):
2223         (WebCore::PlatformTextTrack::captionMenuAutomaticItem):
2224         (WebCore::PlatformTextTrack::PlatformTextTrack):
2225
2226 2013-06-21  James Craig  <james@cookiecrook.com>
2227
2228         AX: audio/video playback control timers (elapsed and remaining) should be exposed as ApplicationTimerRole
2229         https://bugs.webkit.org/show_bug.cgi?id=117883
2230
2231         Reviewed by Chris Fleizach.
2232
2233         Some of the media controls were returning the wrong role. Updated existing test coverage.
2234
2235         * accessibility/AccessibilityMediaControls.h:
2236         (WebCore::AccessibilityMediaTimeDisplay::roleValue):
2237
2238 2013-06-21  Alex Christensen  <achristensen@apple.com>
2239
2240         Added glext.h from http://www.opengl.org/registry/oldspecs/glext.h for Windows
2241         This file does not meet WebKit style guidelines.
2242         Part of https://bugs.webkit.org/show_bug.cgi?id=117853
2243         
2244         Reviewed by Brent Fulgham.
2245
2246         * platform/graphics/win/GL: Added.
2247         * platform/graphics/win/GL/glext.h: Added.
2248
2249 2013-06-21  Ruth Fong  <ruth_fong@apple.com>
2250
2251         Fix TextTrackCue::cueIndex() to handle the null case of TextTrack::cues(() properly
2252         https://bugs.webkit.org/show_bug.cgi?id=117815
2253         <rdar://problem/14211041> 
2254
2255         Reviewed by Ryosuke Niwa.
2256
2257         This patch adds assert statements to try to catch when 
2258         track()->cues() returns a null pointer.
2259
2260         * html/track/TextTrackCue.cpp:
2261         (WebCore::TextTrackCue::cueIndex):
2262
2263 2013-06-21  Jer Noble  <jer.noble@apple.com>
2264
2265         [iOS] Hang drawing captions after pressing the home button while playing a video
2266         https://bugs.webkit.org/show_bug.cgi?id=117882
2267
2268         Reviewed by Eric Carlson.
2269
2270         Instead of rendering in a callback on the main thread, pre-render the captions and pass to the main
2271         thread as a CGImage. As such, rename paintTextTrackRepresentation() to createTextTrackRepresentationImage().
2272
2273         * html/shadow/MediaControlElements.cpp:
2274         (WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage): Renamed from
2275             paintTextTrackRepresentation. Now returns an Image object.
2276         * html/shadow/MediaControlElements.h:
2277         * platform/graphics/MediaPlayer.h:
2278         * platform/graphics/TextTrackRepresentation.h:
2279
2280 2013-06-21  Radu Stavila  <stavila@adobe.com>
2281
2282         [CSS Regions] Move overset compute code from flow thread to named flow thread
2283         https://bugs.webkit.org/show_bug.cgi?id=117835
2284
2285         Reviewed by Andreas Kling.
2286
2287         Moved computeOversetStateForRegions() and overset() methods from RenderFlowThread to RenderNamedFlowThread. 
2288         Added ASSERTS in RenderRegion::regionOversetState and RenderRegion::setRegionOversetState to ensure
2289         the region was created from an element.
2290
2291         * rendering/RenderBlock.cpp:
2292         (WebCore::RenderBlock::computeOverflow):
2293         * rendering/RenderFlowThread.cpp:
2294         (WebCore::RenderFlowThread::RenderFlowThread):
2295         * rendering/RenderFlowThread.h:
2296         * rendering/RenderNamedFlowThread.cpp:
2297         (WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
2298         (WebCore::RenderNamedFlowThread::computeOversetStateForRegions):
2299         * rendering/RenderNamedFlowThread.h:
2300         (WebCore::RenderNamedFlowThread::overset):
2301         * rendering/RenderRegion.cpp:
2302         (WebCore::RenderRegion::regionOversetState):
2303         (WebCore::RenderRegion::setRegionOversetState):
2304
2305 2013-06-21  Commit Queue  <commit-queue@webkit.org>
2306
2307         Unreviewed, rolling out r151838.
2308         http://trac.webkit.org/changeset/151838
2309         https://bugs.webkit.org/show_bug.cgi?id=117880
2310
2311         Breaks MediaPlayerPrivateQt on Mac (Requested by carewolf on
2312         #webkit).
2313
2314         * html/HTMLMediaElement.h:
2315
2316 2013-06-20  Brent Fulgham  <bfulgham@apple.com>
2317
2318         [Windows] AX: Radio buttons with "tab" role should describe themselves as tabs
2319         https://bugs.webkit.org/show_bug.cgi?id=117837
2320
2321         Reviewed by Chris Fleizach.
2322
2323         accessibility/aria-tab-role-on-buttons.html
2324
2325         * accessibility/AccessibilityNodeObject.cpp:
2326         (WebCore::AccessibilityNodeObject::canSetSelectedAttribute): Indicate that certain accessibility
2327         types (such as Tabs) can be selected.
2328         * accessibility/AccessibilityNodeObject.h: Signature for canSelectAttribute override.
2329
2330 2013-06-21  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2331
2332         Remove unused GesturePinch events
2333         https://bugs.webkit.org/show_bug.cgi?id=117875
2334
2335         Reviewed by Andreas Kling.
2336
2337         The gesturePinch events have not been used for some time, even Chromium
2338         had stop using them before moving out of webkit.
2339
2340         * dom/GestureEvent.cpp:
2341         (WebCore::GestureEvent::create):
2342         * page/EventHandler.cpp:
2343         (WebCore::EventHandler::handleGestureEvent):
2344         * platform/PlatformEvent.h:
2345
2346 2013-06-21  Radu Stavila  <stavila@adobe.com>
2347
2348         Improve the reattaching process while applying the :hover style
2349         https://bugs.webkit.org/show_bug.cgi?id=117590
2350
2351         Reviewed by Andreas Kling.
2352
2353         Changes made:
2354             - context is properly propagated to the element's children and to Shadow DOM elements.
2355             - context is properly set on the lazyReattach method.
2356             - another hit-testing is triggered when needed.
2357             - when a hovered element is detached, it's ancestors are also removed from the hovered state.
2358
2359         Tests: fast/css/hover-display-block-inline.html
2360                fast/css/hover-display-block-none.html
2361
2362         * dom/ContainerNode.cpp:
2363         (WebCore::ContainerNode::attach):
2364         (WebCore::ContainerNode::detach):
2365         * dom/ContainerNode.h:
2366         (WebCore::ContainerNode::attachChildren):
2367         (WebCore::ContainerNode::detachChildrenIfNeeded):
2368         (WebCore::ContainerNode::detachChildren):
2369         * dom/Document.cpp:
2370         (WebCore::Document::recalcStyle):
2371         (WebCore::Document::updateHoverActiveState):
2372         * dom/Element.cpp:
2373         (WebCore::Element::attach):
2374         (WebCore::Element::detach):
2375         * dom/ElementShadow.cpp:
2376         (WebCore::ElementShadow::attach):
2377         (WebCore::ElementShadow::detach):
2378         * dom/ElementShadow.h:
2379         * dom/Node.h:
2380         (WebCore::Node::lazyReattach):
2381
2382 2013-06-21  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2383
2384         HTMLMediaElement should inherit from MediaPlayerClient privately
2385         https://bugs.webkit.org/show_bug.cgi?id=117874
2386
2387         Reviewed by Andreas Kling.
2388
2389         Fixing FIXME: HTMLMediaElement was stuck with public inheritance from
2390         MediaPlayerClient due to the Chromium port.
2391         This can now be fixed to a private inheritance.
2392
2393         * html/HTMLMediaElement.h:
2394
2395 2013-06-21  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2396
2397         Remove Chromium-only TouchDisambiguation
2398         https://bugs.webkit.org/show_bug.cgi?id=117873
2399
2400         Reviewed by Andreas Kling.
2401
2402         * page/TouchDisambiguation.cpp: Removed.
2403         * page/TouchDisambiguation.h: Removed.
2404
2405 2013-06-21  Zalan Bujtas  <zalan@apple.com>
2406
2407         Rollout r150602: Restoring text-overflow vs. floating rendering behaviour.
2408         https://bugs.webkit.org/show_bug.cgi?id=117871
2409
2410         Unreviewed. Rolling out r150602.
2411         Undesirable rendering behaviour.
2412
2413         * rendering/RenderBlockLineLayout.cpp:
2414         (WebCore::RenderBlock::checkLinesForTextOverflow):
2415
2416 2013-06-21  Radu Stavila  <stavila@adobe.com>
2417
2418         Web Inspector: Integrate new regionOversetChange event into inspector
2419         https://bugs.webkit.org/show_bug.cgi?id=117833
2420
2421         Added the new regionOversetChange event to the WebInspector.
2422
2423         Reviewed by Joseph Pecoraro.
2424
2425         Tests:  inspector/styles/protocol-css-regions-commands.html:
2426
2427         * inspector/Inspector.json:
2428         * inspector/InspectorCSSAgent.cpp:
2429         (WebCore::ChangeRegionOversetTask::ChangeRegionOversetTask):
2430         (WebCore::ChangeRegionOversetTask::scheduleFor):
2431         (WebCore::ChangeRegionOversetTask::unschedule):
2432         (WebCore::ChangeRegionOversetTask::reset):
2433         (WebCore::ChangeRegionOversetTask::onTimer):
2434         (WebCore::InspectorCSSAgent::resetNonPersistentData):
2435         (WebCore::InspectorCSSAgent::willRemoveNamedFlow):
2436         (WebCore::InspectorCSSAgent::didChangeRegionOverset):
2437         (WebCore::InspectorCSSAgent::regionOversetChanged):
2438         * inspector/InspectorCSSAgent.h:
2439         * inspector/InspectorInstrumentation.cpp:
2440         (WebCore::InspectorInstrumentation::didChangeRegionOversetImpl):
2441         * inspector/InspectorInstrumentation.h:
2442         (WebCore::InspectorInstrumentation::didChangeRegionOverset):
2443         * inspector/front-end/CSSNamedFlowCollectionsView.js:
2444         (WebInspector.CSSNamedFlowCollectionsView.prototype._regionOversetChanged):
2445         (WebInspector.CSSNamedFlowCollectionsView.prototype.wasShown):
2446         (WebInspector.CSSNamedFlowCollectionsView.prototype.willHide):
2447         * inspector/front-end/CSSStyleModel.js:
2448         (WebInspector.CSSStyleModel.prototype._regionOversetChanged):
2449         (WebInspector.CSSDispatcher.prototype.regionLayoutUpdated):
2450         (WebInspector.CSSDispatcher.prototype.regionOversetChanged):
2451         * rendering/RenderNamedFlowThread.cpp:
2452         (WebCore::RenderNamedFlowThread::dispatchRegionOversetChangeEvent):
2453
2454 2013-06-21  Sergio Correia  <sergio.correia@openbossa.org>
2455
2456         [EFL] NetworkStateNotifierEfl: Use closeWithRetry instead of looping for EINTR on close
2457         https://bugs.webkit.org/show_bug.cgi?id=117872
2458
2459         Reviewed by Christophe Dumez.
2460
2461         closeWithRetry works around the Linux behavior of closing the file descriptor
2462         unconditionally even if the close() call is interrupted.
2463
2464         No new tests, no behavior change.
2465
2466         * platform/network/efl/NetworkStateNotifierEfl.cpp:
2467         (WebCore::NetworkStateNotifier::~NetworkStateNotifier): Use closeWithRetry instead of
2468         looping for EINTR on close.
2469
2470 2013-06-21  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2471
2472         REGRESSION (r150663): Using webkitAudioContext in Inspector makes it undefined everywhere
2473         https://bugs.webkit.org/show_bug.cgi?id=117825
2474
2475         Reviewed by Kentaro Hara.
2476
2477         Partially revert r150663 so that we use Settings to enable WebAudio instead of
2478         RuntimeEnabledFeatures.
2479
2480         Introduce a new [EnabledBySetting] IDL extended attribute which behaves similarly to
2481         the existing [EnabledAtRuntime] but relies on Settings instead of RuntimeEnabledFeatures
2482         to determine if the feature should be enabled. Make use of this new IDL attribute for
2483         webkitAudioContext interface.
2484
2485         No new tests, no behavior change.
2486
2487         * Modules/webaudio/AudioContext.idl:
2488         * WebCore.exp.in:
2489         * WebCore.order:
2490         * bindings/generic/RuntimeEnabledFeatures.cpp:
2491         * bindings/generic/RuntimeEnabledFeatures.h:
2492         * bindings/scripts/CodeGeneratorJS.pm:
2493         (GenerateImplementation):
2494         * bindings/scripts/IDLAttributes.txt:
2495         * bindings/scripts/preprocess-idls.pl:
2496         (GenerateConstructorAttribute):
2497         * bindings/scripts/test/JS/JSTestObj.cpp:
2498         (WebCore::jsTestObjTestSubObjEnabledBySettingConstructor):
2499         (WebCore::setJSTestObjTestSubObjEnabledBySettingConstructor):
2500         * bindings/scripts/test/JS/JSTestObj.h:
2501         * bindings/scripts/test/ObjC/DOMTestObj.h:
2502         * bindings/scripts/test/ObjC/DOMTestObj.mm:
2503         (-[DOMTestObj TestSubObjEnabledBySetting]):
2504         (-[DOMTestObj setTestSubObjEnabledBySetting:]):
2505         * bindings/scripts/test/TestObj.idl:
2506         * page/Settings.in:
2507
2508 2013-06-21  Krzysztof Czech  <k.czech@samsung.com>
2509
2510         [ATK] Added support for aria-required attribute.
2511         https://bugs.webkit.org/show_bug.cgi?id=117730
2512
2513         Reviewed by Chris Fleizach.
2514
2515         Tests: accessibility/aria-required.html
2516                accessibility/html5-required-attribute.html
2517
2518         The aria-required attribute is used to indicate that user input is required on an
2519         element before a form can be submitted.
2520
2521         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2522         (setAtkStateSetFromCoreObject):
2523
2524 2013-06-21  Chris Fleizach  <cfleizach@apple.com>
2525
2526         IndieUI: Add basic IndieUI infrastructure
2527         https://bugs.webkit.org/show_bug.cgi?id=117367
2528
2529         Unreviewed. Revert erroneous file that was included accidentally.
2530
2531         * accessibility/AccessibilityNodeObject.h:
2532
2533 2013-06-21  Chris Fleizach  <cfleizach@apple.com>
2534
2535         IndieUI: Add basic IndieUI infrastructure
2536         https://bugs.webkit.org/show_bug.cgi?id=117367
2537
2538         Reviewed by Ryosuke Niwa.
2539
2540         IndieUI is a new W3C spec that aims to abstract the connection between input and action, so that
2541         a user (possibly using assistive technologies like a screen reader) does not need a specific kind
2542         of device (like a mouse) to interact with an object.
2543         http://www.w3.org/WAI/IndieUI/
2544
2545         This initial patch adds in the basic support for UIRequestEvent and the uiactions attribute.
2546         It modifies the config files to enable and build this feature.
2547
2548         Tests: indieui/create-uirequestevent.html
2549                indieui/uiactions.html
2550
2551         * CMakeLists.txt:
2552         * Configurations/FeatureDefines.xcconfig:
2553         * DerivedSources.make:
2554         * GNUmakefile.am:
2555         * Modules/indieui: Added.
2556         * Modules/indieui/UIRequestEvent.cpp: Added.
2557         (WebCore::UIRequestEventInit::UIRequestEventInit):
2558         (WebCore::UIRequestEvent::create):
2559         (WebCore::UIRequestEvent::UIRequestEvent):
2560         (WebCore::UIRequestEvent::~UIRequestEvent):
2561         (WebCore::UIRequestEvent::interfaceName):
2562         (WebCore::UIRequestEventDispatchMediator::UIRequestEventDispatchMediator):
2563         (WebCore::UIRequestEventDispatchMediator::event):
2564         (WebCore::UIRequestEventDispatchMediator::dispatchEvent):
2565         * Modules/indieui/UIRequestEvent.h: Added.
2566         (WebCore::UIRequestEvent::receiver):
2567         (WebCore::UIRequestEventDispatchMediator::create):
2568         * Modules/indieui/UIRequestEvent.idl: Added.
2569         * WebCore.xcodeproj/project.pbxproj:
2570         * accessibility/AccessibilityNodeObject.h:
2571         * dom/Element.cpp:
2572         (WebCore::Element::setUIActions):
2573         (WebCore::Element::UIActions):
2574         * dom/Element.h:
2575         * dom/Element.idl:
2576         * dom/Event.cpp:
2577         (WebCore::EventInit::EventInit):
2578         * dom/Event.h:
2579         * dom/EventNames.in:
2580         * dom/Node.cpp:
2581         (WebCore::Node::dispatchUIRequestEvent):
2582         * dom/Node.h:
2583         * dom/UIEvent.cpp:
2584         (WebCore::UIEventInit::UIEventInit):
2585         * dom/UIEvent.h:
2586         * html/HTMLAttributeNames.in:
2587
2588 2013-06-20  Ryosuke Niwa  <rniwa@webkit.org>
2589
2590         REGRESSION(r145788): mouse drag on canvas shouldn't start selection
2591         https://bugs.webkit.org/show_bug.cgi?id=117860
2592
2593         Reviewed by Benjamin Poulain.
2594
2595         Like HTMLImageElement, HTMLCanvasElement shouldn't start selection.
2596
2597         Also uninline some virtual function overrides.
2598
2599         Test: fast/events/mosuedrag-on-canvas-should-not-start-selection.html
2600
2601         * html/HTMLCanvasElement.cpp:
2602         (WebCore::HTMLCanvasElement::areAuthorShadowsAllowed):
2603         (WebCore::HTMLCanvasElement::canContainRangeEndPoint):
2604         (WebCore::HTMLCanvasElement::canStartSelection):
2605         * html/HTMLCanvasElement.h:
2606
2607 2013-06-20  Ryosuke Niwa  <rniwa@webkit.org>
2608
2609         REGRESSION(r149652): accessing items in .children via id doesn't work when element is not rooted in DOM tree
2610         https://bugs.webkit.org/show_bug.cgi?id=117836
2611
2612         Reviewed by Benjamin Poulain.
2613
2614         When the root node of a HTML collection is not in the document or in a shadow tree,
2615         we shouldn't use its tree scope's id and name maps to find name getters.
2616
2617         Always use the slow path in such cases.
2618
2619         Test: fast/dom/htmlallcollection-detached-node-children.html
2620
2621         * html/HTMLCollection.cpp:
2622         (WebCore::HTMLCollection::namedItem):
2623
2624 2013-06-20  Alexey Proskuryakov  <ap@apple.com>
2625
2626         https://bugs.webkit.org/show_bug.cgi?id=116495
2627         Fix null-pointer deref in DocumentLoader::responseReceived()
2628
2629         Patch by Nate Chapin, reviewed by Mike West and myself.
2630
2631         Test: http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event.html
2632
2633         * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::responseReceived): Added
2634         a null check.
2635
2636 2013-06-20  Roger Fong  <roger_fong@apple.com>
2637
2638         Unreviewed. Roll out part of r150618.
2639
2640         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
2641
2642 2013-06-20  Enrica Casucci  <enrica@apple.com>
2643
2644         Initial advance on the first glyph of the run is not correctly set for rtl text.
2645         https://bugs.webkit.org/show_bug.cgi?id=117839
2646         <rdar://problem/13860717>
2647
2648         Reviewed by Sam Weinig.
2649
2650         We need to set the initial advance to the glyphBuffer, using the
2651         initial advance of the complex run that will be drawn first.
2652         In order to choose the run correctly we must consider the text direction.
2653
2654         Test: fast/text/complex-first-glyph-with-initial-advance.html
2655
2656         * platform/graphics/mac/ComplexTextController.cpp:
2657         (WebCore::ComplexTextController::advance):
2658
2659 2013-06-20  Alex Christensen  <achristensen@apple.com>
2660
2661         Fixed WebGL compile errors on Windows.
2662         https://bugs.webkit.org/show_bug.cgi?id=117805
2663
2664         Reviewed by Brent Fulgham.
2665
2666         * html/canvas/WebGLRenderingContext.cpp: Included CString.h.
2667         Added PLATFORM(WIN) to existing lists of platform macros.
2668         * platform/graphics/ANGLEWebKitBridge.h:
2669         * platform/graphics/GraphicsContext3D.h:
2670         (WebCore::GraphicsContext3D::ShaderSourceEntry::symbolMap):
2671         * platform/graphics/OpenGLESShims.h:
2672
2673 2013-06-20  Simon Fraser  <simon.fraser@apple.com>
2674
2675         FrameView needs to initialize paintsEntireContents on creation
2676         https://bugs.webkit.org/show_bug.cgi?id=117844
2677
2678         Reviewed by Anders Carlsson.
2679
2680         In WebKit1, if the WebView is layer-backed, WebHTMLView gets a layer.
2681         In this mode, FrameView::paintsEntireContents() is true. However,
2682         we would only call setPaintsEntireContents(true) on the FrameView
2683         when the view's layer-backed status changes. FrameView also needs
2684         to fetch this state when it is initialized, because we may be creating
2685         a new FrameView for an already layer-backed WebHTMLView.
2686
2687         * page/ChromeClient.h:
2688         (WebCore::ChromeClient::shouldPaintEntireContents):
2689         * page/FrameView.cpp:
2690         (WebCore::FrameView::init):
2691
2692 2013-06-20  Simon Fraser  <simon.fraser@apple.com>
2693
2694         Sticky elements are missing or misplaced sometimes when reloading a page that scrolls to a named anchor
2695         https://bugs.webkit.org/show_bug.cgi?id=117819
2696
2697         Reviewed by Anders Carlsson.
2698         
2699         At the end of FrameView::performPostLayoutTasks() we call scrollToAnchor() which attempts
2700         to restore the scroll position to a named anchor, even when the document has been
2701         changed by layout. This ends up in a call to ScrollView::scrollTo(), which in turn
2702         calls repaintFixedElementsAfterScrolling(). However, repaintFixedElementsAfterScrolling()
2703         would bail if m_nestedLayoutCount != 0, so we never updated layer positions which
2704         depend on scroll position (but which would not be updated by layout, since their
2705         renderers are not marked for layout when scrolling happens).
2706         
2707         We've solved this problem once before in updateFixedElementsAfterScrolling() which
2708         checks for m_nestedLayoutCount <= 1, so that we do work on the outermost nested layout.
2709         Apply that same fix to repaintFixedElementsAfterScrolling().
2710
2711         Very timing-dependent, so hard to make a test.
2712
2713         * page/FrameView.cpp:
2714         (WebCore::FrameView::repaintFixedElementsAfterScrolling):
2715
2716 2013-06-20  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2717
2718         HashSet: reverse the order of the template arguments at alternate 'find', 'contains' and 'add' methods
2719         https://bugs.webkit.org/show_bug.cgi?id=117830
2720
2721         Reviewed by Anders Carlsson.
2722
2723         The order of the template arguments at HashSet alternate 'find', 'contains' and
2724         'add' methods is reversed so that callers can just pass the translator
2725         and let the compiler deduce input argument type.
2726
2727         No new tests. No new functionality.
2728
2729         * dom/QualifiedName.cpp:
2730         (WebCore::QualifiedName::QualifiedName):
2731         * platform/graphics/cg/SubimageCacheWithTimer.cpp:
2732         (WebCore::SubimageCacheWithTimer::getSubimage):
2733         * svg/SVGAElement.cpp:
2734         (WebCore::SVGAElement::isSupportedAttribute):
2735         * svg/SVGAnimateMotionElement.cpp:
2736         (WebCore::SVGAnimateMotionElement::isSupportedAttribute):
2737         * svg/SVGAnimateTransformElement.cpp:
2738         (WebCore::SVGAnimateTransformElement::isSupportedAttribute):
2739         * svg/SVGAnimationElement.cpp:
2740         (WebCore::SVGAnimationElement::isSupportedAttribute):
2741         * svg/SVGCircleElement.cpp:
2742         (WebCore::SVGCircleElement::isSupportedAttribute):
2743         * svg/SVGClipPathElement.cpp:
2744         (WebCore::SVGClipPathElement::isSupportedAttribute):
2745         * svg/SVGComponentTransferFunctionElement.cpp:
2746         (WebCore::SVGComponentTransferFunctionElement::isSupportedAttribute):
2747         * svg/SVGCursorElement.cpp:
2748         (WebCore::SVGCursorElement::isSupportedAttribute):
2749         * svg/SVGEllipseElement.cpp:
2750         (WebCore::SVGEllipseElement::isSupportedAttribute):
2751         * svg/SVGFEBlendElement.cpp:
2752         (WebCore::SVGFEBlendElement::isSupportedAttribute):
2753         * svg/SVGFEColorMatrixElement.cpp:
2754         (WebCore::SVGFEColorMatrixElement::isSupportedAttribute):
2755         * svg/SVGFEComponentTransferElement.cpp:
2756         (WebCore::SVGFEComponentTransferElement::isSupportedAttribute):
2757         * svg/SVGFECompositeElement.cpp:
2758         (WebCore::SVGFECompositeElement::isSupportedAttribute):
2759         * svg/SVGFEConvolveMatrixElement.cpp:
2760         (WebCore::SVGFEConvolveMatrixElement::isSupportedAttribute):
2761         * svg/SVGFEDiffuseLightingElement.cpp:
2762         (WebCore::SVGFEDiffuseLightingElement::isSupportedAttribute):
2763         * svg/SVGFEDisplacementMapElement.cpp:
2764         (WebCore::SVGFEDisplacementMapElement::isSupportedAttribute):
2765         * svg/SVGFEDropShadowElement.cpp:
2766         (WebCore::SVGFEDropShadowElement::isSupportedAttribute):
2767         * svg/SVGFEGaussianBlurElement.cpp:
2768         (WebCore::SVGFEGaussianBlurElement::isSupportedAttribute):
2769         * svg/SVGFEImageElement.cpp:
2770         (WebCore::SVGFEImageElement::isSupportedAttribute):
2771         * svg/SVGFELightElement.cpp:
2772         (WebCore::SVGFELightElement::isSupportedAttribute):
2773         * svg/SVGFEMergeNodeElement.cpp:
2774         (WebCore::SVGFEMergeNodeElement::isSupportedAttribute):
2775         * svg/SVGFEMorphologyElement.cpp:
2776         (WebCore::SVGFEMorphologyElement::isSupportedAttribute):
2777         * svg/SVGFEOffsetElement.cpp:
2778         (WebCore::SVGFEOffsetElement::isSupportedAttribute):
2779         * svg/SVGFESpecularLightingElement.cpp:
2780         (WebCore::SVGFESpecularLightingElement::isSupportedAttribute):
2781         * svg/SVGFETileElement.cpp:
2782         (WebCore::SVGFETileElement::isSupportedAttribute):
2783         * svg/SVGFETurbulenceElement.cpp:
2784         (WebCore::SVGFETurbulenceElement::isSupportedAttribute):
2785         * svg/SVGFilterElement.cpp:
2786         (WebCore::SVGFilterElement::isSupportedAttribute):
2787         (WebCore::SVGFilterElement::childShouldCreateRenderer):
2788         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
2789         (WebCore::SVGFilterPrimitiveStandardAttributes::isSupportedAttribute):
2790         * svg/SVGForeignObjectElement.cpp:
2791         (WebCore::SVGForeignObjectElement::isSupportedAttribute):
2792         * svg/SVGGElement.cpp:
2793         (WebCore::SVGGElement::isSupportedAttribute):
2794         * svg/SVGGradientElement.cpp:
2795         (WebCore::SVGGradientElement::isSupportedAttribute):
2796         * svg/SVGImageElement.cpp:
2797         (WebCore::SVGImageElement::isSupportedAttribute):
2798         * svg/SVGLineElement.cpp:
2799         (WebCore::SVGLineElement::isSupportedAttribute):
2800         * svg/SVGLinearGradientElement.cpp:
2801         (WebCore::SVGLinearGradientElement::isSupportedAttribute):
2802         * svg/SVGMPathElement.cpp:
2803         (WebCore::SVGMPathElement::isSupportedAttribute):
2804         * svg/SVGMarkerElement.cpp:
2805         (WebCore::SVGMarkerElement::isSupportedAttribute):
2806         * svg/SVGMaskElement.cpp:
2807         (WebCore::SVGMaskElement::isSupportedAttribute):
2808         * svg/SVGPathElement.cpp:
2809         (WebCore::SVGPathElement::isSupportedAttribute):
2810         * svg/SVGPatternElement.cpp:
2811         (WebCore::SVGPatternElement::isSupportedAttribute):
2812         * svg/SVGPolyElement.cpp:
2813         (WebCore::SVGPolyElement::isSupportedAttribute):
2814         * svg/SVGRadialGradientElement.cpp:
2815         (WebCore::SVGRadialGradientElement::isSupportedAttribute):
2816         * svg/SVGRectElement.cpp:
2817         (WebCore::SVGRectElement::isSupportedAttribute):
2818         * svg/SVGScriptElement.cpp:
2819         (WebCore::SVGScriptElement::isSupportedAttribute):
2820         * svg/SVGStopElement.cpp:
2821         (WebCore::SVGStopElement::isSupportedAttribute):
2822         * svg/SVGStyleElement.cpp:
2823         (WebCore::SVGStyleElement::isSupportedAttribute):
2824         * svg/SVGStyledTransformableElement.cpp:
2825         (WebCore::SVGStyledTransformableElement::isSupportedAttribute):
2826         * svg/SVGSymbolElement.cpp:
2827         (WebCore::SVGSymbolElement::isSupportedAttribute):
2828         * svg/SVGTRefElement.cpp:
2829         (WebCore::SVGTRefElement::isSupportedAttribute):
2830         * svg/SVGTextContentElement.cpp:
2831         (WebCore::SVGTextContentElement::isSupportedAttribute):
2832         * svg/SVGTextElement.cpp:
2833         (WebCore::SVGTextElement::isSupportedAttribute):
2834         * svg/SVGTextPathElement.cpp:
2835         (WebCore::SVGTextPathElement::isSupportedAttribute):
2836         * svg/SVGTextPositioningElement.cpp:
2837         (WebCore::SVGTextPositioningElement::isSupportedAttribute):
2838         * svg/SVGUseElement.cpp:
2839         (WebCore::SVGUseElement::isSupportedAttribute):
2840         (WebCore::isDisallowedElement):
2841         * svg/SVGViewElement.cpp:
2842         (WebCore::SVGViewElement::isSupportedAttribute):
2843         * svg/animation/SVGSMILElement.cpp:
2844         (WebCore::SVGSMILElement::isSupportedAttribute):
2845
2846 2013-06-20  Commit Queue  <commit-queue@webkit.org>
2847
2848         Unreviewed, rolling out r151451.
2849         http://trac.webkit.org/changeset/151451
2850         https://bugs.webkit.org/show_bug.cgi?id=117848
2851
2852         "Broke quite a lot of sites" (Requested by rhogan on #webkit).
2853
2854         * rendering/RenderBox.cpp:
2855         (WebCore::RenderBox::computePositionedLogicalWidth):
2856         (WebCore::RenderBox::computePositionedLogicalHeight):
2857         * rendering/RenderBox.h:
2858         (WebCore::RenderBox::intrinsicSize):
2859         * rendering/RenderButton.h:
2860         * rendering/RenderListBox.cpp:
2861         (WebCore::RenderListBox::RenderListBox):
2862         (WebCore::RenderListBox::computeLogicalHeight):
2863         * rendering/RenderListBox.h:
2864         * rendering/RenderMenuList.h:
2865         * rendering/RenderReplaced.h:
2866         * rendering/RenderTextControl.cpp:
2867         (WebCore::RenderTextControl::RenderTextControl):
2868         (WebCore::RenderTextControl::computeLogicalHeight):
2869         * rendering/RenderTextControl.h:
2870
2871 2013-06-20  Commit Queue  <commit-queue@webkit.org>
2872
2873         Unreviewed, rolling out r151788.
2874         http://trac.webkit.org/changeset/151788
2875         https://bugs.webkit.org/show_bug.cgi?id=117847
2876
2877         "This is the wrong fix" (Requested by rhogan on #webkit).
2878
2879         * rendering/RenderTextControl.cpp:
2880         (WebCore::RenderTextControl::computeLogicalHeight):
2881         (WebCore::RenderTextControl::computePreferredLogicalWidths):
2882
2883 2013-05-24  Balazs Kelemen  <kbalazs@webkit.org>
2884
2885         [Gstreamer] cleanup buffering and state updates
2886         https://bugs.webkit.org/show_bug.cgi?id=116642
2887
2888         Reviewed by Philippe Normand.
2889
2890         Covered by existing media tests, especially the ones that have been unskipped.
2891
2892         Always do download buffering. It should not differ if preload is "none" because
2893         it's about when to start buffering, not about how. Fix a bunch other subtle issues
2894         to make this change go smoothly with the tests. As a bonus some tests that were
2895         failing so far started to pass.
2896         It is possible to further tweak the buffering in a way that will enable us to support
2897         a different and appropriate behavior for preload="metadata" but it should be managed
2898         a bit differently. I will implement it in a follow-up.
2899
2900         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2901         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
2902         (WebCore::MediaPlayerPrivateGStreamer::load): Don't call setDownloadBuffering
2903         yet. Now it also responsible for starting the fill timer and it turned out that
2904         setting the download flag before the pipeline is set to a state has negative
2905         effect on some tests. Most probably GStreamer starts buffering too early if
2906         we set the download flag.
2907         (WebCore::MediaPlayerPrivateGStreamer::commitLoad): Call setDownloadBuffering now.
2908         (WebCore::MediaPlayerPrivateGStreamer::play): Ditto, plus set m_delayingLoad to false
2909         because otherwise setPreload will wrongly assume that the load has not been committed
2910         yet if prepareToPlay is not called before play.
2911         (WebCore::MediaPlayerPrivateGStreamer::pause): Make sure we don't commit a load here
2912         if it was not committed yet by looking in the pipeline state.
2913         (WebCore::MediaPlayerPrivateGStreamer::processBufferingStats): No need to observe the
2914         type of buffering.
2915         (WebCore::MediaPlayerPrivateGStreamer::fillTimerFired): Introduced m_downloadFinished to update
2916         ready and network states in updateStates based on it. The previously used condition
2917         - (maxTimeLoaded() == duration()) - was not correct in the case when duration is not known.
2918         (WebCore::MediaPlayerPrivateGStreamer::maxTimeLoaded): Removed a lie. If the fill timer is not active
2919         it does not necesarily means that download has been finished. This lie was actually ensuring
2920         a lot of tests to pass because it made the condition (maxTimeLoaded() == duration()) true.
2921         Now that state updates has been cleaned up we don't need to lie.
2922         (WebCore::MediaPlayerPrivateGStreamer::updateStates): Merge all the parts that takes part in updating
2923         ready and network states. It was untrackable. Unset download buffering for for live streams early so
2924         we don't need to restart them.
2925         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
2926         (MediaPlayerPrivateGStreamer): Removed m_startedBuffering because there is no need for it now.
2927
2928 2013-06-20  Eric Carlson  <eric.carlson@apple.com>
2929
2930         ASSERT removing then adding a <track> element
2931         https://bugs.webkit.org/show_bug.cgi?id=117814
2932
2933         Reviewed by Jer Noble.
2934
2935         Test: media/track/add-and-remove-track.html
2936
2937         * html/HTMLTrackElement.cpp:
2938         (WebCore::HTMLTrackElement::insertedInto): Always call ensureTrack before adding the track
2939             to the parent <video> element.
2940         (WebCore::HTMLTrackElement::ensureTrack): Call m_track->setTrackElement() in case the
2941             parent was cleared after m_track was created.
2942
2943         * html/track/LoadableTextTrack.cpp:
2944         (WebCore::LoadableTextTrack::setTrackElement): New, set m_trackElement.
2945         * html/track/LoadableTextTrack.h:
2946
2947 2013-06-20  Roger Fong  <roger_fong@apple.com>
2948
2949         Unreviewed. Build fix for Apple Windows port.
2950
2951         * rendering/RenderThemeWin.cpp:
2952         (WebCore::cssValueIdToSysColorIndex):
2953
2954 2013-06-20  Alexey Proskuryakov  <ap@apple.com>
2955
2956         [Mac] Downloaded file name encoding is incorrect when download link opens in a new window
2957         https://bugs.webkit.org/show_bug.cgi?id=117818
2958         <rdar://problem/14212635>
2959
2960         Reviewed by Brady Eidson.
2961
2962         No tests added. The machinery we have for logging downloaded file name is very
2963         far from being able to work in a secondary window.
2964
2965         * loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest):
2966         Made a targeted fix - don't update encoding fallback array if we already have one,
2967         there is no chance for it to be more correct. In this case, it's incorrect because
2968         it comes from a new blank window, instead of original referer.
2969         We have a lot of code in addExtraFieldsToRequest() to struggle with this, and we have
2970         a FIXME to try not calling it from policy delegate.
2971
2972 2013-06-18  Robert Hogan  <robert@webkit.org>
2973
2974         REGRESSION (r151451): Text not vertically centered correctly on icloud.com
2975         https://bugs.webkit.org/show_bug.cgi?id=117744
2976
2977         Reviewed by David Hyatt.
2978
2979         The positioned height and width computation adds in the element's border and padding so 
2980         don't add it to the intrinsic height and preferred widths of text controls that are
2981         absolutely positioned.
2982
2983         Test: fast/replaced/height-of-positioned-text-control.html
2984
2985         * rendering/RenderTextControl.cpp:
2986         (WebCore::RenderTextControl::computeLogicalHeight):
2987         (WebCore::RenderTextControl::computePreferredLogicalWidths):
2988
2989 2013-06-20  Roger Fong  <roger_fong@apple.com>
2990
2991         Make Windows makefile copy build output to a different folder.
2992         <rdar://problem/14219184>.
2993
2994         * WebCore.vcxproj/WebCore.make:
2995
2996 2013-06-19  Jer Noble  <jer.noble@apple.com>
2997
2998         Roll-on in-band captions are displayed bottom-to-top rather than top-to-bottom.
2999         https://bugs.webkit.org/show_bug.cgi?id=117811
3000
3001         Reviewed by Eric Carlson.
3002
3003         When comparing Generic cues, we should check that their type is Generic, not WebVTT.
3004
3005         * html/track/TextTrackCueGeneric.cpp:
3006         (WebCore::TextTrackCueGeneric::isOrderedBefore):
3007
3008 2013-06-20  Ralph Thomas  <ralpht@gmail.com>
3009
3010         [CMake][CSS Shaders] Add WebCore files for CSS Shaders to CMakeLists.txt
3011         https://bugs.webkit.org/show_bug.cgi?id=117711
3012
3013         Reviewed by Laszlo Gombos.
3014
3015         No new tests, no CMake platforms currently enable this functionality.
3016
3017         * CMakeLists.txt:
3018
3019 2013-06-20  Alexis Menard  <alexis@webkit.org>
3020
3021         Cleanup usage of CSSPropertyID and CSSValueID inside WebKit.
3022         https://bugs.webkit.org/show_bug.cgi?id=117829
3023
3024         Reviewed by Andreas Kling.
3025
3026         A lot of call sites were using integers to represent them. While it's
3027         not incorrect per se, it's not ideal for various reason such as type
3028         safety or to remove ambiguity.
3029
3030         This patch eradicate the wrong usage by not letting any integer based
3031         API for getting CSSValueIDs or CSSPropertyIDs from CSSPrimitiveValues.
3032
3033         Instead we use new but typed functions to construct the values as well
3034         as getting them. Two customs and internal types were added to CSSPrimitiveValue
3035         to handle correctly the new APIs.
3036
3037         It's good to note that in order to preserve compatibility on the
3038         CSSPrimitiveValue type whenever CSSPrimitiveValue handles a CSSValueID
3039         or a CSSPropertyID the return type for the public API will be CSS_IDENT
3040         despite it is a separate internal type.
3041
3042         No new tests: refactor, existing tests should cover.
3043
3044         * css/CSSComputedStyleDeclaration.cpp:
3045         (WebCore::ComputedStyleExtractor::propertyMatches):
3046         * css/CSSFontSelector.cpp:
3047         (WebCore::CSSFontSelector::addFontFaceRule):
3048         * css/CSSGradientValue.cpp:
3049         (WebCore::positionFromValue):
3050         (WebCore::CSSLinearGradientValue::customCssText):
3051         (WebCore::CSSLinearGradientValue::createGradient):
3052         (WebCore::CSSRadialGradientValue::customCssText):
3053         (WebCore::CSSRadialGradientValue::createGradient):
3054         * css/CSSParser.cpp:
3055         (WebCore::CSSParser::parseSystemColor):
3056         (WebCore::isFillPositionKeyword):
3057         (WebCore::CSSParser::parse4ValuesFillPosition):
3058         (WebCore::CSSParser::parse3ValuesFillPosition):
3059         (WebCore::CSSParser::parseFillPosition):
3060         (WebCore::CSSParser::parseFillRepeat):
3061         (WebCore::CSSParser::parseRadialGradient):
3062         (WebCore::CSSParser::isBlendMode):
3063         (WebCore::CSSParser::isCompositeOperator):
3064         * css/CSSParser.h:
3065         * css/CSSParserValues.cpp:
3066         (WebCore::CSSParserValue::createCSSValue):
3067         * css/CSSPrimitiveValue.cpp:
3068         (WebCore::isValidCSSUnitTypeForDoubleConversion):
3069         (WebCore::CSSPrimitiveValue::primitiveType):
3070         (WebCore::propertyName):
3071         (WebCore::valueName):
3072         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3073         (WebCore::CSSPrimitiveValue::cleanup):
3074         (WebCore::CSSPrimitiveValue::getStringValue):
3075         (WebCore::CSSPrimitiveValue::customCssText):
3076         (WebCore::CSSPrimitiveValue::cloneForCSSOM):
3077         (WebCore::CSSPrimitiveValue::equals):
3078         * css/CSSPrimitiveValue.h:
3079         (WebCore::CSSPrimitiveValue::isFontRelativeLength):
3080         (WebCore::CSSPrimitiveValue::isValueID):
3081         (WebCore::CSSPrimitiveValue::createIdentifier):
3082         (WebCore::CSSPrimitiveValue::createParserOperator):
3083         (WebCore::CSSPrimitiveValue::getPropertyID):
3084         (WebCore::CSSPrimitiveValue::getValueID):
3085         * css/CSSPrimitiveValueMappings.h:
3086         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3087         (WebCore::CSSPrimitiveValue::operator CSSReflectionDirection):
3088         (WebCore::CSSPrimitiveValue::operator ColumnSpan):
3089         (WebCore::CSSPrimitiveValue::operator PrintColorAdjust):
3090         (WebCore::CSSPrimitiveValue::operator EBorderStyle):
3091         (WebCore::CSSPrimitiveValue::operator OutlineIsAuto):
3092         (WebCore::CSSPrimitiveValue::operator CompositeOperator):
3093         (WebCore::CSSPrimitiveValue::operator ControlPart):
3094         (WebCore::CSSPrimitiveValue::operator EBackfaceVisibility):
3095         (WebCore::CSSPrimitiveValue::operator EFillAttachment):
3096         (WebCore::CSSPrimitiveValue::operator EFillBox):
3097         (WebCore::CSSPrimitiveValue::operator EFillRepeat):
3098         (WebCore::CSSPrimitiveValue::operator EBoxPack):
3099         (WebCore::CSSPrimitiveValue::operator EBoxAlignment):
3100         (WebCore::CSSPrimitiveValue::operator EBoxDecorationBreak):
3101         (WebCore::CSSPrimitiveValue::operator BackgroundEdgeOrigin):
3102         (WebCore::CSSPrimitiveValue::operator EBoxSizing):
3103         (WebCore::CSSPrimitiveValue::operator EBoxDirection):
3104         (WebCore::CSSPrimitiveValue::operator EBoxLines):
3105         (WebCore::CSSPrimitiveValue::operator EBoxOrient):
3106         (WebCore::CSSPrimitiveValue::operator ECaptionSide):
3107         (WebCore::CSSPrimitiveValue::operator EClear):
3108         (WebCore::CSSPrimitiveValue::operator ECursor):
3109         (WebCore::CSSPrimitiveValue::operator CursorVisibility):
3110         (WebCore::CSSPrimitiveValue::operator EDisplay):
3111         (WebCore::CSSPrimitiveValue::operator EEmptyCell):
3112         (WebCore::CSSPrimitiveValue::operator EAlignItems):
3113         (WebCore::CSSPrimitiveValue::operator EJustifyContent):
3114         (WebCore::CSSPrimitiveValue::operator EFlexDirection):
3115         (WebCore::CSSPrimitiveValue::operator EAlignContent):
3116         (WebCore::CSSPrimitiveValue::operator EFlexWrap):
3117         (WebCore::CSSPrimitiveValue::operator EFloat):
3118         (WebCore::CSSPrimitiveValue::operator LineBreak):
3119         (WebCore::CSSPrimitiveValue::operator EListStylePosition):
3120         (WebCore::CSSPrimitiveValue::operator EListStyleType):
3121         (WebCore::CSSPrimitiveValue::operator EMarginCollapse):
3122         (WebCore::CSSPrimitiveValue::operator EMarqueeBehavior):
3123         (WebCore::CSSPrimitiveValue::operator RegionFragment):
3124         (WebCore::CSSPrimitiveValue::operator EMarqueeDirection):
3125         (WebCore::CSSPrimitiveValue::operator ENBSPMode):
3126         (WebCore::CSSPrimitiveValue::operator EOverflow):
3127         (WebCore::CSSPrimitiveValue::operator EPageBreak):
3128         (WebCore::CSSPrimitiveValue::operator EPosition):
3129         (WebCore::CSSPrimitiveValue::operator EResize):
3130         (WebCore::CSSPrimitiveValue::operator ETableLayout):
3131         (WebCore::CSSPrimitiveValue::operator ETextAlign):
3132         (WebCore::CSSPrimitiveValue::operator TextAlignLast):
3133         (WebCore::CSSPrimitiveValue::operator TextJustify):
3134         (WebCore::CSSPrimitiveValue::operator TextDecoration):
3135         (WebCore::CSSPrimitiveValue::operator TextDecorationStyle):
3136         (WebCore::CSSPrimitiveValue::operator TextUnderlinePosition):
3137         (WebCore::CSSPrimitiveValue::operator ETextSecurity):
3138         (WebCore::CSSPrimitiveValue::operator ETextTransform):
3139         (WebCore::CSSPrimitiveValue::operator EUnicodeBidi):
3140         (WebCore::CSSPrimitiveValue::operator EUserDrag):
3141         (WebCore::CSSPrimitiveValue::operator EUserModify):
3142         (WebCore::CSSPrimitiveValue::operator EUserSelect):
3143         (WebCore::CSSPrimitiveValue::operator EVerticalAlign):
3144         (WebCore::CSSPrimitiveValue::operator EVisibility):
3145         (WebCore::CSSPrimitiveValue::operator EWhiteSpace):
3146         (WebCore::CSSPrimitiveValue::operator EWordBreak):
3147         (WebCore::CSSPrimitiveValue::operator EOverflowWrap):
3148         (WebCore::CSSPrimitiveValue::operator TextDirection):
3149         (WebCore::CSSPrimitiveValue::operator WritingMode):
3150         (WebCore::CSSPrimitiveValue::operator TextCombine):
3151         (WebCore::CSSPrimitiveValue::operator RubyPosition):
3152         (WebCore::CSSPrimitiveValue::operator TextEmphasisPosition):
3153         (WebCore::CSSPrimitiveValue::operator TextOverflow):
3154         (WebCore::CSSPrimitiveValue::operator TextEmphasisFill):
3155         (WebCore::CSSPrimitiveValue::operator TextEmphasisMark):
3156         (WebCore::CSSPrimitiveValue::operator TextOrientation):
3157         (WebCore::CSSPrimitiveValue::operator EPointerEvents):
3158         (WebCore::CSSPrimitiveValue::operator FontDescription::Kerning):
3159         (WebCore::CSSPrimitiveValue::operator FontSmoothingMode):
3160         (WebCore::CSSPrimitiveValue::operator FontWeight):
3161         (WebCore::CSSPrimitiveValue::operator FontItalic):
3162         (WebCore::CSSPrimitiveValue::operator FontSmallCaps):
3163         (WebCore::CSSPrimitiveValue::operator TextRenderingMode):
3164         (WebCore::CSSPrimitiveValue::operator ColorSpace):
3165         (WebCore::CSSPrimitiveValue::operator Hyphens):
3166         (WebCore::CSSPrimitiveValue::operator LineSnap):
3167         (WebCore::CSSPrimitiveValue::operator LineAlign):
3168         (WebCore::CSSPrimitiveValue::operator Order):
3169         (WebCore::CSSPrimitiveValue::operator ESpeak):
3170         (WebCore::CSSPrimitiveValue::operator BlendMode):
3171         (WebCore::CSSPrimitiveValue::operator LineCap):
3172         (WebCore::CSSPrimitiveValue::operator LineJoin):
3173         (WebCore::CSSPrimitiveValue::operator WindRule):
3174         (WebCore::CSSPrimitiveValue::operator EAlignmentBaseline):
3175         (WebCore::CSSPrimitiveValue::operator EBorderCollapse):
3176         (WebCore::CSSPrimitiveValue::operator EBorderFit):
3177         (WebCore::CSSPrimitiveValue::operator EImageRendering):
3178         (WebCore::CSSPrimitiveValue::operator ETransformStyle3D):
3179         (WebCore::CSSPrimitiveValue::operator ColumnAxis):
3180         (WebCore::CSSPrimitiveValue::operator ColumnProgression):
3181         (WebCore::CSSPrimitiveValue::operator WrapFlow):
3182         (WebCore::CSSPrimitiveValue::operator WrapThrough):
3183         (WebCore::CSSPrimitiveValue::operator GridAutoFlow):
3184         (WebCore::CSSPrimitiveValue::convertToLength):
3185         (WebCore::CSSPrimitiveValue::operator EBufferedRendering):
3186         (WebCore::CSSPrimitiveValue::operator EColorInterpolation):
3187         (WebCore::CSSPrimitiveValue::operator EColorRendering):
3188         (WebCore::CSSPrimitiveValue::operator EDominantBaseline):
3189         (WebCore::CSSPrimitiveValue::operator EShapeRendering):
3190         (WebCore::CSSPrimitiveValue::operator ETextAnchor):
3191         (WebCore::CSSPrimitiveValue::operator SVGWritingMode):
3192         (WebCore::CSSPrimitiveValue::operator EVectorEffect):
3193         (WebCore::CSSPrimitiveValue::operator EMaskType):
3194         * css/CSSToStyleMap.cpp:
3195         (WebCore::CSSToStyleMap::mapFillAttachment):
3196         (WebCore::CSSToStyleMap::mapFillSize):
3197         (WebCore::CSSToStyleMap::mapAnimationDirection):
3198         (WebCore::CSSToStyleMap::mapAnimationFillMode):
3199         (WebCore::CSSToStyleMap::mapAnimationIterationCount):
3200         (WebCore::CSSToStyleMap::mapAnimationName):
3201         (WebCore::CSSToStyleMap::mapAnimationPlayState):
3202         (WebCore::CSSToStyleMap::mapAnimationProperty):
3203         (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
3204         (WebCore::CSSToStyleMap::mapNinePieceImageQuad):
3205         (WebCore::CSSToStyleMap::mapNinePieceImageRepeat):
3206         * css/Counter.h:
3207         (WebCore::Counter::listStyleIdent):
3208         * css/DeprecatedStyleBuilder.cpp:
3209         (WebCore::ApplyPropertyNumber::applyValue):
3210         (WebCore::ApplyPropertyAuto::applyValue):
3211         (WebCore::ApplyPropertyClip::applyValue):
3212         (WebCore::ApplyPropertyColor::applyValue):
3213         (WebCore::ApplyPropertyLength::applyValue):
3214         (WebCore::ApplyPropertyString::applyValue):
3215         (WebCore::ApplyPropertyComputeLength::applyValue):
3216         (WebCore::ApplyPropertyFontFamily::applyValue):
3217         (WebCore::ApplyPropertyFontSize::applyValue):
3218         (WebCore::ApplyPropertyFontWeight::applyValue):
3219         (WebCore::ApplyPropertyFontVariantLigatures::applyValue):
3220         (WebCore::ApplyPropertyCounter::applyValue):
3221         (WebCore::ApplyPropertyCursor::applyValue):
3222         (WebCore::ApplyPropertyTextAlign::applyValue):
3223         (WebCore::ApplyPropertyMarqueeIncrement::applyValue):
3224         (WebCore::ApplyPropertyMarqueeRepetition::applyValue):
3225         (WebCore::ApplyPropertyMarqueeSpeed::applyValue):
3226         (WebCore::ApplyPropertyLineHeight::applyValue):
3227         (WebCore::ApplyPropertyPageSize::getPageSizeFromName):
3228         (WebCore::ApplyPropertyPageSize::applyValue):
3229         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
3230         (WebCore::ApplyPropertyResize::applyValue):
3231         (WebCore::ApplyPropertyVerticalAlign::applyValue):
3232         (WebCore::ApplyPropertyZoom::applyValue):
3233         (WebCore::ApplyPropertyClipPath::applyValue):
3234         (WebCore::ApplyPropertyShape::applyValue):
3235         (WebCore::ApplyPropertyImageResolution::applyValue):
3236         (WebCore::ApplyPropertyTextIndent::applyValue):
3237         * css/MediaQueryEvaluator.cpp:
3238         (WebCore::orientationMediaFeatureEval):
3239         (WebCore::view_modeMediaFeatureEval):
3240         (WebCore::pointerMediaFeatureEval):
3241         * css/SVGCSSParser.cpp:
3242         (WebCore::CSSParser::parseSVGValue):
3243         * css/SVGCSSStyleSelector.cpp:
3244         (WebCore::StyleResolver::applySVGProperty):
3245         * css/StylePropertySet.cpp:
3246         (WebCore::StylePropertySet::getLayeredShorthandValue):
3247         * css/StyleResolver.cpp:
3248         (WebCore::createGridTrackBreadth):
3249         (WebCore::createGridTrackList):
3250         (WebCore::createGridPosition):
3251         (WebCore::StyleResolver::applyProperty):
3252         (WebCore::colorForCSSValue):
3253         (WebCore::StyleResolver::colorFromPrimitiveValueIsDerivedFromElement):
3254         (WebCore::StyleResolver::colorFromPrimitiveValue):
3255         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
3256         (WebCore::StyleResolver::createFilterOperations):
3257         * css/ViewportStyleResolver.cpp:
3258         (WebCore::ViewportStyleResolver::getViewportArgumentValue):
3259         * css/WebKitCSSMatrix.cpp:
3260         (WebCore::WebKitCSSMatrix::setMatrixValue):
3261         * editing/ApplyStyleCommand.cpp:
3262         (WebCore::toIdentifier):
3263         * editing/EditingStyle.cpp:
3264         (WebCore::identifierForStyleProperty):
3265         (WebCore::HTMLElementEquivalent::create):
3266         (WebCore::HTMLElementEquivalent::HTMLElementEquivalent):
3267         (WebCore::HTMLElementEquivalent::valueIsPresentInStyle):
3268         (WebCore::HTMLTextDecorationEquivalent::create):
3269         (WebCore::HTMLTextDecorationEquivalent::HTMLTextDecorationEquivalent):
3270         (WebCore::EditingStyle::textDirection):
3271         (WebCore::EditingStyle::prepareToApplyAt):
3272         (WebCore::EditingStyle::textDirectionForSelection):
3273         (WebCore::fontWeightIsBold):
3274         (WebCore::legacyFontSizeFromCSSValue):
3275         (WebCore::isTransparentColorValue):
3276         * editing/EditingStyle.h:
3277         * editing/markup.cpp:
3278         (WebCore::propertyMissingOrEqualToNone):
3279         * platform/blackberry/RenderThemeBlackBerry.cpp:
3280         (WebCore::RenderThemeBlackBerry::systemFont):
3281         * platform/blackberry/RenderThemeBlackBerry.h:
3282         (WebCore::RenderThemeBlackBerry::systemFont):
3283         * platform/blackberry/RenderThemeEfl.cpp:
3284         (WebCore::RenderThemeEfl::systemFont):
3285         * platform/blackberry/RenderThemeEfl.h:
3286         (WebCore::RenderThemeEfl::systemFont):
3287         * platform/gtk/RenderThemeGtk.cpp:
3288         (WebCore::RenderThemeGtk::systemFont):
3289         * platform/gtk/RenderThemeGtk.h:
3290         * platform/gtk/RenderThemeGtk2.cpp:
3291         (WebCore::RenderThemeGtk::systemColor):
3292         * platform/gtk/RenderThemeGtk3.cpp:
3293         (WebCore::RenderThemeGtk::systemColor):
3294         * platform/qt/RenderThemeQt.cpp:
3295         (WebCore::RenderThemeQt::systemFont):
3296         (WebCore::RenderThemeQt::systemColor):
3297         * platform/qt/RenderThemeQt.h:
3298         * rendering/RenderTheme.cpp:
3299         (WebCore::RenderTheme::systemColor):
3300         * rendering/RenderTheme.h:
3301         * rendering/RenderThemeMac.h:
3302         * rendering/RenderThemeMac.mm:
3303         (WebCore::RenderThemeMac::systemFont):
3304         (WebCore::RenderThemeMac::systemColor):
3305         * rendering/RenderThemeSafari.h:
3306         (WebCore::RenderThemeSafari::systemFont):
3307         * rendering/RenderThemeSafari.cpp:
3308         (WebCore::RenderThemeSafari::systemFont):
3309         * rendering/RenderThemeWin.cpp:
3310         (WebCore::RenderThemeWin::systemFont):
3311         (WebCore::cssValueIdToSysColorIndex):
3312         (WebCore::RenderThemeWin::systemColor):
3313         * rendering/RenderThemeWin.h:
3314         * rendering/RenderThemeWinCE.cpp:
3315         (WebCore::RenderThemeWinCE::systemFont):
3316         (WebCore::cssValueIdToSysColorIndex):
3317         (WebCore::RenderThemeWinCE::systemColor):
3318         * rendering/RenderThemeWinCE.h:
3319
3320 2013-06-19  Brent Fulgham  <bfulgham@apple.com>
3321
3322         AX: List Items should support a default action
3323         https://bugs.webkit.org/show_bug.cgi?id=117812
3324
3325         Reviewed by Chris Fleizach.
3326
3327         * accessibility/AccessibilityObject.cpp:
3328         (WebCore::AccessibilityObject::actionVerb): Provide a "select" verb
3329         for use in ListItemRole objects.
3330         * platform/LocalizedStrings.cpp:
3331         (WebCore::AXListItemActionVerb): Added.
3332         * platform/LocalizedStrings.h:
3333         * platform/blackberry/LocalizedStringsBlackBerry.cpp:
3334         (WebCore::AXListItemActionVerb):
3335         * platform/efl/LocalizedStringsEfl.cpp:
3336         (WebCore::AXListItemActionVerb):
3337         * platform/gtk/LocalizedStringsGtk.cpp:
3338         (WebCore::AXListItemActionVerb):
3339
3340 2013-06-20  Radu Stavila  <stavila@adobe.com>
3341
3342         [CSS Regions] Add new regionOversetChange event
3343         https://bugs.webkit.org/show_bug.cgi?id=117508
3344
3345         Added regionOversetChange event and tests for it. The overset value of the region has been moved to the ElementRareData
3346         object instead of the RenderRegion object. This was needed for the case when a reattach is performed (for instance by changing
3347         the display type of the region's containing block) and the RenderRegion object is destroyed. When computing the overset again,
3348         there would be no "previous" value to compare it to and decide whether the regionOversetChange event must be dispatched.
3349
3350         Reviewed by Antti Koivisto.
3351
3352         Tests:  fast/regions/webkit-named-flow-event-add-to-flow.html:
3353                 fast/regions/webkit-named-flow-event-auto-height.html:
3354                 fast/regions/webkit-named-flow-event-crash.html:
3355                 fast/regions/webkit-named-flow-event-no-regions.html:
3356                 fast/regions/webkit-named-flow-event-region-in-flexbox-no-overset-change.html: Added.
3357                 fast/regions/webkit-named-flow-event-region-in-flexbox-overset-change.html: Added.
3358                 fast/regions/webkit-named-flow-event-remove-from-dom.html:
3359                 fast/regions/webkit-named-flow-event-remove-from-flow.html:
3360                 fast/regions/webkit-named-flow-event-target.html:
3361                 fast/regions/webkit-named-flow-event-to-null.html:
3362                 fast/regions/webkit-named-flow-event.html:
3363
3364
3365         * GNUmakefile.list.am:
3366         * Target.pri:
3367         * WebCore.xcodeproj/project.pbxproj:
3368         * dom/Element.cpp:
3369         (WebCore::Element::setRegionOversetState):
3370         (WebCore::Element::regionOversetState):
3371         (WebCore::Element::webkitRegionOverset):
3372         * dom/Element.h:
3373         * dom/ElementRareData.cpp:
3374         * dom/ElementRareData.h:
3375         (WebCore::ElementRareData::regionOversetState):
3376         (WebCore::ElementRareData::setRegionOversetState):
3377         (WebCore::ElementRareData::ElementRareData):
3378         * dom/EventNames.h:
3379         * dom/WebKitNamedFlow.cpp:
3380         (WebCore::WebKitNamedFlow::firstEmptyRegionIndex):
3381         (WebCore::WebKitNamedFlow::dispatchRegionOversetChangeEvent):
3382         * dom/WebKitNamedFlow.h:
3383         (WebCore::ChangeRegionOversetTask::ChangeRegionOversetTask):
3384         (WebCore::ChangeRegionOversetTask::scheduleFor):
3385         (WebCore::ChangeRegionOversetTask::unschedule):
3386         (WebCore::ChangeRegionOversetTask::reset):
3387         (WebCore::ChangeRegionOversetTask::onTimer):
3388         * rendering/RegionOversetState.h: Added.
3389         * rendering/RenderBlock.cpp:
3390         (WebCore::RenderBlock::computeOverflow):
3391         * rendering/RenderFlowThread.cpp:
3392         (WebCore::RenderFlowThread::RenderFlowThread):
3393         (WebCore::RenderFlowThread::layout):
3394         (WebCore::RenderFlowThread::computeOversetStateForRegions):
3395         * rendering/RenderFlowThread.h:
3396         * rendering/RenderNamedFlowThread.cpp:
3397         (WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
3398         (WebCore::RenderNamedFlowThread::dispatchRegionOversetChangeEvent):
3399         (WebCore::RenderNamedFlowThread::regionOversetChangeEventTimerFired):
3400         * rendering/RenderNamedFlowThread.h:
3401         * rendering/RenderRegion.cpp:
3402         (WebCore::RenderRegion::RenderRegion):
3403         (WebCore::RenderRegion::regionOversetState):
3404         (WebCore::RenderRegion::setRegionOversetState):
3405         * rendering/RenderRegion.h:
3406
3407 2013-06-20  James Craig  <james@cookiecrook.com>
3408
3409         AX: aria-required is not exposed on all expected roles
3410         https://bugs.webkit.org/show_bug.cgi?id=115123
3411
3412         Reviewed by Chris Fleizach.
3413
3414         aria-required is now exposed on more roles. Updated existing test file.
3415
3416         * accessibility/AccessibilityNodeObject.cpp:
3417         (WebCore::AccessibilityNodeObject::supportsRequiredAttribute):
3418         * accessibility/AccessibilityNodeObject.h:
3419         * accessibility/AccessibilityObject.h:
3420         (WebCore::AccessibilityObject::supportsRequiredAttribute):
3421         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
3422         (-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
3423
3424 2013-06-20  Seokju Kwon  <seokju.kwon@gmail.com>
3425
3426         Web Inspector: Use console.timeStamp instead of console.markTimeline
3427         https://bugs.webkit.org/show_bug.cgi?id=117810
3428
3429         Reviewed by Joseph Pecoraro.
3430
3431         Webkit supports both console.timeStamp and console.markTimeline.
3432         And they do the exact same thing.
3433         This patch gets rid of console.markTimeline for Chrome/Firebug compatibility.
3434
3435         No new functionality, no new tests.
3436
3437         * WebCore.order:
3438         * page/Console.cpp:
3439         * page/Console.h:
3440         * page/Console.idl:
3441
3442 2013-06-20  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
3443
3444         background-color and text-decoration are not preserved when merging paragraphs
3445         https://bugs.webkit.org/show_bug.cgi?id=116215
3446
3447         Reviewed by Ryosuke Niwa.
3448
3449         In mergeInlineAndImplicitStyleOfElement(), style from matched rules are retrieved.
3450         If they contain either background-color or text-decoration they will be removed
3451         by removeNonEditingProperties() due to copyEditingProperties() implicit
3452         'OnlyInheritableEditingProperties' parameter.
3453         We have already had similar issue at https://bugs.webkit.org/show_bug.cgi?id=53196
3454