d910e9c6edf6e535477d8c05c36506b862e17fd9
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
2
3         [WebCrypto] Add SHA-1
4         https://bugs.webkit.org/show_bug.cgi?id=123582
5
6         Reviewed by Anders Carlsson.
7
8         Tests: security/crypto-subtle-arguments.html
9                security/crypto-subtle-sha1.html
10
11         * WebCore.xcodeproj/project.pbxproj: Added new files.
12
13         * bindings/js/JSSubtleCryptoCustom.cpp:
14         (WebCore::createAlgorithmFromJSValue):
15         (WebCore::sequenceOfCryptoOperationDataFromJSValue):
16         (WebCore::JSSubtleCrypto::digest):
17         * crypto/SubtleCrypto.idl:
18         Added bindings for crypto.digest.
19
20         * crypto/algorithms: Added.
21         * crypto/algorithms/CryptoAlgorithmSHA1.cpp: Added.
22         * crypto/algorithms/CryptoAlgorithmSHA1.h: Added.
23         * crypto/mac/CryptoAlgorithmRegistryMac.cpp:
24         (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register SHA-1.
25
26         * crypto/mac/CryptoAlgorithmSHA1Mac.cpp: Added.
27         (WebCore::CryptoAlgorithmSHA1::digest): Performs the work synchronously, because
28         otherwise we'd have to copy the data first, which is crazy for something as simple
29         as hashing. We can change to a dispatch queue later if we find that it's actually
30         better to copy and do the work asynchronously.
31
32 2013-10-31  Sudarsana Nagineni  <sudarsana.nagineni@intel.com>
33
34         REGRESSION(r158348): Breaks Debug build
35         https://bugs.webkit.org/show_bug.cgi?id=123562
36
37         Reviewed by Brady Eidson.
38
39         Remove an unnecessary check that cause compilation failure.
40
41         No new tests since this just fixes the build failure.
42
43         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
44         (WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseVersion):
45
46 2013-10-31  Csaba Osztrogonác  <ossy@webkit.org>
47
48         One more speculative buildfix after r158365.
49
50         * Modules/mediastream/UserMediaRequest.cpp:
51         (WebCore::UserMediaRequest::callSuccessHandler):
52
53 2013-10-31  Csaba Osztrogonác  <ossy@webkit.org>
54
55         One more speculative buildfix after r158365.
56
57         * Modules/mediastream/RTCPeerConnection.cpp:
58         (WebCore::RTCPeerConnection::didAddRemoteStream):
59
60 2013-10-31  Csaba Osztrogonác  <ossy@webkit.org>
61
62         Speculative buildfix after r158365.
63
64         * Modules/mediastream/VideoStreamTrack.cpp:
65         (WebCore::VideoStreamTrack::create):
66         (WebCore::VideoStreamTrack::VideoStreamTrack):
67         * Modules/mediastream/VideoStreamTrack.h:
68
69 2013-10-31  Myles C. Maxfield  <mmaxfield@apple.com>
70
71         Decorated text sometimes does not draw its decorations
72         https://bugs.webkit.org/show_bug.cgi?id=123539
73
74         Reviewed by Antti Koivisto.
75
76         Decorated text should opt-out of the simple line layout, because
77         SimpleLineLayout::paintFlow doesn't draw decorations
78
79         Fixes fast/css3-text/css3-text-decoration/text-decoration-color.html
80
81         * rendering/SimpleLineLayout.cpp:
82         (WebCore::SimpleLineLayout::canUseFor):
83
84 2013-10-31  Joseph Pecoraro  <pecoraro@apple.com>
85
86         Web Inspector: Remove last member variable uses of InspectorState from Agents
87         https://bugs.webkit.org/show_bug.cgi?id=123540
88
89         Reviewed by Timothy Hatcher.
90
91         * inspector/InspectorDOMDebuggerAgent.h:
92         * inspector/InspectorDOMDebuggerAgent.cpp:
93         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
94         (WebCore::InspectorDOMDebuggerAgent::setBreakpoint):
95         (WebCore::InspectorDOMDebuggerAgent::removeBreakpoint):
96         (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
97         (WebCore::InspectorDOMDebuggerAgent::setXHRBreakpoint):
98         (WebCore::InspectorDOMDebuggerAgent::removeXHRBreakpoint):
99         (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
100         DOMDebuggerAgentState::eventListenerBreakpoints -> m_eventListenerBreakpoints.
101         DOMDebuggerAgentState::xhrBreakpoints -> m_xhrBreakpoints.
102
103         * inspector/InspectorDebuggerAgent.h:
104         * inspector/InspectorDebuggerAgent.cpp:
105         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
106         (WebCore::InspectorDebuggerAgent::disable):
107         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
108         (WebCore::InspectorDebuggerAgent::removeBreakpoint):
109         (WebCore::InspectorDebuggerAgent::didParseSource):
110         DebuggerAgentState::javaScriptBreakpoints -> m_javaScriptBreakpoints.
111
112         * inspector/InspectorPageAgent.h:
113         * inspector/InspectorPageAgent.cpp:
114         (WebCore::InspectorPageAgent::disable):
115         (WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
116         (WebCore::InspectorPageAgent::removeScriptToEvaluateOnLoad):
117         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
118         PageAgentState::pageAgentScriptsToEvaluateOnLoad -> m_scriptsToEvaluateOnLoad.
119         This is a lazily created InspectorObject member variable.
120
121         * inspector/InspectorResourceAgent.h:
122         * inspector/InspectorResourceAgent.cpp:
123         (WebCore::InspectorResourceAgent::willSendRequest):
124         (WebCore::InspectorResourceAgent::disable):
125         (WebCore::InspectorResourceAgent::setExtraHTTPHeaders):
126         ResourceAgentState::extraRequestHeaders -> m_extraRequestHeaders.
127         This is a lazily created InspectorObject member variable.
128
129 2013-10-31  Philippe Normand  <pnormand@igalia.com>
130
131         Unreviewed, one more build fix after r158365.
132
133         * Modules/webaudio/MediaStreamAudioDestinationNode.cpp:
134         (WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode):
135
136 2013-10-31  Beth Dakin  <bdakin@apple.com>
137
138         Repro scrolling crash with scrollbars that use setPresentationValue on the 
139         scrolling thread
140         https://bugs.webkit.org/show_bug.cgi?id=123549
141         -and corresponding-
142         <rdar://problem/15246606>
143
144         Reviewed by Darin Adler.
145
146         Speculative fix. I think if we retain the ScrollbarPainters, we should avoid this 
147         crash.
148
149         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
150
151 2013-10-31  Philippe Normand  <pnormand@igalia.com>
152
153         Unreviewed, MediaStream build fix after r158365.
154
155         * Modules/mediastream/MediaStream.cpp:
156         (WebCore::MediaStream::clone):
157
158 2013-10-31  Sam Weinig  <sam@webkit.org>
159
160         Pass an Element by reference to the PseudoElement constructor
161         https://bugs.webkit.org/show_bug.cgi?id=123576
162
163         Reviewed by Andreas Kling.
164
165         * dom/Element.cpp:
166         (WebCore::Element::createPseudoElementIfNeeded):
167         * dom/PseudoElement.cpp:
168         (WebCore::PseudoElement::PseudoElement):
169         * dom/PseudoElement.h:
170
171 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
172
173         Fix a mis-merge.
174
175         * WebCore.xcodeproj/project.pbxproj: Remove duplicate CryptoAlgorithmRegistryMac.cpp.
176
177 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
178
179         Add bindings code for crypto algorithm dictionaries
180         https://bugs.webkit.org/show_bug.cgi?id=123476
181
182         Reviewed by Sam Weinig.
183
184         JSCryptoAlgorithmDictionary reads the Algorithm, much like JSDictionary does in
185         simpler cases. We should see about bringing them closer together (perhaps replacing
186         with autogenerated code).
187
188         * crypto/parameters: Added.
189         * crypto/parameters/CryptoAlgorithmHmacKeyParams.h: Added.
190         * crypto/parameters/CryptoAlgorithmHmacParams.h: Added.
191         Added a couple specific dictionaries as an example.
192
193         * WebCore.xcodeproj/project.pbxproj: Added JSCryptoAlgorithmDictionary.
194         * bindings/js/JSCryptoAlgorithmDictionary.cpp: Added.
195         (WebCore::JSCryptoAlgorithmDictionary::getAlgorithmIdentifier):
196         (WebCore::getHashAlgorithm):
197         (WebCore::createHmacParams):
198         (WebCore::createHmacKeyParams):
199         (WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
200         (WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
201         (WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
202         (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
203         * bindings/js/JSCryptoAlgorithmDictionary.h: Added.
204
205 2013-10-31  Sam Weinig  <sam@webkit.org>
206
207         Pass ScriptExecutionContext by reference to from the bindings constructors
208         https://bugs.webkit.org/show_bug.cgi?id=123575
209
210         Reviewed by Andreas Kling.
211
212         Since we null check the ScriptExecutionContext before creating the c++ class,
213         we should be passing by reference.
214
215 2013-10-31  Zhuang Zhigang  <zhuangzg@cn.fujitsu.com>
216
217         Paint the input tag of range type on WinCE port.
218         https://bugs.webkit.org/show_bug.cgi?id=123199
219
220         Reviewed by Brent Fulgham.        
221
222         * rendering/RenderThemeWinCE.cpp:
223         (WebCore::RenderThemeWinCE::paintSliderTrack):
224         (WebCore::RenderThemeWinCE::paintSliderThumb):
225
226 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
227
228         Add a crypto algorithm abstraction
229         https://bugs.webkit.org/show_bug.cgi?id=123474
230
231         Reviewed by Sam Weinig.
232
233         This works slightly differently than WebCrypto implies. We have separate classes
234         for algorithm and its parameters, while WebCrypto puts them in the same dictionary.
235
236         * WebCore.xcodeproj/project.pbxproj: Added new files.
237
238         * crypto/CryptoAlgorithm.cpp: Added. As most algorithms don't implement most
239         operations, default implementations just raise an exception.
240         * crypto/CryptoAlgorithm.h: Added.
241
242         * crypto/CryptoAlgorithmParameters.h: Added. Base class for numerous future parameter
243         dictionaries, such as HmacParams or HmacKeyParams.
244
245         * crypto/CryptoAlgorithmRegistry.cpp: Added.
246         * crypto/CryptoAlgorithmRegistry.h: Added.
247         The registry decouples universal bindings code from algorithms that may or may not
248         be implemented on each platform.
249
250         * crypto/mac: Added.
251         * crypto/mac/CryptoAlgorithmRegistryMac.cpp: Added.
252         (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Algorithms implemented
253         on Mac will be registered by this function.
254
255 2013-10-31  Alexey Proskuryakov  <ap@apple.com>
256
257         REGRESSION(r158333): http/tests/xmlhttprequest/response-encoding.html and xmlhttprequest-overridemimetype-content-type-header.html are failing
258         https://bugs.webkit.org/show_bug.cgi?id=123548
259
260         Reviewed by Brady Eidson.
261
262         We had code that made sure that cached 200 responses weren't used for conditional
263         requests. But it didn't work the other way - cached 304 responses got reused for
264         subsequent unconditional requests!
265
266         Adding the test uncovered this bug.
267
268         * loader/cache/CachedRawResource.cpp: (WebCore::shouldIgnoreHeaderForCacheReuse):
269         Should never ignore conditional headers. Code in determineRevalidationPolicy
270         was already undoing this for conditional requests, but we also shouldn't use
271         WebCore cache if it holds a 304 response to conditional request.
272
273         * loader/cache/CachedResourceLoader.cpp: (WebCore::CachedResourceLoader::determineRevalidationPolicy):
274         Even though the changed code is only for raw resources, I think that we can never
275         get a conditional request here any more.
276
277 2013-10-30  Alexey Proskuryakov  <ap@apple.com>
278
279         CryptoAlgorithmDescriptionBuilder should support producing nested algorithms
280         https://bugs.webkit.org/show_bug.cgi?id=123461
281
282         Reviewed by Darin Adler.
283
284         To add a nested algorithm, clone a builder with createEmptyClone(), fill it,
285         and add it using add().
286
287         * bindings/js/JSCryptoAlgorithmBuilder.h:
288         * crypto/CryptoAlgorithmDescriptionBuilder.h:
289         * bindings/js/JSCryptoAlgorithmBuilder.cpp:
290         (WebCore::JSCryptoAlgorithmBuilder::createEmptyClone):
291         (WebCore::JSCryptoAlgorithmBuilder::add): Keep VM in a local variable for marginally
292         better performance.
293
294 2013-10-31  Philippe Normand  <pnormand@igalia.com>
295
296         [WK2][GTK] enable-media-stream Setting
297         https://bugs.webkit.org/show_bug.cgi?id=123145
298
299         Reviewed by Anders Carlsson.
300
301         * page/Settings.in: new mediaStreamEnabled setting.
302
303 2013-10-31  Zan Dobersek  <zdobersek@igalia.com>
304
305         Manage SVGPathByteStream through std::unique_ptr
306         https://bugs.webkit.org/show_bug.cgi?id=123467
307
308         Reviewed by Anders Carlsson.
309
310         Manage SVGPathByteStream objects through std::unique_ptr. Constructors for the class are made public
311         so std::make_unique can be used with the class.
312
313         * svg/SVGAnimatedPath.cpp:
314         (WebCore::SVGAnimatedPathAnimator::constructFromString):
315         (WebCore::SVGAnimatedPathAnimator::startAnimValAnimation):
316         (WebCore::SVGAnimatedPathAnimator::calculateAnimatedValue):
317         * svg/SVGAnimatedType.cpp:
318         (WebCore::SVGAnimatedType::createPath):
319         * svg/SVGAnimatedType.h:
320         * svg/SVGPathByteStream.h:
321         (WebCore::SVGPathByteStream::SVGPathByteStream): Takes a const Data object that's then copied.
322         (WebCore::SVGPathByteStream::copy): Made const.
323         * svg/SVGPathByteStreamBuilder.cpp: Remove an unnecessary include.
324         * svg/SVGPathByteStreamBuilder.h: Ditto.
325         * svg/SVGPathElement.cpp:
326         (WebCore::SVGPathElement::SVGPathElement):
327         * svg/SVGPathElement.h:
328         * svg/SVGPathUtilities.cpp:
329         (WebCore::appendSVGPathByteStreamFromSVGPathSeg):
330         (WebCore::addToSVGPathByteStream):
331
332 2013-10-31  Marcin Bychawski  <m.bychawski@samsung.com>
333
334         Removing m_maxDeadCapacity condition in fast path in MemoryCache::prune().
335         https://bugs.webkit.org/show_bug.cgi?id=115631
336
337         Reviewed by Brent Fulgham.
338
339         If the m_maxDeadSize and m_deadSize are both 0, the method unnecessairly tries to prune resources.
340
341         No new tests, covered by existing ones.
342
343         * loader/cache/MemoryCache.cpp:
344         (WebCore::MemoryCache::prune):
345
346 2013-10-31  Joseph Pecoraro  <pecoraro@apple.com>
347
348         Web Inspector: Remove stale optional native memory instrumentation protocol params
349         https://bugs.webkit.org/show_bug.cgi?id=123552
350
351         Reviewed by Timothy Hatcher.
352
353         * inspector/Inspector.json:
354         * inspector/InspectorTimelineAgent.cpp:
355         (WebCore::InspectorTimelineAgent::start):
356         * inspector/InspectorTimelineAgent.h:
357
358 2013-10-31  Zan Dobersek  <zdobersek@igalia.com>
359
360         [GTK] Undefined references to RenderObject::style() when disabling video support
361         https://bugs.webkit.org/show_bug.cgi?id=123492
362
363         Reviewed by Carlos Garcia Campos.
364
365         * platform/gtk/RenderThemeGtk2.cpp: Disabling video support removes indirect inclusion of the RenderElement.h
366         header, causing undefined references to RenderObject::style(). The RenderElement.h header should be included
367         instead of RenderObject.h as the former defines the RenderObject::style() inline and also includes the latter.
368         * platform/gtk/RenderThemeGtk3.cpp: Ditto.
369
370 2013-10-31  Robert Plociennik  <r.plociennik@samsung.com>
371
372         [EFL] accessibility/textbox-role-reports-selection.html is failing
373         https://bugs.webkit.org/show_bug.cgi?id=112017
374
375         Reviewed by Mario Sanchez Prada.
376
377         getSelectionOffsetsForObject() now returns proper start/end offsets for
378         selections "touching" the object's front border.
379
380         No new tests, covered by existing ones.
381
382         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
383         (getSelectionOffsetsForObject):
384
385 2013-10-31  Ryuan Choi  <ryuan.choi@samsung.com>
386
387         [EFL][GLES] OpenGL should be optional
388         https://bugs.webkit.org/show_bug.cgi?id=123399
389
390         Reviewed by Noam Rosenthal.
391
392         * CMakeLists.txt: Make OpenGL dependencies as optional.
393         * PlatformEfl.cmake:
394         Move OpenGL macro to OptionsEfl.cmake and make Xcomposite and XRender as optional.
395         * platform/graphics/OpenGLESShims.h:
396         Removed GL_COLOR_ATTACHMENT0_EXT because it was added to gl2ext.h since r153064
397         * platform/graphics/surfaces/GraphicsSurfaceToken.h:
398         Removed wrong GLX guard.
399         (WebCore::GraphicsSurfaceToken::GraphicsSurfaceToken):
400         (WebCore::GraphicsSurfaceToken::operator!=):
401         (WebCore::GraphicsSurfaceToken::isValid):
402         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
403         Removed unnecessary OpenGLShims.h
404
405 2013-10-30  Santosh Mahto  <santosh.ma@samsung.com>
406
407         [webcore/editing] remove extra header includes from cpp files.
408         https://bugs.webkit.org/show_bug.cgi?id=123524
409
410         Reviewed by Ryosuke Niwa.
411
412         Removing redundant header files.
413
414         * editing/AlternativeTextController.cpp:
415         * editing/ApplyBlockElementCommand.cpp:
416         * editing/ApplyStyleCommand.cpp:
417         * editing/BreakBlockquoteCommand.cpp:
418         * editing/DeleteButton.cpp:
419         * editing/DeleteButtonController.cpp:
420         * editing/DeleteSelectionCommand.cpp:
421         * editing/DictationCommand.cpp:
422         * editing/EditCommand.cpp:
423         * editing/EditingStyle.cpp:
424         * editing/EditorCommand.cpp:
425         * editing/FrameSelection.cpp:
426         * editing/IndentOutdentCommand.cpp:
427         * editing/InsertLineBreakCommand.cpp:
428         * editing/InsertParagraphSeparatorCommand.cpp:
429         * editing/MarkupAccumulator.h:
430         * editing/RemoveFormatCommand.cpp:
431         * editing/RenderedPosition.cpp:
432         * editing/ReplaceSelectionCommand.cpp:
433         * editing/SpellChecker.cpp:
434         * editing/SpellingCorrectionCommand.cpp:
435         * editing/SurroundingText.cpp:
436         * editing/TextCheckingHelper.cpp:
437         * editing/TextIterator.cpp:
438         * editing/TypingCommand.cpp:
439         * editing/VisibleSelection.cpp:
440         * editing/VisibleUnits.cpp:
441         * editing/WrapContentsInDummySpanCommand.cpp:
442         * editing/htmlediting.cpp:
443
444 2013-10-30  Brady Eidson  <beidson@apple.com>
445
446         IDB Database versions are uint64_t, not int64_t
447         https://bugs.webkit.org/show_bug.cgi?id=123556
448
449         Reviewed by Alexey Proskuryakov.
450
451         * Modules/indexeddb/IDBBackingStoreInterface.h:
452
453         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
454         (WebCore::IDBDatabaseBackendImpl::processPendingCalls):
455         (WebCore::IDBDatabaseBackendImpl::openConnection):
456         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
457
458         * Modules/indexeddb/IDBFactoryBackendInterface.h:
459
460         * Modules/indexeddb/IDBPendingOpenCall.h:
461         (WebCore::IDBPendingOpenCall::create):
462         (WebCore::IDBPendingOpenCall::version):
463         (WebCore::IDBPendingOpenCall::IDBPendingOpenCall):
464
465         * Modules/indexeddb/IDBTransactionBackendOperations.cpp:
466         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
467
468         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
469         (WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseVersion):
470         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
471
472         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
473         (WebCore::IDBFactoryBackendLevelDB::open):
474         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
475
476 2013-10-30  Brendan Long  <b.long@cablelabs.com>
477
478         [Gtk] Build is failing after r158317
479         https://bugs.webkit.org/show_bug.cgi?id=123544
480
481         Reviewed by Alexey Proskuryakov.
482
483         No new tests since this just fixes the build.
484
485         * GNUmakefile.list.am: Add JSCryptoKey.cpp and JSCryptoKey.h
486
487 2013-10-30  Andreas Kling  <akling@apple.com>
488
489         Manage EllipsisBox objects with unique_ptr.
490         <https://webkit.org/b/123554>
491
492         Use smart pointers to store ellipsis boxes instead of new/delete.
493
494         Reviewed by Anders Carlsson.
495
496 2013-10-30  Alexey Proskuryakov  <ap@apple.com>
497
498         [Gtk] Build is failing after r158317
499         https://bugs.webkit.org/show_bug.cgi?id=123544
500
501         Use a correct style for JSC includes.
502
503         * ForwardingHeaders/runtime/JSPromise.h: Added.
504         * ForwardingHeaders/runtime/JSPromiseResolver.h: Added.
505         * bindings/js/JSDOMPromise.h:
506
507 2013-10-30  Andreas Kling  <akling@apple.com>
508
509         Replace InlineBox::destroy() with regular virtual destruction.
510         <https://webkit.org/b/123550>
511
512         Move logic out of destroy() and its overloads into good ol' virtual
513         destructors instead.
514
515         Reviewed by Anders Carlsson.
516
517 2013-10-30  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
518
519         Simplifying MediaStream and MediStreamDescriptor creation
520         https://bugs.webkit.org/show_bug.cgi?id=123443
521
522         Reviewed by Eric Carlson.
523
524         The internal process of creating a MediaStream and MediaStreamDescriptor was quite confusing and spread.
525         We can take advantage of the platform implementation of MediaStreamTrack (aka MediaStreamTrackPrivate)
526         and simplify the whole process.
527         A new constructor that receives vectors of MediaStreamTrackPrivate objects were added, then the check
528         if a source already exists or if the tracks are all ended are now made in MediaStreamDescriptor.
529
530         No new tests needed.
531
532         * Modules/mediastream/MediaStream.cpp:
533         (WebCore::MediaStream::create): Removed unnecessary variables in one create method and using new
534         MediaStreamDescriptor::create method that receives vector of MediaStreamTrackPrivate objects as parameter.
535
536         * Modules/webaudio/MediaStreamAudioDestinationNode.cpp:
537         (WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode): Removed passing flag to
538         MediaStreamDescriptor create.
539
540         * platform/mediastream/MediaStreamDescriptor.cpp:
541         (WebCore::MediaStreamDescriptor::create): Removed EndedAtCreationFlag parameter, because this is being
542         handled inside constructor by analyzing the tracks or sources passed.
543         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor): Adding new constructor that receives vector of
544         MediaStreamTrackPrivate as parameter.
545
546         (WebCore::MediaStreamDescriptor::addTrack): Changed to store the track's source in the object.
547
548         (WebCore::MediaStreamDescriptor::removeTrack):
549         * platform/mediastream/MediaStreamDescriptor.h:
550         (WebCore::MediaStreamDescriptor::numberOfAudioTracks):
551         (WebCore::MediaStreamDescriptor::audioTracks):
552         (WebCore::MediaStreamDescriptor::numberOfVideoTracks):
553         (WebCore::MediaStreamDescriptor::videoTracks):
554         * platform/mock/MockMediaStreamCenter.cpp:
555         (WebCore::MockMediaStreamCenter::createMediaStream): Removing flag that is being passed to
556         MediaStreamDescriptor's create method.
557
558 2013-10-30  Brent Fulgham  <bfulgham@apple.com>
559
560         [Win] Legible Output callbacks should happen on notification queue
561         https://bugs.webkit.org/show_bug.cgi?id=123545
562
563         Reviewed by Eric Carlson.
564
565         Modify the callback creation for Legible Output items so that they
566         are made on our notification queue. The use of the main queue was a
567         holdover from some temporary code used during earlier development.
568
569         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
570         (WebCore::AVFWrapper::AVFWrapper): Assert this happens on the main thread.
571         (WebCore::AVFWrapper::~AVFWrapper): Ditto.
572         (WebCore::destroyAVFWrapper): Ditto.
573         (WebCore::AVFWrapper::createPlayer): Ditto.
574         (WebCore::AVFWrapper::createPlayerItem): Ditto.
575         Also, instruct LegibleOutput callbacks to happen on our notification
576         queue, rather than the main thread.
577         (WebCore::AVFWrapper::createAVCFVideoLayer): Assert this happens on the main thread.
578         (WebCore::AVFWrapper::destroyVideoLayer): Ditto.
579         (WebCore::AVFWrapper::createImageGenerator): Ditto.
580         (WebCore::AVFWrapper::destroyImageGenerator): Ditto.
581
582 2013-10-30  Alexey Proskuryakov  <ap@apple.com>
583
584         XHR.response is null when requesting empty file as arraybuffer
585         https://bugs.webkit.org/show_bug.cgi?id=123457
586
587         Reviewed by Sam Weinig.
588
589         Test: http/tests/xmlhttprequest/response-empty-arraybuffer.html
590
591         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::responseArrayBuffer): Don't do this.
592
593 2013-10-30  Samuel White  <samuel_white@apple.com>
594
595         AX: AXFocused not exposed on ARIA menuitems
596         https://bugs.webkit.org/show_bug.cgi?id=123494
597
598         Reviewed by Chris Fleizach.
599
600         ARIA menuitems should expose AXFocused accessibility attribute.
601
602         Test: platform/mac/accessibility/aria-menuitem-focus.html
603
604         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
605         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
606
607 2013-10-30  Joseph Pecoraro  <pecoraro@apple.com>
608
609         Web Inspector: Remove basic uses of InspectorState from agents
610         https://bugs.webkit.org/show_bug.cgi?id=123534
611
612         Reviewed by Timothy Hatcher.
613
614         * inspector/InspectorAgent.h:
615         * inspector/InspectorAgent.cpp:
616         (WebCore::InspectorAgent::InspectorAgent):
617         (WebCore::InspectorAgent::enable):
618         (WebCore::InspectorAgent::disable):
619         (WebCore::InspectorAgent::evaluateForTestInFrontend):
620         (WebCore::InspectorAgent::inspect):
621         InspectorAgentState::inspectorAgentEnabled -> m_enabled.
622
623         * inspector/InspectorApplicationCacheAgent.cpp:
624         (WebCore::InspectorApplicationCacheAgent::enable):
625         Remove unused state.
626
627         * inspector/InspectorCSSAgent.cpp:
628         (WebCore::InspectorCSSAgent::enable):
629         (WebCore::InspectorCSSAgent::disable):
630         (WebCore::InspectorCSSAgent::startSelectorProfiler):
631         (WebCore::InspectorCSSAgent::stopSelectorProfilerImpl):
632         Remove unused states. Make CSSAgentState::isSelectorProfiling check profile object exists or not.
633
634         * inspector/InspectorCanvasAgent.cpp:
635         (WebCore::InspectorCanvasAgent::enable):
636         (WebCore::InspectorCanvasAgent::disable):
637         Remove unused state, member variable already existed.
638
639         * inspector/InspectorConsoleAgent.h:
640         * inspector/InspectorConsoleAgent.cpp:
641         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
642         (WebCore::InspectorConsoleAgent::~InspectorConsoleAgent):
643         (WebCore::InspectorConsoleAgent::enable):
644         (WebCore::InspectorConsoleAgent::disable):
645         (WebCore::InspectorConsoleAgent::didFinishXHRLoading):
646         (WebCore::InspectorConsoleAgent::setMonitoringXHREnabled):
647         ConsoleAgentState::consoleMessagesEnabled already had m_enabled.
648         ConsoleAgentState::monitoringXHR -> m_monitoringXHREnabled.
649         
650         * inspector/InspectorDOMAgent.h:
651         * inspector/InspectorDOMAgent.cpp:
652         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
653         (WebCore::InspectorDOMAgent::clearFrontend):
654         (WebCore::InspectorDOMAgent::setDocument):
655         (WebCore::InspectorDOMAgent::getDocument):
656         (WebCore::InspectorDOMAgent::mainFrameDOMContentLoaded):
657         DOMAgentState::documentRequested -> m_documentRequested.
658
659         * inspector/InspectorDOMDebuggerAgent.h:
660         * inspector/InspectorDOMDebuggerAgent.cpp:
661         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
662         (WebCore::InspectorDOMDebuggerAgent::setXHRBreakpoint):
663         (WebCore::InspectorDOMDebuggerAgent::removeXHRBreakpoint):
664         (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
665         DOMDebuggerAgentState::pauseOnAllXHRs -> m_pauseOnAllXHRsEnabled.
666
667         * inspector/InspectorDOMStorageAgent.h:
668         * inspector/InspectorDOMStorageAgent.cpp:
669         (WebCore::InspectorDOMStorageAgent::InspectorDOMStorageAgent):
670         (WebCore::InspectorDOMStorageAgent::enable):
671         (WebCore::InspectorDOMStorageAgent::disable):
672         (WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):
673         DOMStorageAgentState::domStorageAgentEnabled -> m_enabled.
674
675         * inspector/InspectorDatabaseAgent.cpp:
676         (WebCore::InspectorDatabaseAgent::enable):
677         (WebCore::InspectorDatabaseAgent::disable):
678         Remove unused state, m_enabled already existed.
679
680         * inspector/InspectorDebuggerAgent.h:
681         * inspector/InspectorDebuggerAgent.cpp:
682         (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent):
683         (WebCore::InspectorDebuggerAgent::enable):
684         (WebCore::InspectorDebuggerAgent::disable):
685         (WebCore::InspectorDebuggerAgent::enabled):
686         (WebCore::InspectorDebuggerAgent::clearFrontend):
687         (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsImpl):
688         DebuggerAgentState::pauseOnExceptionsState removed, never read.
689         DebuggerAgentState::debuggerEnabled -> m_enabled.
690
691         * inspector/InspectorHeapProfilerAgent.h:
692         * inspector/InspectorHeapProfilerAgent.cpp:
693         (WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):
694         (WebCore::InspectorHeapProfilerAgent::resetFrontendProfiles):
695         (WebCore::InspectorHeapProfilerAgent::clearFrontend):
696         (WebCore::InspectorHeapProfilerAgent::getProfileHeaders):
697         HeapProfilerAgentState::profileHeadersRequested -> m_profileHeadersRequested.
698
699         * inspector/InspectorIndexedDBAgent.cpp:
700         (WebCore::InspectorIndexedDBAgent::enable):
701         (WebCore::InspectorIndexedDBAgent::disable):
702         Remove unused state, never read.
703
704         * inspector/InspectorLayerTreeAgent.cpp:
705         (WebCore::InspectorLayerTreeAgent::enable):
706         (WebCore::InspectorLayerTreeAgent::disable):
707         Remove unused state, did not need to be read.
708
709         * inspector/InspectorPageAgent.h:
710         * inspector/InspectorPageAgent.cpp:
711         (WebCore::InspectorPageAgent::InspectorPageAgent):
712         (WebCore::InspectorPageAgent::webViewResized):
713         (WebCore::InspectorPageAgent::enable):
714         (WebCore::InspectorPageAgent::disable):
715         (WebCore::InspectorPageAgent::setDeviceMetricsOverride):
716         (WebCore::InspectorPageAgent::deviceMetricsChanged):
717         (WebCore::InspectorPageAgent::setShowPaintRects):
718         (WebCore::InspectorPageAgent::setShowDebugBorders):
719         (WebCore::InspectorPageAgent::setShowFPSCounter):
720         (WebCore::InspectorPageAgent::setContinuousPaintingEnabled):
721         (WebCore::InspectorPageAgent::setScriptExecutionDisabled):
722         (WebCore::InspectorPageAgent::applyScreenWidthOverride):
723         (WebCore::InspectorPageAgent::applyScreenHeightOverride):
724         (WebCore::InspectorPageAgent::didPaint):
725         (WebCore::InspectorPageAgent::didLayout):
726         (WebCore::InspectorPageAgent::updateTouchEventEmulationInPage):
727         (WebCore::InspectorPageAgent::setTouchEmulationEnabled):
728         (WebCore::InspectorPageAgent::setEmulatedMedia):
729         (WebCore::InspectorPageAgent::applyEmulatedMedia):
730         PageAgentState::pageAgentScreenWidthOverride -> m_screenWidthOverride.
731         PageAgentState::pageAgentScreenHeightOverride -> m_screenHeightOverride.
732         PageAgentState::pageAgentFontScaleFactorOverride -> m_fontScaleFactorOverride.
733         PageAgentState::pageAgentFitWindow -> m_fitWindowOverride.
734         PageAgentState::pageAgentShowPaintRects -> m_showPaintRects.
735         PageAgentState::pageAgentEmulatedMedia -> m_emulatedMedia.
736         Remove other unused states.
737
738         * inspector/InspectorProfilerAgent.h:
739         * inspector/InspectorProfilerAgent.cpp:
740         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
741         (WebCore::InspectorProfilerAgent::addProfile):
742         (WebCore::InspectorProfilerAgent::enable):
743         (WebCore::InspectorProfilerAgent::disable):
744         (WebCore::InspectorProfilerAgent::getProfileHeaders):
745         (WebCore::InspectorProfilerAgent::resetFrontendProfiles):
746         (WebCore::InspectorProfilerAgent::start):
747         (WebCore::InspectorProfilerAgent::stop):
748         (WebCore::InspectorProfilerAgent::enabled):
749         ProfilerAgentState::profileHeadersRequested -> m_profileHeadersRequested.
750         Remove other unused states.
751
752         * inspector/InspectorResourceAgent.h:
753         * inspector/InspectorResourceAgent.cpp:
754         (WebCore::InspectorResourceAgent::~InspectorResourceAgent):
755         (WebCore::InspectorResourceAgent::willSendRequest):
756         (WebCore::InspectorResourceAgent::applyUserAgentOverride):
757         (WebCore::InspectorResourceAgent::enable):
758         (WebCore::InspectorResourceAgent::disable):
759         (WebCore::InspectorResourceAgent::setUserAgentOverride):
760         (WebCore::InspectorResourceAgent::setCacheDisabled):
761         (WebCore::InspectorResourceAgent::mainFrameNavigated):
762         (WebCore::InspectorResourceAgent::InspectorResourceAgent):
763         ResourceAgentState::resourceAgentEnabled -> m_enabled.
764         ResourceAgentState::cacheDisabled -> m_cacheDisabled.
765         ResourceAgentState::userAgentOverride -> m_userAgentOverride (this already existed and was unused).
766
767         * inspector/InspectorTimelineAgent.h:
768         * inspector/InspectorTimelineAgent.cpp:
769         (WebCore::InspectorTimelineAgent::start):
770         (WebCore::InspectorTimelineAgent::stop):
771         (WebCore::InspectorTimelineAgent::setDOMCounters):
772         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
773         TimelineAgentState::timelineAgentEnabled -> m_enabled.
774         TimelineAgentState::includeDomCounters -> m_includeDOMCounters.
775         Remove other unused states.
776
777         * inspector/InspectorWorkerAgent.h:
778         * inspector/InspectorWorkerAgent.cpp:
779         (WebCore::InspectorWorkerAgent::InspectorWorkerAgent):
780         (WebCore::InspectorWorkerAgent::clearFrontend):
781         (WebCore::InspectorWorkerAgent::enable):
782         (WebCore::InspectorWorkerAgent::disable):
783         (WebCore::InspectorWorkerAgent::setAutoconnectToWorkers):
784         (WebCore::InspectorWorkerAgent::shouldPauseDedicatedWorkerOnStart):
785         (WebCore::InspectorWorkerAgent::didStartWorkerGlobalScope):
786         (WebCore::InspectorWorkerAgent::createWorkerFrontendChannel):
787         WorkerAgentState::workerInspectionEnabled -> m_enabled.
788         WorkerAgentState::autoconnectToWorkers -> m_shouldPauseDedicatedWorkerOnStart.
789
790         * inspector/PageRuntimeAgent.cpp:
791         (WebCore::PageRuntimeAgent::enable):
792         (WebCore::PageRuntimeAgent::disable):
793         Remove unused state, not read.
794
795 2013-10-30  Ryosuke Niwa  <rniwa@webkit.org>
796
797         Remove code for Mac Lion
798         https://bugs.webkit.org/show_bug.cgi?id=123542
799
800         Reviewed by Anders Carlsson.
801
802         Removed the code for Mac OS X 10.7.
803
804         * platform/graphics/ImageBuffer.h:
805         * platform/graphics/cg/ImageBufferCG.cpp:
806         (WebCore::ImageBuffer::ImageBuffer):
807         (WebCore::ImageBuffer::context):
808         (WebCore::ImageBuffer::flushContext):
809         * platform/graphics/cg/ImageBufferDataCG.h:
810         * platform/graphics/cg/ImageSourceCG.cpp:
811         (WebCore::imageSourceOptions):
812         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
813         (WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
814         * platform/mac/ScrollAnimatorMac.mm:
815         (WebCore::scrollAnimationEnabledForSystem):
816         * platform/mac/ScrollElasticityController.mm:
817         (WebCore::reboundDeltaForElasticDelta):
818         * platform/mac/ThemeMac.mm:
819         (WebCore::updateStates):
820         (WebCore::paintCheckbox):
821         (WebCore::paintRadio):
822         (WebCore::paintButton):
823         * platform/mac/WebCoreNSCellExtras.h:
824         * platform/mac/WebCoreNSCellExtras.m:
825         * rendering/RenderThemeMac.mm:
826         (WebCore::RenderThemeMac::paintTextField):
827         (WebCore::RenderThemeMac::paintMenuList):
828         (WebCore::RenderThemeMac::setPopupButtonCellState):
829         (WebCore::RenderThemeMac::textField):
830
831 2013-10-30  Alexey Proskuryakov  <ap@apple.com>
832
833         85 inspector tests asserting in DrawingAreaProxyImpl::updateAcceleratedCompositingMode()
834         when there is a stale WebKitTestRunner preference
835         https://bugs.webkit.org/show_bug.cgi?id=115115
836
837         Reviewed by Darin Adler.
838
839         * page/Settings.cpp:
840         (WebCore::Settings::setMockScrollbarsEnabled):
841         (WebCore::Settings::setUsesOverlayScrollbars):
842         Added FIXMEs.
843
844 2013-10-30  Andreas Kling  <akling@apple.com>
845
846         Take line boxes out of the arena.
847         <https://webkit.org/b/123533>
848
849         Stop arena-allocating line boxes so we can move forward on improving
850         render tree memory management. This will also allow more rendering
851         code to take advantage of malloc optimizations.
852
853         This will likely regress performance on some micro-benchmarks, but
854         it's something we want to do sooner rather than later so we have time
855         to restabilize it. All improvements to the simple line layout's
856         coverage will help with recouping whatever is regressed.
857
858         BiDi runs are the only remaining user of the arena now.
859
860         Reviewed by Antti Koivisto
861
862 2013-10-30  Joseph Pecoraro  <pecoraro@apple.com>
863
864         Web Inspector: Remove InspectorAgent::restore functionality
865         https://bugs.webkit.org/show_bug.cgi?id=123525
866
867         Reviewed by Timothy Hatcher.
868
869         Remove unused InspectorAgent restore functionality.
870
871         * inspector/InspectorApplicationCacheAgent.cpp:
872         * inspector/InspectorApplicationCacheAgent.h:
873         * inspector/InspectorBaseAgent.cpp:
874         * inspector/InspectorBaseAgent.h:
875         * inspector/InspectorCSSAgent.cpp:
876         * inspector/InspectorCSSAgent.h:
877         * inspector/InspectorCanvasAgent.cpp:
878         * inspector/InspectorCanvasAgent.h:
879         * inspector/InspectorConsoleAgent.cpp:
880         * inspector/InspectorConsoleAgent.h:
881         * inspector/InspectorController.cpp:
882         * inspector/InspectorController.h:
883         * inspector/InspectorDOMAgent.cpp:
884         * inspector/InspectorDOMAgent.h:
885         * inspector/InspectorDatabaseAgent.cpp:
886         * inspector/InspectorDatabaseAgent.h:
887         * inspector/InspectorDebuggerAgent.cpp:
888         * inspector/InspectorDebuggerAgent.h:
889         * inspector/InspectorHeapProfilerAgent.cpp:
890         * inspector/InspectorHeapProfilerAgent.h:
891         * inspector/InspectorIndexedDBAgent.cpp:
892         * inspector/InspectorIndexedDBAgent.h:
893         * inspector/InspectorLayerTreeAgent.cpp:
894         * inspector/InspectorLayerTreeAgent.h:
895         * inspector/InspectorPageAgent.cpp:
896         * inspector/InspectorPageAgent.h:
897         * inspector/InspectorProfilerAgent.cpp:
898         * inspector/InspectorProfilerAgent.h:
899         * inspector/InspectorResourceAgent.cpp:
900         * inspector/InspectorResourceAgent.h:
901         * inspector/InspectorTimelineAgent.cpp:
902         * inspector/InspectorTimelineAgent.h:
903         * inspector/InspectorWorkerAgent.cpp:
904         * inspector/InspectorWorkerAgent.h:
905         * inspector/PageRuntimeAgent.cpp:
906         * inspector/PageRuntimeAgent.h:
907         * inspector/WorkerInspectorController.cpp:
908         * inspector/WorkerInspectorController.h:
909
910 2013-10-30  Jer Noble  <jer.noble@apple.com>
911
912         REGRESSION(r158288): media/media-can-play-mpeg4-video.html fails
913         https://bugs.webkit.org/show_bug.cgi?id=123530
914
915         Reviewed by Eric Carlson.
916
917         Lower case the mime type before passing it along to MediaPlayer.
918
919         * html/HTMLMediaElement.cpp:
920         (WebCore::HTMLMediaElement::canPlayType):
921         (WebCore::HTMLMediaElement::selectNextSourceChild):
922
923 2013-10-30  Alexey Proskuryakov  <ap@apple.com>
924
925         Add a way to fulfill promises from DOM code
926         https://bugs.webkit.org/show_bug.cgi?id=123466
927
928         Reviewed by Sam Weinig.
929
930         This is not perfect, as it strongly ties DOM code to JavaScript. In the future, we
931         can make it better e.g. by subclassing, so that only a base interface would be exposed.
932
933         * GNUmakefile.list.am:
934         * WebCore.vcxproj/WebCore.vcxproj:
935         * WebCore.vcxproj/WebCore.vcxproj.filters:
936         * bindings/js/JSBindingsAllInOne.cpp:
937         * WebCore.xcodeproj/project.pbxproj:
938         Added JSDOMPromise.
939
940         * bindings/js/JSDOMPromise.cpp: Added.
941
942         * bindings/js/JSDOMPromise.h: Added.
943         (WebCore::PromiseWrapper::create):
944         (WebCore::PromiseWrapper::fulfill): A random set of specializations that I needed
945         in WebCrypto code so far.
946         (WebCore::PromiseWrapper::reject): Ditto.
947
948 2013-10-30  Santosh Mahto  <santosh.ma@samsung.com>
949
950         contentEditable deleting lists when list items are block level
951         https://bugs.webkit.org/show_bug.cgi?id=122602
952
953         Reviewed by Ryosuke Niwa.
954
955         When listitems are styled with display:block/float then inserting paragraph
956         twice at end of listitem delete entire list. Generally when listitem is empty
957         then we delete the listitem on inserting paragraph. In this issue, on inserting
958         first paragraph one empty listitem is created, and on inserting second paragraph
959         we try to delete that empty listitem. but it misbehave becasue of incomplete 
960         definition of htmlediting::isLisItem() and entire list is deleted.
961
962         htmlediting::isListItem() check only render object to decide whether it is 
963         list or not, so if any LI element is block level then isListItem return false.
964         Now after this patch if parent of current node is list element then node is
965         treated as listItem.
966
967         Test: editing/execCommand/hit-enter-twice-atendof-block-styled-listitem.html
968
969         * editing/htmlediting.cpp:
970         (WebCore::isListItem): Modified condition to check if parent node is list;
971
972 2013-10-30  Jer Noble  <jer.noble@apple.com>
973
974         Unreviewed EFL build fix; give MediaEngineSupportParameters struct a default constructor.
975
976         * Modules/mediasource/MediaSource.cpp:
977         (WebCore::MediaSource::isTypeSupported):
978         * dom/DOMImplementation.cpp:
979         (WebCore::DOMImplementation::createDocument):
980         * html/HTMLMediaElement.cpp:
981         (WebCore::HTMLMediaElement::canPlayType):
982         (WebCore::HTMLMediaElement::selectNextSourceChild):
983         * platform/graphics/MediaPlayer.h:
984         (WebCore::MediaEngineSupportParameters::MediaEngineSupportParameters):
985
986 2013-10-30  Andreas Kling  <akling@apple.com>
987
988         Let Page::renderTreeSize() be the number of renderers.
989         <https://webkit.org/b/123518>
990         <rdar://problem/15348679>
991
992         The old metric was "number of bytes allocated in RenderArena" and
993         that was heading towards obsolescence, fast.
994
995         Instead, keep a count of RenderObjects instantiated on RenderView.
996         While a bit ugly, this lets us move forward with rendering memory
997         model improvements without breaking features.
998
999         Reviewed by Beth Dakin.
1000
1001 2013-10-30  Myles C. Maxfield  <mmaxfield@apple.com>
1002
1003         WebKit/win/WebKitGraphics.h:void WebDrawText(WebTextRenderInfo*); is never called
1004         https://bugs.webkit.org/show_bug.cgi?id=123485
1005
1006         Reviewed by Brent Fulgham.
1007
1008         WebDrawText is the only caller of WebCoreDrawTextAtPoint, so we can
1009         delete that as well.
1010
1011         Because there is no behavior difference, no new tests are necessary.
1012
1013         * platform/win/WebCoreTextRenderer.cpp:
1014         * platform/win/WebCoreTextRenderer.h:
1015
1016 2013-10-30  Csaba Osztrogonác  <ossy@webkit.org>
1017
1018         URTBF after r158289.
1019
1020         * CMakeLists.txt:
1021         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1022         (WebCore::IDBFactoryBackendLevelDB::createCursorBackend):
1023
1024 2013-10-30  Dong-Gwan Kim  <donggwan.kim@samsung.com>
1025
1026         Build fails with EGLConfigSelector.cpp when OpenGL ES is not used
1027         https://bugs.webkit.org/show_bug.cgi?id=119037
1028
1029         Reviewed by Brent Fulgham.
1030
1031         Build fix for EGLConfigSelector.cpp
1032
1033         No new tests, no behavior change.
1034
1035         * platform/graphics/surfaces/egl/EGLConfigSelector.cpp:
1036         (WebCore::EGLConfigSelector::createConfig):
1037
1038 2013-10-30  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1039
1040         Explicitly initialize base class in MediStreamTrackPrivate copy constructor
1041         https://bugs.webkit.org/show_bug.cgi?id=123473
1042
1043         Reviewed by Eric Carlson.
1044
1045         No new tests needed.
1046
1047         Ports that enable -Werror=extra must do that to compile.
1048
1049         * platform/mediastream/MediaStreamTrackPrivate.cpp:
1050         (WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate):
1051
1052 2013-10-30  Ryosuke Niwa  <rniwa@webkit.org>
1053
1054         Mac build fix after r158291.
1055
1056         * html/HTMLMediaElement.cpp:
1057         (WebCore::HTMLMediaElement::canPlayType):
1058
1059 2013-10-30  Commit Queue  <commit-queue@webkit.org>
1060
1061         Unreviewed, rolling out r158243.
1062         http://trac.webkit.org/changeset/158243
1063         https://bugs.webkit.org/show_bug.cgi?id=123520
1064
1065         Change was wrong (Requested by smfr on #webkit).
1066
1067         * platform/graphics/GraphicsContext.h:
1068         * platform/graphics/blackberry/PathBlackBerry.cpp:
1069         (WebCore::GraphicsContext::drawLineForText):
1070         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1071         (WebCore::GraphicsContext::drawLineForText):
1072         * platform/graphics/cg/GraphicsContextCG.cpp:
1073         (WebCore::GraphicsContext::drawLineForText):
1074         * platform/graphics/wince/GraphicsContextWinCE.cpp:
1075         (WebCore::GraphicsContext::drawLineForText):
1076         * platform/win/WebCoreTextRenderer.cpp:
1077         (WebCore::doDrawTextAtPoint):
1078         * rendering/InlineTextBox.cpp:
1079         (WebCore::InlineTextBox::paintDecoration):
1080         (WebCore::InlineTextBox::paintCompositionUnderline):
1081
1082 2013-10-30  peavo@outlook.com  <peavo@outlook.com>
1083
1084         Favicons are flipped in vertical direction in WinCairo builds.
1085         https://bugs.webkit.org/show_bug.cgi?id=102077
1086
1087         Reviewed by Brent Fulgham.
1088
1089         * platform/graphics/win/ImageCairoWin.cpp:
1090         (WebCore::BitmapImage::getHBITMAPOfSize):
1091
1092 2013-10-30  Jer Noble  <jer.noble@apple.com>
1093
1094         [MSE] Add MediaSource compatable loading functions to MediaPlayer
1095         https://bugs.webkit.org/show_bug.cgi?id=123353
1096
1097         Reviewed by Eric Carlson.
1098
1099         Add methods to MediaPlayer to allow it to select the correct MediaPlayerFactory
1100         when attempting to load a MediaSource URL.
1101
1102         * Modules/mediasource/MediaSource.cpp:
1103         (WebCore::MediaSource::addSourceBuffer):
1104         (WebCore::MediaSource::isTypeSupported):
1105         * html/HTMLMediaElement.cpp:
1106         (WebCore::HTMLMediaElement::loadResource):
1107         (WebCore::HTMLMediaElement::canPlayType):
1108         (WebCore::HTMLMediaElement::selectNextSourceChild):
1109         * platform/graphics/MediaPlayer.cpp:
1110         (WebCore::MediaPlayer::load):
1111         (WebCore::MediaPlayer::supportsType):
1112         * platform/graphics/MediaPlayer.h:
1113         * dom/DOMImplementation.cpp:
1114         (WebCore::DOMImplementation::createDocument):
1115
1116         Remove the isSupportedMediaSourceMIMEType() method:
1117         * platform/MIMETypeRegistry.h:
1118         * platform/efl/MIMETypeRegistryEfl.cpp:
1119         * platform/mac/MIMETypeRegistryMac.mm:
1120
1121
1122 2013-10-30  Brady Eidson  <beidson@apple.com>
1123
1124         IDBCursorBackendLevelDB should be made cross-platform
1125         https://bugs.webkit.org/show_bug.cgi?id=123513
1126
1127         Rubberstamped by Andreas Kling.
1128
1129         Because of all the already-done refactoring, this is basically a file-move and global rename.
1130
1131         * CMakeLists.txt:
1132         * GNUmakefile.list.am:
1133         * WebCore.xcodeproj/project.pbxproj:
1134         * WebCore.vcxproj/WebCore.vcxproj:
1135
1136         * Modules/indexeddb/IDBCursorBackendImpl.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp.
1137         * Modules/indexeddb/IDBCursorBackendImpl.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h.
1138
1139         * Modules/indexeddb/IDBCursorBackendInterface.h:
1140
1141         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1142
1143 2013-10-29  Jer Noble  <jer.noble@apple.com>
1144
1145         [MSE] Remove legacy Media Source APIs (WebKitMediaSource, WebKitSourceBuffer, WebKitSourceBufferList)
1146         https://bugs.webkit.org/show_bug.cgi?id=123463
1147
1148         Reviewed by Eric Carlson.
1149
1150         No new tests; updated test results.
1151
1152         Remove all reference to WebKitMediaSource, WebKitSourceBuffer, and WebKitSourceBufferList.
1153
1154         * CMakeLists.txt:
1155         * DerivedSources.cpp:
1156         * DerivedSources.make:
1157         * GNUmakefile.list.am:
1158         * Modules/mediasource/DOMURLMediaSource.idl:
1159         * Modules/mediasource/WebKitMediaSource.cpp: Removed.
1160         * Modules/mediasource/WebKitMediaSource.h: Removed.
1161         * Modules/mediasource/WebKitMediaSource.idl: Removed.
1162         * Modules/mediasource/WebKitSourceBuffer.cpp: Removed.
1163         * Modules/mediasource/WebKitSourceBuffer.h: Removed.
1164         * Modules/mediasource/WebKitSourceBuffer.idl: Removed.
1165         * Modules/mediasource/WebKitSourceBufferList.cpp: Removed.
1166         * Modules/mediasource/WebKitSourceBufferList.h: Removed.
1167         * Modules/mediasource/WebKitSourceBufferList.idl: Removed.
1168         * WebCore.xcodeproj/project.pbxproj:
1169         * dom/EventTargetFactory.in:
1170
1171 2013-10-30  Antti Koivisto  <antti@apple.com>
1172
1173         Unbreak the release build.
1174
1175         * rendering/SimpleLineLayoutFunctions.cpp:
1176
1177 2013-10-30  Liangjun Zeng  <lizeng@blackberry.com>
1178
1179         Fix memory leaks in platform/image-encoders/JPEGImageEncoder.cpp
1180         https://bugs.webkit.org/show_bug.cgi?id=118781
1181
1182         Reviewed by Brent Fulgham.
1183
1184         We can find the function "jpeg_finish_compress" call the function "jpeg_abort" at the end.
1185         And the comments of "jpeg_abort" is "Abort processing of a JPEG compression operation,
1186         but don't destroy the object itself". (We can find these in the "jcapimin.c" of jpeg)
1187         So the compression object destroy need be called.
1188         No new tests because this doesn't change functionality.
1189
1190         * platform/image-encoders/JPEGImageEncoder.cpp:
1191         (WebCore::compressRGBABigEndianToJPEG):
1192
1193 2013-10-30  Antti Koivisto  <antti@apple.com>
1194
1195         Add debug settings for simple line layout
1196         https://bugs.webkit.org/show_bug.cgi?id=123514
1197
1198         Reviewed by Andreas Kling.
1199
1200         * WebCore.exp.in:
1201         * page/Settings.in:
1202         
1203             Add simpleLineLayoutEnabled and simpleLineLayoutDebugBordersEnabled.
1204
1205         * rendering/SimpleLineLayout.cpp:
1206         (WebCore::SimpleLineLayout::canUseFor):
1207         * rendering/SimpleLineLayoutFunctions.cpp:
1208         (WebCore::SimpleLineLayout::paintDebugBorders):
1209         (WebCore::SimpleLineLayout::paintFlow):
1210
1211 2013-10-30  peavo@outlook.com  <peavo@outlook.com>
1212
1213         [Curl] Cookies are sometimes not set in download request.
1214         https://bugs.webkit.org/show_bug.cgi?id=123445
1215
1216         Reviewed by Brent Fulgham.
1217
1218         Sometimes cookies are not set in the download request because the cookie file cannot be opened,
1219         it's already been opened by the ResourceHandleManager for writing.
1220         This can be fixed by getting the cookie list from the share handle in ResourceHandleManager instead.
1221         This will also improve performance, as there is no need to read and parse the cookie file for each download.
1222
1223         * platform/network/curl/CurlDownload.cpp:
1224         (WebCore::CurlDownload::init): Use share handle to get cookie list.
1225
1226 2013-10-30  ChangSeok Oh  <changseok.oh@collabora.com>
1227
1228         Unguard Element::childShouldCreateRenderer
1229         https://bugs.webkit.org/show_bug.cgi?id=123496
1230
1231         Reviewed by Andreas Kling.
1232
1233         Make Element::childShouldCreateRenderer normally accessible. Guarding it with flags
1234         just leaves potential build issues.
1235
1236         No new tests since no functionality changed.
1237
1238         * dom/Element.cpp:
1239         (WebCore::Element::childShouldCreateRenderer):
1240         * dom/Element.h:
1241
1242 2013-10-30  Jer Noble  <jer.noble@apple.com>
1243
1244         [MSE] Make MediaSourcePrivate, SourceBufferPrivate classes RefCounted.
1245         https://bugs.webkit.org/show_bug.cgi?id=123350
1246
1247         Reviewed by Darin Adler.
1248
1249         Make the MediaSourcePrivate and SourceBufferPrivate classes RefCounted so that
1250         they can be referenced both by MediaSource/SourceBuffer, and by the MediaPlayerPrivate
1251         which creates them.
1252
1253         Change OwnPtr -> RefPtr everywhere:
1254         * Modules/mediasource/MediaSource.cpp:
1255         (WebCore::MediaSource::addSourceBuffer):
1256         * Modules/mediasource/MediaSourceBase.cpp:
1257         (WebCore::MediaSourceBase::setPrivateAndOpen):
1258         (WebCore::MediaSourceBase::createSourceBufferPrivate):
1259         * Modules/mediasource/MediaSourceBase.h:
1260         * Modules/mediasource/SourceBuffer.cpp:
1261         (WebCore::SourceBuffer::create):
1262         (WebCore::SourceBuffer::SourceBuffer):
1263         * Modules/mediasource/SourceBuffer.h:
1264         * Modules/mediasource/WebKitMediaSource.cpp:
1265         (WebCore::WebKitMediaSource::addSourceBuffer):
1266         * Modules/mediasource/WebKitSourceBuffer.cpp:
1267         (WebCore::WebKitSourceBuffer::create):
1268         (WebCore::WebKitSourceBuffer::WebKitSourceBuffer):
1269         * Modules/mediasource/WebKitSourceBuffer.h:
1270         * html/HTMLMediaSource.h:
1271         * platform/graphics/MediaSourcePrivate.h:
1272         * platform/graphics/SourceBufferPrivate.h:
1273         (WebCore::SourceBufferPrivate::SourceBufferPrivate):
1274
1275 2013-10-30  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1276
1277         Remove unused runtime enabled
1278         https://bugs.webkit.org/show_bug.cgi?id=123509
1279
1280         Reviewed by Anders Carlsson.
1281
1282         Some of the runtime enabled features were only ever used by the V8 bindings
1283         and can be removed as no WebKit code sets or reads them.
1284
1285         * bindings/generic/RuntimeEnabledFeatures.cpp:
1286         (WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
1287         * bindings/generic/RuntimeEnabledFeatures.h:
1288
1289 2013-10-30  Antti Koivisto  <antti@apple.com>
1290
1291         Make SimpleLineLayout::Layout a class
1292         https://bugs.webkit.org/show_bug.cgi?id=123508
1293
1294         Reviewed by Mario Sanchez Prada.
1295
1296         Improve encapsulation.
1297
1298 2013-10-30  Antti Koivisto  <antti@apple.com>
1299
1300         REGRESSION(r158214): It made zillion tests crash on GTK and EFL
1301         https://bugs.webkit.org/show_bug.cgi?id=123505
1302
1303         * rendering/SimpleLineLayout.h: Add WTF_MAKE_FAST_ALLOCATED
1304
1305 2013-10-29  Philippe Normand  <pnormand@igalia.com>
1306
1307         [GStreamer] Store video-sink in a bin
1308         https://bugs.webkit.org/show_bug.cgi?id=122831
1309
1310         Reviewed by Gustavo Noronha Silva.
1311
1312         For the upcoming mediastream playback support the player will
1313         handle a non-playbin-based pipeline that will require a slightly
1314         different video rendering chain. This patch generalizes the
1315         encapsulation of the video sink in a bin, just like the audio sink
1316         case.
1317
1318         No new tests, no change in functionality.
1319
1320 2013-10-29  Ryosuke Niwa  <rniwa@webkit.org>
1321
1322         REGRESSION(r154614): Opening and closing a picture on Facebook resets scroll position
1323         https://bugs.webkit.org/show_bug.cgi?id=122882
1324
1325         Reviewed by Anders Carlsson.
1326
1327         scrollLeft and scrollTop have to continue to function in the strict mode for the Web compatiblity.
1328         In particular, www.facebook.com and build.webkit.org depend on this behavior as of October 29th, 2013.
1329
1330         * html/HTMLBodyElement.cpp:
1331         (WebCore::HTMLBodyElement::scrollLeft):
1332         (WebCore::HTMLBodyElement::setScrollLeft):
1333         (WebCore::HTMLBodyElement::scrollTop):
1334         (WebCore::HTMLBodyElement::setScrollTop):
1335
1336 2013-10-29  Brady Eidson  <beidson@apple.com>
1337
1338         IDBTransactionBackend should be cross platform
1339         https://bugs.webkit.org/show_bug.cgi?id=123449
1340
1341         Reviewed by Beth Dakin.
1342
1343         - Rename IDBTransactionBackendLevelDB to IDBTransactionBackendImpl
1344         - Rename IDBTransactionBackendLevelDBOperations to IDBTransactionBackendOperations
1345         - Move their files from the leveldb subdirectory to the indexeddb directory
1346
1347         * CMakeLists.txt:
1348         * GNUmakefile.list.am:
1349         * WebCore.xcodeproj/project.pbxproj:
1350
1351         * Modules/indexeddb/IDBTransactionBackendImpl.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp.
1352         * Modules/indexeddb/IDBTransactionBackendImpl.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h.
1353         * Modules/indexeddb/IDBTransactionBackendOperations.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp.
1354         * Modules/indexeddb/IDBTransactionBackendOperations.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h.
1355
1356         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
1357         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
1358         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1359         (WebCore::IDBFactoryBackendLevelDB::maybeCreateTransactionBackend):
1360
1361 2013-10-29  Sam Weinig  <sam@webkit.org>
1362
1363         Modernize DatasetDOMStringMap and ClassList a bit
1364         https://bugs.webkit.org/show_bug.cgi?id=123491
1365
1366         Reviewed by Andreas Kling.
1367
1368         * dom/DatasetDOMStringMap.cpp:
1369         * dom/DatasetDOMStringMap.h:
1370         * dom/Element.cpp:
1371         * dom/ElementRareData.h:
1372         * html/ClassList.cpp:
1373         * html/ClassList.h:
1374         Pass the owner Element by reference and store in a std::unique_ptr.
1375
1376 2013-10-29  Brady Eidson  <beidson@apple.com>
1377
1378         Attempted build-fix after http://trac.webkit.org/changeset/158234
1379
1380         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
1381         (WebCore::IDBBackingStoreLevelDB::createBackingStoreTransaction): Implement this!
1382
1383 2013-10-29  Andreas Kling  <akling@apple.com>
1384
1385         ElementData construction helpers should return PassRef.
1386         <https://webkit.org/b/123487>
1387
1388         Make functions that create new ElementData objects return appropriate
1389         PassRef pointers instead of PassRefPtr.
1390
1391         Reviewed by Anders Carlsson.
1392
1393 2013-10-29  Ryosuke Niwa  <rniwa@webkit.org>
1394
1395         GTK+ build fix attempt after r158220.
1396
1397         * GNUmakefile.list.am:
1398
1399 2013-10-29  Brady Eidson  <beidson@apple.com>
1400
1401         Move IDBTransactionBackendLevelDB to generic IDBBackingStoreInterface
1402         https://bugs.webkit.org/show_bug.cgi?id=123483
1403
1404         Reviewed by Andreas Kling.
1405
1406         * Modules/indexeddb/IDBCursorBackendInterface.h:
1407         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
1408         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
1409         * Modules/indexeddb/IDBFactoryBackendInterface.h:
1410         * Modules/indexeddb/IDBTransactionBackendInterface.h:
1411
1412         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
1413         (WebCore::IDBCursorBackendLevelDB::IDBCursorBackendLevelDB):
1414         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
1415         (WebCore::IDBCursorBackendLevelDB::create):
1416
1417         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1418         (WebCore::IDBFactoryBackendLevelDB::createCursorBackend):
1419         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
1420
1421         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
1422         (WebCore::IDBTransactionBackendLevelDB::registerOpenCursor):
1423         (WebCore::IDBTransactionBackendLevelDB::unregisterOpenCursor):
1424         (WebCore::IDBTransactionBackendLevelDB::closeOpenCursors):
1425         (WebCore::IDBTransactionBackendLevelDB::createCursorBackend):
1426         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
1427
1428         * WebCore.xcodeproj/project.pbxproj: Export a required header.
1429
1430 2013-10-29  Seokju Kwon  <seokju@webkit.org>
1431
1432         Remove mutable keyword from member variables of XMLHttpRequest
1433         https://bugs.webkit.org/show_bug.cgi?id=123481
1434
1435         Reviewed by Andreas Kling.
1436
1437         No new tests, no change in functionality.
1438
1439         * xml/XMLHttpRequest.h: Remove mutable keyword as these are no longer used in const functions.
1440
1441 2013-10-29  Myles C. Maxfield  <mmaxfield@apple.com>
1442
1443         Underline bounds cannot be queried before underline itself is drawn
1444         https://bugs.webkit.org/show_bug.cgi?id=123310
1445
1446         Reviewed by Simon Fraser
1447
1448         GraphicsContext's drawLineForText function is used to draw underlines,
1449         strikethroughs, and overlines. Before drawing the line, this function
1450         modifies the bounds given to it in order to make underlines crisp. However,  
1451         this means that it is impossible to know where an underline will be drawn
1452         before drawing it. This patch pulls out this adjustment computation into 
1453         InlineTextBox, then passes the result to drawLineForText.
1454
1455         Because there should be no observable difference, no tests need to be updated.
1456
1457         * platform/graphics/GraphicsContext.h: Changing the signature of drawLineForText
1458         so it can accept bounds from our helper function
1459         * platform/graphics/blackberry/PathBlackBerry.cpp:
1460         (WebCore::GraphicsContext::drawLineForText): Update to work with new
1461         signature of drawLineForText
1462         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1463         (WebCore::GraphicsContext::drawLineForText): Ditto
1464         * platform/graphics/cg/GraphicsContextCG.cpp:
1465         (WebCore::GraphicsContext::drawLineForText): Ditto
1466         * platform/graphics/wince/GraphicsContextWinCE.cpp:
1467         (WebCore::GraphicsContext::drawLineForText): Ditto
1468         * platform/win/WebCoreTextRenderer.cpp:
1469         (WebCore::doDrawTextAtPoint): Update the last call site of drawLineForText
1470         * rendering/InlineTextBox.cpp:
1471         (WebCore::computeBoundsForUnderline): Pure function that computes the adjusted
1472         bounds of the underline about to be drawn
1473         (WebCore::drawLineForText): calls computeBoundsForUnderline and then
1474         GraphicsContext::drawLineForText
1475         (WebCore::InlineTextBox::paintDecoration): Use new drawLineForText function
1476         (WebCore::InlineTextBox::paintCompositionUnderline): Ditto
1477
1478 2013-10-29  Alexey Proskuryakov  <ap@apple.com>
1479
1480         Beef up CryptoKey
1481         https://bugs.webkit.org/show_bug.cgi?id=123462
1482
1483         Fix a mismerge, remove duplicate CryptoKeyType declaration.
1484
1485         * crypto/CryptoKey.h:
1486
1487 2013-10-29  Alexey Proskuryakov  <ap@apple.com>
1488
1489         Beef up CryptoKey
1490         https://bugs.webkit.org/show_bug.cgi?id=123462
1491
1492         Reviewed by Sam Weinig.
1493
1494         * WebCore.xcodeproj/project.pbxproj: Added new files.
1495
1496         * crypto/CryptoAlgorithmIdentifier.h: Added an enum with all registered algorithms
1497         (they don't have to be all implemented in any port).
1498
1499         * crypto/CryptoKey.cpp:
1500         (WebCore::CryptoKey::CryptoKey): Initialize base class variables.
1501         (WebCore::CryptoKey::type): Convert internal representation for bindings use.
1502         (WebCore::CryptoKey::buildAlgorithmDescription): Ditto. This function is supposed
1503         to be called by derived classes before adding other keyes.
1504         (WebCore::CryptoKey::usages): Convert internal representation for bindings use.
1505
1506         * crypto/CryptoKey.h:
1507         (WebCore::CryptoKey::extractable): Expose for bindings.
1508         (WebCore::CryptoKey::allows): A faster way to check allowed key usage from C++ code.
1509
1510         * crypto/CryptoKey.idl: Added SkipVTableValidation, because validation doesn't work
1511         with derived classes. Corrected "usages" attribute name.
1512
1513         * crypto/CryptoKeyFormat.h: Added. 
1514         * crypto/CryptoKeyType.h: Added.
1515         * crypto/CryptoKeyUsage.h: Added.
1516         Added enums used by CryptoKey.
1517
1518 2013-10-29  Hugo Parente Lima  <hugo.lima@openbossa.org>
1519
1520         Adding Nix files in Source/Platform to trunk
1521         https://bugs.webkit.org/show_bug.cgi?id=118331
1522
1523         Reviewed by Benjamin Poulain.
1524
1525         Add Nix WebAudio implementation that just forward some calls to our API.
1526         This patch is part of the upstream process, tests will be landed by other patches.
1527
1528         * platform/audio/nix/AudioBusNix.cpp: Added.
1529         * platform/audio/nix/AudioDestinationNix.cpp: Added.
1530         * platform/audio/nix/AudioDestinationNix.h: Added.
1531         * platform/audio/nix/FFTFrameNix.cpp: Added.
1532         * platform/nix/support/MultiChannelPCMData.cpp: Added.
1533
1534 2013-10-29  Brady Eidson  <beidson@apple.com>
1535
1536         Move IDBTransactionBackendLevelDB to generic IDBBackingStoreInterface::Transaction.
1537         https://bugs.webkit.org/show_bug.cgi?id=123475
1538
1539         Reviewed by Tim Horton.
1540
1541         Currently it's using IDBBackingStoreLevelDB::Transaction, which hinders the goal of:
1542         https://bugs.webkit.org/show_bug.cgi?id=123449 - IDBTransactionBackend should be cross platform
1543
1544         * Modules/indexeddb/IDBBackingStoreInterface.h:
1545
1546         * Modules/indexeddb/IDBIndexWriter.cpp:
1547         (WebCore::IDBIndexWriter::writeIndexKeys):
1548         (WebCore::IDBIndexWriter::verifyIndexKeys):
1549         (WebCore::IDBIndexWriter::addingKeyAllowed):
1550         * Modules/indexeddb/IDBIndexWriter.h:
1551
1552         * Modules/indexeddb/IDBTransactionBackendInterface.h:
1553
1554         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
1555         (WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseIntVersion):
1556         (WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseMetaData):
1557         (WebCore::IDBBackingStoreLevelDB::createObjectStore):
1558         (WebCore::IDBBackingStoreLevelDB::deleteObjectStore):
1559         (WebCore::IDBBackingStoreLevelDB::getRecord):
1560         (WebCore::IDBBackingStoreLevelDB::putRecord):
1561         (WebCore::IDBBackingStoreLevelDB::clearObjectStore):
1562         (WebCore::IDBBackingStoreLevelDB::deleteRecord):
1563         (WebCore::IDBBackingStoreLevelDB::getKeyGeneratorCurrentNumber):
1564         (WebCore::IDBBackingStoreLevelDB::maybeUpdateKeyGeneratorCurrentNumber):
1565         (WebCore::IDBBackingStoreLevelDB::keyExistsInObjectStore):
1566         (WebCore::IDBBackingStoreLevelDB::createIndex):
1567         (WebCore::IDBBackingStoreLevelDB::deleteIndex):
1568         (WebCore::IDBBackingStoreLevelDB::putIndexDataForRecord):
1569         (WebCore::IDBBackingStoreLevelDB::findKeyInIndex):
1570         (WebCore::IDBBackingStoreLevelDB::getPrimaryKeyViaIndex):
1571         (WebCore::IDBBackingStoreLevelDB::keyExistsInIndex):
1572         (WebCore::IDBBackingStoreLevelDB::openObjectStoreCursor):
1573         (WebCore::IDBBackingStoreLevelDB::openObjectStoreKeyCursor):
1574         (WebCore::IDBBackingStoreLevelDB::openIndexKeyCursor):
1575         (WebCore::IDBBackingStoreLevelDB::openIndexCursor):
1576         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
1577
1578         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
1579         (WebCore::IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB):
1580         (WebCore::IDBTransactionBackendLevelDB::abort):
1581         (WebCore::IDBTransactionBackendLevelDB::commit):
1582         (WebCore::IDBTransactionBackendLevelDB::taskTimerFired):
1583         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
1584
1585 2013-10-29  Dean Jackson  <dino@apple.com>
1586
1587         Move InlineTextBox's text painting to it's own class
1588         https://bugs.webkit.org/show_bug.cgi?id=123355
1589
1590         Reinstate the LGPL license. I incorrectly told Myles to
1591         use another license on these new files.
1592
1593         * rendering/TextPainter.cpp:
1594         * rendering/TextPainter.h:
1595
1596 2013-10-29  Myles C. Maxfield  <mmaxfield@apple.com>
1597
1598         Move InlineTextBox's text painting to it's own class
1599         https://bugs.webkit.org/show_bug.cgi?id=123355
1600
1601         Reviewed by Dean Jackson.
1602
1603         Implementing text-decoration-skip: ink requires drawing text
1604         twice (once regularly, and once with a thick outline into a mask).
1605         This patch pulls out the relevant text drawing code from
1606         InlineTextBox into a new class, called TextPainter, which can be re-used
1607         to draw text multiple times.
1608
1609         Because there should be no observable difference, no tests need to be updated.
1610
1611         * CMakeLists.txt: Adding new TextPainter class
1612         * GNUmakefile.list.am: Adding new TextPainter class
1613         * WebCore.vcxproj/WebCore.vcxproj: Adding new TextPainter class
1614         * WebCore.vcxproj/WebCore.vcxproj.filters: Adding new TextPainter
1615         class
1616         * WebCore.xcodeproj/project.pbxproj: Adding new TextPainter class
1617         * rendering/InlineTextBox.cpp:
1618         (WebCore::InlineTextBox::paint): Moving text drawing code from
1619         this function
1620         * rendering/RenderingAllInOne.cpp: Adding new TextPainter class
1621         * rendering/TextPainter.cpp: Added.
1622         (WebCore::TextPainter::TextPainter):
1623         (WebCore::drawTextOrEmphasisMarks):
1624         (WebCore::paintTextWithShadows):
1625         (WebCore::rotation):
1626         (WebCore::TextPainter::paintText): New location for text drawing
1627         code
1628         (WebCore::TextPainter::paintTextInContext):
1629         * rendering/TextPainter.h: Added.
1630         (WebCore::SavedDrawingStateForMask::SavedDrawingStateForMask):
1631         (WebCore::TextPainter::boxRect):
1632
1633 2013-10-29  Jer Noble  <jer.noble@apple.com>
1634
1635         [MSE] [Mac] Enable MediaSource on the Mac
1636         https://bugs.webkit.org/show_bug.cgi?id=122484
1637
1638         Reviewed by Darin Adler.
1639
1640         Enable ENABLE_MEDIA_SOURCE.
1641
1642         * Configurations/FeatureDefines.xcconfig:
1643
1644 2013-10-29  Tim Horton  <timothy_horton@apple.com>
1645
1646         Build fix after 158223; make TileController use float for scales.
1647
1648         This matches what we do in other places, and fixes the constant
1649         issue with exporting symbols that include CGFloat.
1650
1651         * WebCore.exp.in:
1652         * platform/graphics/ca/mac/TileController.h:
1653         (WebCore::TileController::scale):
1654         * platform/graphics/ca/mac/TileController.mm:
1655         (WebCore::TileController::setScale):
1656
1657 2013-10-29  Antti Koivisto  <antti@apple.com>
1658
1659         Try to keep MSVC happy.
1660
1661         * rendering/SimpleLineLayout.h:
1662         (WebCore::SimpleLineLayout::Run::Run):
1663
1664 2013-10-29  Tim Horton  <timothy_horton@apple.com>
1665
1666         More correct build fix after 158223.
1667
1668         Only fails in release because it's inline.
1669
1670         * WebCore.exp.in:
1671
1672 2013-10-29  Antti Koivisto  <antti@apple.com>
1673
1674         Use left/right instead of left/width for simple text runs
1675         https://bugs.webkit.org/show_bug.cgi?id=123465
1676
1677         Reviewed by Andreas Kling.
1678
1679         This simplifies the code a bit.
1680
1681         * rendering/SimpleLineLayout.cpp:
1682         (WebCore::SimpleLineLayout::adjustRunOffsets):
1683         (WebCore::SimpleLineLayout::create):
1684         * rendering/SimpleLineLayout.h:
1685         (WebCore::SimpleLineLayout::Run::Run):
1686         * rendering/SimpleLineLayoutResolver.h:
1687         (WebCore::SimpleLineLayout::RunResolver::Run::rect):
1688
1689 2013-10-29  Tim Horton  <timothy_horton@apple.com>
1690
1691         Try fixing the Mac build (though I have no idea why
1692         this wouldn't fail locally)...
1693
1694         * WebCore.exp.in:
1695
1696 2013-10-29  Tim Horton  <timothy_horton@apple.com>
1697
1698         Remote Layer Tree: Support tiled drawing and use it for the main frame
1699         https://bugs.webkit.org/show_bug.cgi?id=123422
1700
1701         Reviewed by Simon Fraser.
1702
1703         * WebCore.exp.in:
1704         * WebCore.xcodeproj/project.pbxproj:
1705
1706 2013-10-29  Eric Carlson  <eric.carlson@apple.com>
1707
1708         [Mac MediaStream] implement AVFoundation backed MediaStreamSource
1709         https://bugs.webkit.org/show_bug.cgi?id=123316
1710
1711         Reviewed by Jer Noble
1712
1713         No new tests, existing tests updated.
1714
1715         * CMakeLists.txt: Add MediaStreamSourceStates.cpp.
1716
1717         * Modules/mediastream/MediaSourceStates.cpp:
1718         (WebCore::MediaSourceStates::MediaSourceStates): m_SourceStates -> m_sourceStates.
1719         (WebCore::MediaSourceStates::sourceType): Ditto.
1720         (WebCore::MediaSourceStates::facingMode): Ditto.
1721         * Modules/mediastream/MediaSourceStates.h: Ditto.
1722         * Modules/mediastream/MediaSourceStates.idl: Mark some attributes as optional.
1723
1724         * Modules/mediastream/MediaStream.cpp:
1725         (WebCore::MediaStream::addTrack):
1726         (WebCore::MediaStream::removeTrack):
1727         (WebCore::MediaStream::addRemoteSource):
1728         (WebCore::MediaStream::removeRemoteSource):
1729
1730         * Modules/mediastream/MediaStreamCapabilities.cpp:
1731         (WebCore::MediaStreamCapabilities::sourceType): MediaSourceStates -> MediaStreamSourceStates
1732         (WebCore::MediaStreamCapabilities::facingMode): Ditto.
1733
1734         * Modules/mediastream/MediaStreamTrack.cpp:
1735         (WebCore::MediaStreamTrack::MediaStreamTrack): Don't observe source changes directly, let the
1736             private track do that. Change private track parameter to ref because it can't be NULL.
1737         (WebCore::MediaStreamTrack::~MediaStreamTrack): Ditto.
1738         (WebCore::MediaStreamTrack::setSource): Pass through to private track.
1739         (WebCore::MediaStreamTrack::stopped): Ditto.
1740         (WebCore::MediaStreamTrack::states): Ditto.
1741         (WebCore::MediaStreamTrack::capabilities): Ditto.
1742         (WebCore::MediaStreamTrack::applyConstraints): Ditto.
1743         (WebCore::MediaStreamTrack::stopProducingData): Ditto.
1744         (WebCore::MediaStreamTrack::trackReadyStateChanged): Renamed from sourceStateChanged. Don't
1745             schedule an 'ended' event if called as a side effect of the stop() method having been
1746             called as per spec.
1747         (WebCore::MediaStreamTrack::trackMutedChanged): Renamed from sourceMutedChanged.
1748         (WebCore::MediaStreamTrack::trackEnabledChanged): Renamed from sourceEnabledChanged.
1749         (WebCore::MediaStreamTrack::stop): Pass through to private track.
1750         * Modules/mediastream/MediaStreamTrack.h:
1751         (WebCore::MediaStreamTrack::Observer::~Observer): Add virtual destructor.
1752
1753         * Modules/mediastream/UserMediaRequest.cpp:
1754         (WebCore::UserMediaRequest::callSuccessHandler): Set track, not source, constraints.
1755
1756         * WebCore.xcodeproj/project.pbxproj: Add new files.
1757
1758         * bindings/js/JSMediaSourceStatesCustom.cpp:
1759         (WebCore::JSMediaSourceStates::facingMode): Return jsUndefined when the facing mode
1760             is Unknown.
1761
1762         * platform/mediastream/MediaStreamCenter.h: Remove unused class forward defines and
1763             undefined method prototype.
1764
1765         * platform/mediastream/MediaStreamDescriptor.cpp:
1766         (WebCore::MediaStreamDescriptor::addSource): ASSERT if source is kind None.
1767         (WebCore::MediaStreamDescriptor::removeSource): Ditto.
1768         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor):
1769
1770         * platform/mediastream/MediaStreamSource.cpp:
1771         (WebCore::MediaStreamSource::setReadyState): Call startProducingData when readyState changes
1772             to Live, stopProducingData when it changes to Ended.
1773         (WebCore::MediaStreamSource::removeObserver): Call stop() when there are no more observers.
1774         (WebCore::MediaStreamSource::setEnabled): If passed false, do nothing unless all observers
1775             are disabled. Call startProducingData/stopProducingData when becoming enabled/disabled.
1776         (WebCore::MediaStreamSource::stop): Don't bother checking to see if other observers have
1777             stopped, the spec says that track.stop() should permanently stop the track's source.
1778         * platform/mediastream/MediaStreamSource.h:
1779         (WebCore::MediaStreamSource::name): Make virtual so derived classes can override.
1780         (WebCore::MediaStreamSource::setName): Ditto.
1781         (WebCore::MediaStreamSource::readyState): Ditto.
1782         (WebCore::MediaStreamSource::enabled): Ditto.
1783         (WebCore::MediaStreamSource::muted): Ditto.
1784         (WebCore::MediaStreamSource::setReadonly): Ditto.
1785         (WebCore::MediaStreamSource::remote): Ditto.
1786         (WebCore::MediaStreamSource::setRemote): Ditto.
1787         (WebCore::MediaStreamSource::startProducingData): Added.
1788         (WebCore::MediaStreamSource::stopProducingData): Added.
1789
1790         * platform/mediastream/MediaStreamSourceCapabilities.h: Move MediaStreamSourceStates to
1791             its own file.
1792
1793         * platform/mediastream/MediaStreamSourceStates.cpp: Added.
1794         (WebCore::MediaStreamSourceStates::facingMode): Moved here from MediaSourceStates so the 
1795             strings are available to platform code.
1796         (WebCore::MediaStreamSourceStates::sourceType): Ditto.
1797         * platform/mediastream/MediaStreamSourceStates.h: Added, moved from MediaStreamSourceCapabilities.h.
1798
1799         * platform/mediastream/MediaStreamTrackPrivate.cpp:
1800         (WebCore::MediaStreamTrackPrivate::create): Pass private track to constructor as PassRefPtr.
1801         (WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate): Initialize member variables.
1802         (WebCore::MediaStreamTrackPrivate::~MediaStreamTrackPrivate): Unregister as source observer.
1803         (WebCore::MediaStreamTrackPrivate::setSource): Unregister/register as source observer.
1804         (WebCore::MediaStreamTrackPrivate::setEnabled): Enable/disable source, call client.
1805         (WebCore::MediaStreamTrackPrivate::stop): New. Set readyState to Ended, optionally stop source.
1806         (WebCore::MediaStreamTrackPrivate::setReadyState): Inline the logic from shouldFireTrackReadyStateChanged.
1807         (WebCore::MediaStreamTrackPrivate::constraints): New, passthrough to the source.
1808         (WebCore::MediaStreamTrackPrivate::states): Ditto.
1809         (WebCore::MediaStreamTrackPrivate::type): Ditto.
1810         (WebCore::MediaStreamTrackPrivate::capabilities): Ditto.
1811         (WebCore::MediaStreamTrackPrivate::applyConstraints): Ditto.
1812         (WebCore::MediaStreamTrackPrivate::sourceReadyStateChanged): React to source changes.
1813         (WebCore::MediaStreamTrackPrivate::sourceMutedChanged): Ditto.
1814         (WebCore::MediaStreamTrackPrivate::sourceEnabledChanged): Ditto.
1815         (WebCore::MediaStreamTrackPrivate::observerIsEnabled): Respond to source query.
1816         (WebCore::MediaStreamTrackPrivate::observerIsStopped): Ditto.
1817         * platform/mediastream/MediaStreamTrackPrivate.h:
1818
1819         * platform/mediastream/mac/AVAudioCaptureSource.h: Added.
1820         * platform/mediastream/mac/AVAudioCaptureSource.mm: Added.
1821
1822         * platform/mediastream/mac/AVCaptureDeviceManager.h: Added.
1823         * platform/mediastream/mac/AVCaptureDeviceManager.mm: Added.
1824
1825         * platform/mediastream/mac/AVMediaCaptureSource.h: Added.
1826         * platform/mediastream/mac/AVMediaCaptureSource.mm: Added.
1827
1828         * platform/mediastream/mac/AVVideoCaptureSource.h: Added.
1829         * platform/mediastream/mac/AVVideoCaptureSource.mm: Added.
1830
1831         * platform/mediastream/mac/MediaStreamCenterMac.cpp:
1832         (WebCore::MediaStreamCenterMac::validateRequestConstraints): Implement.
1833         (WebCore::MediaStreamCenterMac::createMediaStream): Ditto.
1834         (WebCore::MediaStreamCenterMac::getMediaStreamTrackSources): Ditto.
1835
1836         * platform/mock/MockMediaStreamCenter.cpp:
1837         (WebCore::initializeMockSources): Update for MediaStreamSourceStates changes.
1838         (WebCore::MockMediaStreamCenter::createMediaStream):
1839
1840 2013-10-29  Zoltan Horvath  <zoltan@webkit.org>
1841
1842         [CSS Regions][CSS Shapes] Layout error when the shape has negative top coordinate and it's applied on the second region
1843         <https://webkit.org/b/123346>
1844
1845         Reviewed by David Hyatt.
1846
1847         We have a layout error when there is a shape applied on the second region, and it has a negative 'top' coordinate.
1848         Since shapeInsideInfo::shapeLogicalTop() can return negative numbers, we need to check for it, when we're positioning
1849         the first line in the region.
1850
1851         Test: fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top.html
1852
1853         * rendering/RenderBlockLineLayout.cpp:
1854         (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread):
1855
1856 2013-10-29  Brady Eidson  <beidson@apple.com>
1857
1858         Get IDBTransactionBackendLevelDBOperations *almost* ready to go cross platform.
1859         https://bugs.webkit.org/show_bug.cgi?id=123451
1860
1861         Reviewed by NOBODY (My bad, non-reviewed, non-building code got in there)
1862
1863         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
1864         (WebCore::IDBDatabaseBackendImpl::processPendingCalls): Remove the auto line I was trying from review feedback.
1865
1866 2013-10-29  Brady Eidson  <beidson@apple.com>
1867
1868         Get IDBTransactionBackendLevelDBOperations *almost* ready to go cross platform.
1869         https://bugs.webkit.org/show_bug.cgi?id=123451
1870
1871         Reviewed by Andreas Kling.
1872
1873         This involves:
1874         - Splitting out IDBTransactionBackendLevelDB::Operation into its own header
1875         - Splitting out IDBDatabaseBackendImpl::PendingOpenCall into its own header
1876         - Reworking the LevelDB Operations to handle the base class IDBTransactionBackendInterface
1877         - Adding virtual methods in a few of the *Interface classes to support the above
1878
1879         * GNUmakefile.list.am:
1880         * WebCore.xcodeproj/project.pbxproj:
1881
1882         * Modules/indexeddb/IDBCallbacks.h:
1883
1884         * Modules/indexeddb/IDBCursorBackendInterface.h:
1885
1886         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
1887         (WebCore::IDBDatabaseBackendImpl::setIndexKeys):
1888         (WebCore::IDBDatabaseBackendImpl::processPendingCalls):
1889         (WebCore::IDBDatabaseBackendImpl::openConnection):
1890         (WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
1891         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
1892         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
1893
1894         * Modules/indexeddb/IDBOperation.h: Added.
1895         (WebCore::IDBOperation::~IDBOperation):
1896
1897         * Modules/indexeddb/IDBPendingOpenCall.h: Added.
1898         (WebCore::IDBPendingOpenCall::create):
1899         (WebCore::IDBPendingOpenCall::callbacks):
1900         (WebCore::IDBPendingOpenCall::databaseCallbacks):
1901         (WebCore::IDBPendingOpenCall::version):
1902         (WebCore::IDBPendingOpenCall::transactionId):
1903         (WebCore::IDBPendingOpenCall::IDBPendingOpenCall):
1904
1905         * Modules/indexeddb/IDBRequest.h:
1906
1907         * Modules/indexeddb/IDBTransactionBackendInterface.h:
1908
1909         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
1910         (WebCore::IDBCursorBackendLevelDB::CursorIterationOperation::create):
1911         (WebCore::IDBCursorBackendLevelDB::CursorAdvanceOperation::create):
1912         (WebCore::IDBCursorBackendLevelDB::CursorPrefetchIterationOperation::create):
1913         (WebCore::IDBCursorBackendLevelDB::IDBCursorBackendLevelDB):
1914         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
1915
1916         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
1917         (WebCore::IDBTransactionBackendLevelDB::scheduleTask):
1918         (WebCore::IDBTransactionBackendLevelDB::abort):
1919         (WebCore::IDBTransactionBackendLevelDB::taskTimerFired):
1920         (WebCore::IDBTransactionBackendLevelDB::schedulePutOperation):
1921         (WebCore::IDBTransactionBackendLevelDB::scheduleOpenCursorOperation):
1922         (WebCore::IDBTransactionBackendLevelDB::scheduleCountOperation):
1923         (WebCore::IDBTransactionBackendLevelDB::scheduleDeleteRangeOperation):
1924         (WebCore::IDBTransactionBackendLevelDB::scheduleClearOperation):
1925         (WebCore::IDBTransactionBackendLevelDB::createCursorBackend):
1926         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
1927
1928         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
1929         (WebCore::CreateObjectStoreOperation::perform):
1930         (WebCore::CreateIndexOperation::perform):
1931         (WebCore::CreateIndexAbortOperation::perform):
1932         (WebCore::DeleteIndexOperation::perform):
1933         (WebCore::DeleteIndexAbortOperation::perform):
1934         (WebCore::OpenCursorOperation::perform):
1935         (WebCore::DeleteObjectStoreOperation::perform):
1936         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
1937         (WebCore::CreateObjectStoreAbortOperation::perform):
1938         (WebCore::DeleteObjectStoreAbortOperation::perform):
1939         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform):
1940         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:
1941         (WebCore::CreateObjectStoreOperation::create):
1942         (WebCore::CreateObjectStoreOperation::CreateObjectStoreOperation):
1943         (WebCore::DeleteObjectStoreOperation::create):
1944         (WebCore::DeleteObjectStoreOperation::DeleteObjectStoreOperation):
1945         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::create):
1946         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::VersionChangeOperation):
1947         (WebCore::CreateObjectStoreAbortOperation::create):
1948         (WebCore::CreateObjectStoreAbortOperation::CreateObjectStoreAbortOperation):
1949         (WebCore::DeleteObjectStoreAbortOperation::create):
1950         (WebCore::DeleteObjectStoreAbortOperation::DeleteObjectStoreAbortOperation):
1951         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::create):
1952         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::VersionChangeAbortOperation):
1953         (WebCore::CreateIndexOperation::create):
1954         (WebCore::CreateIndexOperation::CreateIndexOperation):
1955         (WebCore::CreateIndexAbortOperation::create):
1956         (WebCore::CreateIndexAbortOperation::CreateIndexAbortOperation):
1957         (WebCore::DeleteIndexOperation::create):
1958         (WebCore::DeleteIndexOperation::DeleteIndexOperation):
1959         (WebCore::DeleteIndexAbortOperation::create):
1960         (WebCore::DeleteIndexAbortOperation::DeleteIndexAbortOperation):
1961         (WebCore::GetOperation::create):
1962         (WebCore::GetOperation::GetOperation):
1963         (WebCore::PutOperation::create):
1964         (WebCore::PutOperation::PutOperation):
1965         (WebCore::SetIndexesReadyOperation::create):
1966         (WebCore::SetIndexesReadyOperation::SetIndexesReadyOperation):
1967         (WebCore::OpenCursorOperation::create):
1968         (WebCore::OpenCursorOperation::OpenCursorOperation):
1969         (WebCore::CountOperation::create):
1970         (WebCore::CountOperation::CountOperation):
1971         (WebCore::DeleteRangeOperation::create):
1972         (WebCore::DeleteRangeOperation::DeleteRangeOperation):
1973         (WebCore::ClearOperation::create):
1974         (WebCore::ClearOperation::ClearOperation):
1975
1976 2013-10-29  Antti Koivisto  <antti@apple.com>
1977
1978         Make SimpleLineLayout::Layout a variable size object
1979         https://bugs.webkit.org/show_bug.cgi?id=123459
1980
1981         Reviewed by Andreas Kling.
1982
1983         Less memory, less indirection.
1984
1985         * rendering/SimpleLineLayout.cpp:
1986         (WebCore::SimpleLineLayout::canUseFor):
1987         (WebCore::SimpleLineLayout::create):
1988         (WebCore::SimpleLineLayout::Layout::create):
1989         (WebCore::SimpleLineLayout::Layout::Layout):
1990         * rendering/SimpleLineLayout.h:
1991         * rendering/SimpleLineLayoutFunctions.cpp:
1992         (WebCore::SimpleLineLayout::hitTestFlow):
1993         * rendering/SimpleLineLayoutFunctions.h:
1994         (WebCore::SimpleLineLayout::computeFlowFirstLineBaseline):
1995         (WebCore::SimpleLineLayout::computeFlowLastLineBaseline):
1996         (WebCore::SimpleLineLayout::findTextCaretMinimumOffset):
1997         (WebCore::SimpleLineLayout::findTextCaretMaximumOffset):
1998         (WebCore::SimpleLineLayout::containsTextCaretOffset):
1999         (WebCore::SimpleLineLayout::isTextRendered):
2000         * rendering/SimpleLineLayoutResolver.h:
2001         (WebCore::SimpleLineLayout::RunResolver::end):
2002
2003 2013-10-29  Andreas Kling  <akling@apple.com>
2004
2005         RenderObject::outlineStyleForRepaint() should return a reference.
2006         <https://webkit.org/b/123453>
2007
2008         Kill a FIXME and make outlineStyleForRepaint() return a RenderStyle&.
2009
2010         Reviewed by Antti Koivisto.
2011
2012 2013-10-29  Andreas Kling  <akling@apple.com>
2013
2014         Move more of SVG resources cache to using RenderElement.
2015         <https://webkit.org/b/123452>
2016
2017         Make some more RenderSVGResourcesCache methods take RenderElement&
2018         instead of RenderObject*.
2019
2020         Also removed a double hash lookup in removeResourcesFromRenderer().
2021
2022         Reviewed by Antti Koivisto.
2023
2024 2013-10-29  Joseph Pecoraro  <pecoraro@apple.com>
2025
2026         Web Inspector: Remove old Inspector.json version files and generators
2027         https://bugs.webkit.org/show_bug.cgi?id=123426
2028
2029         Reviewed by Timothy Hatcher.
2030
2031         * CMakeLists.txt:
2032         * DerivedSources.make:
2033         * GNUmakefile.am:
2034         * GNUmakefile.list.am:
2035         * WebCore.xcodeproj/project.pbxproj:
2036         * inspector/Inspector-0.1.json: Removed.
2037         * inspector/Inspector-1.0.json: Removed.
2038         * inspector/generate-inspector-protocol-version: Removed.
2039
2040 2013-10-29  Philippe Normand  <pnormand@igalia.com>
2041
2042         [GTK] DOM bindings documentation errors
2043         https://bugs.webkit.org/show_bug.cgi?id=123448
2044
2045         Reviewed by Carlos Garcia Campos.
2046
2047         * bindings/gobject/WebKitDOMCustom.h: Basic documentation for
2048         return types.
2049         * bindings/scripts/CodeGeneratorGObject.pm:
2050         (GenerateFunction): Generate Returns documentation tag for
2051         non-void return types and provide basic documentation.
2052         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
2053         Reset tests results.
2054         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
2055         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
2056         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
2057         * bindings/scripts/test/GObject/WebKitDOMTestException.h:
2058         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
2059         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2060         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
2061         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
2062         * bindings/scripts/test/GObject/WebKitDOMattribute.h:
2063
2064 2013-10-24  Brent Fulgham  <bfulgham@apple.com>
2065
2066         Invalid cast in WebCore::toRenderMathMLBlock
2067         https://bugs.webkit.org/show_bug.cgi?id=121728
2068         rdar://problem/15046151
2069
2070         Reviewed by Dean Jackson.
2071
2072         Tested by: mathml/arbitrary-markup.html
2073
2074         * dom/Element.h: Expose childShouldCreateRenderer for
2075         MathML as well as SVG builds.
2076         * dom/Node.h: 
2077         (WebCore::Node::isMathMLElement): Added.
2078         * mathml/MathMLElement.cpp:
2079         (WebCore::MathMLElement::create): Create as MathML Element.
2080         (WebCore::MathMLElement::childShouldCreateRenderer):
2081         Only allow the child to emit a renderer if it is a
2082         MathML element.
2083         * mathml/MathMLElement.h:
2084
2085 2013-10-29  Andreas Kling  <akling@apple.com>
2086
2087         SVG: applyStrokeStyleToContext should take a RenderElement&.
2088         <https://webkit.org/b/123447>
2089
2090         ..and a RenderStyle& too, for that matter.
2091
2092         Reviewed by Anders Carlsson.
2093
2094         * rendering/svg/SVGRenderSupport.h:
2095         * rendering/svg/SVGRenderSupport.cpp:
2096         (WebCore::SVGRenderSupport::applyStrokeStyleToContext):
2097
2098             Have this take a RenderElement& and RenderStyle& instead of
2099             raw pointers. Tweaked a silly-looking loop.
2100
2101         * rendering/svg/RenderSVGShape.h:
2102         * rendering/svg/RenderSVGShape.cpp:
2103
2104             Moved BoundingRectStrokeStyleApplier helper class into the
2105             cpp file since it wasn't being used anywhere else.
2106
2107         * rendering/svg/RenderSVGResourceGradient.cpp:
2108         (WebCore::RenderSVGResourceGradient::applyResource):
2109         * rendering/svg/RenderSVGResourcePattern.cpp:
2110         (WebCore::RenderSVGResourcePattern::applyResource):
2111         * rendering/svg/RenderSVGResourceSolidColor.cpp:
2112         (WebCore::RenderSVGResourceSolidColor::applyResource):
2113
2114             Remove ampersands.
2115
2116 2013-10-29  Antti Koivisto  <antti@apple.com>
2117
2118         Multiple runs per line on simple line path
2119         https://bugs.webkit.org/show_bug.cgi?id=123446
2120
2121         Reviewed by Andreas Kling.
2122
2123         By allowing multiple runs per line we can support text flows with consecutive whitespaces in the middle.
2124
2125         * rendering/SimpleLineLayout.cpp:
2126         (WebCore::SimpleLineLayout::canUseFor):
2127         
2128             Remove space test.
2129             The improved test coverage found a few more cases that we need to disallow.
2130
2131         (WebCore::SimpleLineLayout::adjustRunOffsets):
2132             
2133             Round the run positions and widths so they match line boxes.
2134             Adjust for text-align.
2135
2136         (WebCore::SimpleLineLayout::create):
2137         
2138             Split lines with consecutive spaces into runs.
2139
2140         * rendering/SimpleLineLayout.h:
2141         (WebCore::SimpleLineLayout::Run::Run):
2142         * rendering/SimpleLineLayoutFunctions.cpp:
2143         (WebCore::SimpleLineLayout::hitTestFlow):
2144         (WebCore::SimpleLineLayout::collectFlowOverflow):
2145         (WebCore::SimpleLineLayout::computeTextBoundingBox):
2146         * rendering/SimpleLineLayoutResolver.h:
2147         (WebCore::SimpleLineLayout::RunResolver::Iterator::resolver):
2148         (WebCore::SimpleLineLayout::RunResolver::Iterator::lineIndex):
2149         (WebCore::SimpleLineLayout::RunResolver::Run::Run):
2150         (WebCore::SimpleLineLayout::RunResolver::Run::rect):
2151         (WebCore::SimpleLineLayout::RunResolver::Run::baseline):
2152         (WebCore::SimpleLineLayout::RunResolver::Run::text):
2153         (WebCore::SimpleLineLayout::RunResolver::Run::lineIndex):
2154         (WebCore::SimpleLineLayout::RunResolver::Iterator::Iterator):
2155         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator++):
2156         
2157             Removed unnecessary operators.
2158
2159         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator==):
2160         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator!=):
2161         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator*):
2162         (WebCore::SimpleLineLayout::RunResolver::Iterator::simpleRun):
2163         (WebCore::SimpleLineLayout::RunResolver::RunResolver):
2164         (WebCore::SimpleLineLayout::RunResolver::begin):
2165         (WebCore::SimpleLineLayout::RunResolver::end):
2166         
2167             Resolver -> RunResolver
2168
2169         (WebCore::SimpleLineLayout::LineResolver::Iterator::Iterator):
2170         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator++):
2171         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator==):
2172         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator!=):
2173         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator*):
2174         (WebCore::SimpleLineLayout::LineResolver::LineResolver):
2175         (WebCore::SimpleLineLayout::LineResolver::begin):
2176         (WebCore::SimpleLineLayout::LineResolver::end):
2177         
2178             Add LineResolver around RunResolver. It resolves the line rectangles.
2179
2180         (WebCore::SimpleLineLayout::runResolver):
2181         (WebCore::SimpleLineLayout::lineResolver):
2182
2183 2013-10-29  Chris Fleizach  <cfleizach@apple.com>
2184
2185         AX: elements with explicit tabindex should expose AXFocused as writable, since mouse clicks can focus it
2186         https://bugs.webkit.org/show_bug.cgi?id=121335
2187
2188         Reviewed by Mario Sanchez Prada.
2189
2190         Re-order logic that determines if a <span> should appear as an accessible element. 
2191         The change is that if an element canSetFocus() it should always be in the AX tree.
2192
2193         Test: accessibility/tabindex-elements-are-accessible.html
2194
2195         * accessibility/AccessibilityRenderObject.cpp:
2196         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2197         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2198
2199 2013-10-29  Philippe Normand  <pnormand@igalia.com>
2200
2201         [GTK] enable media-stream in build-webkit
2202         https://bugs.webkit.org/show_bug.cgi?id=123144
2203
2204         Reviewed by Martin Robinson.
2205
2206         * GNUmakefile.list.am: Add new MediaStream files to the GTK port build.
2207
2208 2013-10-28  Chris Fleizach  <cfleizach@apple.com>
2209
2210         AX: Webkit does not expose AXRequired on input type=file
2211         https://bugs.webkit.org/show_bug.cgi?id=123376
2212
2213         Reviewed by Mario Sanchez Prada.
2214
2215         File upload buttons should expose AXRequired, since they take an input state.
2216
2217         * accessibility/AccessibilityNodeObject.cpp:
2218         (WebCore::AccessibilityNodeObject::supportsRequiredAttribute):
2219         (WebCore::AccessibilityNodeObject::alternativeText):
2220
2221 2013-10-29  Jinwoo Song  <jinwoo7.song@samsung.com>
2222
2223         Re-enable simple line layout for EFL
2224         https://bugs.webkit.org/show_bug.cgi?id=123402
2225
2226         Reviewed by Antti Koivisto.
2227
2228         * rendering/SimpleLineLayout.cpp:
2229         (WebCore::SimpleLineLayout::canUseFor): 8-bit TextRun support is now enabled for EFL port, so the port
2230         can use the simple line layout.
2231
2232 2013-10-29  Zan Dobersek  <zdobersek@igalia.com>
2233
2234         Unreviewed, follow-up to r158185. Export the required symbol.
2235         This should fix the Mac debug build.
2236
2237         * WebCore.exp.in:
2238
2239 2013-10-29  Santosh Mahto  <santosh.ma@samsung.com>
2240
2241         Text selected with double-click gets unselected after DOM modification
2242         https://bugs.webkit.org/show_bug.cgi?id=114227
2243
2244         Reviewed by Ryosuke Niwa.
2245
2246         Before this patch when selection is done by double-click (start and base remain
2247         same) and DOM is modified then selection gets vanished. This does not
2248         happen when selection is done by dragging mouse. This happens because
2249         on double-click base and extent remain the same and on DOM
2250         modification we update the selection with base and extent, so we loose
2251         the selection. Since in double-click case start/end contain the
2252         correct selection, same should be used after dom modification to
2253         update selection.
2254
2255         Test: editing/selection/double-click-selection-with-dom-mutation.html
2256
2257         * editing/FrameSelection.cpp:
2258         (WebCore::FrameSelection::textWasReplaced): use start/end to update
2259         selection in case double click selection. Added a check for base !=
2260         extent, if base != extent use base/extent to update the selection
2261         otherwise use start/end with directionality check.
2262
2263 2013-10-29  Mihnea Ovidenie  <mihnea@adobe.com>
2264
2265         [CSSRegions] Display anonymous regions in DRT
2266         https://bugs.webkit.org/show_bug.cgi?id=122963
2267
2268         Reviewed by Alexandru Chiculita.
2269
2270         After https://bugs.webkit.org/show_bug.cgi?id=119135, css regions are modelled using an anonymous
2271         RenderNamedFlowFragment object inside the block having a valid -webkit-flow-from.
2272         This patch changes the way elements | pseudo-elements with -webkit-flow-from are displayed
2273         in test dumps.
2274
2275         Before:
2276             RenderRegion {DIV} at (200,200) size 52x52 [border: (1px solid #000000)]
2277         After:
2278             RenderBlock (positioned) {DIV} at (200,200) size 52x52 [border: (1px solid #000000)]
2279                 RenderNamedFlowFragment at (1,1) size 50x50
2280
2281         Before:
2282             Flow Threads
2283                 Thread with flow-name 'article'
2284                 Regions for flow 'article'
2285                     RenderRegion {DIV} #region_1
2286                     RenderRegion {DIV} #region_2
2287         After:
2288             Named flows
2289                 Named flow 'article'
2290                 Regions for named flow 'article'
2291                     RenderNamedFlowFragment (anonymous child of {DIV::before} #region_1)
2292                     RenderNamedFlowFragment (anonymous child of {DIV} #region_2)
2293
2294         Changed existing tests based on the new dumps.
2295
2296         * rendering/RenderBlock.cpp:
2297         (WebCore::RenderBlock::renderName):
2298         * rendering/RenderNamedFlowFragment.h: Add a comment explaining the purpose of the class.
2299         * rendering/RenderRegion.h:
2300         * rendering/RenderTreeAsText.cpp:
2301         (WebCore::write):
2302         (WebCore::writeRenderRegionList): Adjust function to display info for anonymous regions too.
2303         (WebCore::writeRenderNamedFlowThreads): Separate dump of valid and invalid regions for a named flow.
2304
2305 2013-10-29  Zan Dobersek  <zdobersek@igalia.com>
2306
2307         Move writeIndent, overloaded << operators from RenderTreeAsText to TextStream
2308         https://bugs.webkit.org/show_bug.cgi?id=116012
2309
2310         Reviewed by Simon Fraser.
2311
2312         The writeIndent method and overloaded << operators for writing out vectors and points and rectangles
2313         of various types are not specific to the render tree nor do they depend on any rendering-specific interface.
2314
2315         * page/scrolling/ScrollingStateNode.cpp:
2316         * page/scrolling/ScrollingStateNode.h:
2317         (ScrollingStateNode): Remove the writeIndent declaration, it's functionally the same as the TextStream method.
2318         * platform/graphics/GraphicsLayer.cpp:
2319         * platform/graphics/GraphicsLayer.h:
2320         (GraphicsLayer): Ditto.
2321         * platform/graphics/filters/DistantLightSource.cpp: Remove the RenderTreeAsText.h inclusion or replace it with
2322         the inclusion of the TextStream.h header where required. The writeIndent method is now declared there.
2323         * platform/graphics/filters/FEBlend.cpp: Ditto.
2324         * platform/graphics/filters/FEColorMatrix.cpp: Ditto.
2325         * platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
2326         * platform/graphics/filters/FEComposite.cpp: Ditto.
2327         * platform/graphics/filters/FEConvolveMatrix.cpp: Ditto.
2328         * platform/graphics/filters/FECustomFilter.cpp: Ditto.
2329         * platform/graphics/filters/FEDiffuseLighting.cpp: Ditto.
2330         * platform/graphics/filters/FEDisplacementMap.cpp: Ditto.
2331         * platform/graphics/filters/FEDropShadow.cpp: Ditto.
2332         * platform/graphics/filters/FEFlood.cpp: Ditto.
2333         * platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
2334         * platform/graphics/filters/FEMerge.cpp: Ditto.
2335         * platform/graphics/filters/FEMorphology.cpp: Ditto.
2336         * platform/graphics/filters/FEOffset.cpp: Ditto.
2337         * platform/graphics/filters/FESpecularLighting.cpp: Ditto.
2338         * platform/graphics/filters/FETurbulence.cpp: Ditto.
2339         * platform/graphics/filters/SourceAlpha.cpp: Ditto.
2340         * platform/graphics/filters/SourceGraphic.cpp: Ditto.
2341         * platform/text/TextStream.cpp: Move the writeIndent and operators' definitions here.
2342         (WebCore::operator<<):
2343         (WebCore):
2344         (WebCore::writeIndent):
2345         * platform/text/TextStream.h: Move the writeIndent and operators' declarations here.
2346         (WebCore):
2347         (TextStream):
2348         (WebCore::TextStream::operator<<):
2349         * rendering/RenderTreeAsText.cpp: Move the writeIndent and operators' definitions into TextStream.
2350         (WebCore):
2351         * rendering/RenderTreeAsText.h: Move the writeIndent and operators' declarations into TextStream.
2352         (WebCore):
2353
2354 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
2355
2356         Clean up ScopedEventQueue
2357         https://bugs.webkit.org/show_bug.cgi?id=123408
2358
2359         Reviewed by Darin Adler.
2360
2361         Clean up the ScopedEventQueue implementation. ScopedEventQueue::instance() should return a reference to a
2362         NeverDestroyed<ScopedEventQueue> object. The static ScopedEventQueue::s_instance pointer is removed.
2363
2364         The ScopedEventQueue destructor, the dispatchAllEvents method and the scope level incrementation/decrementation
2365         methods are made private. NeverDestroyed<ScopedEventQueue> and EventQueueScope are made friends of the
2366         ScopedEventQueue class so they can access the constructor and the incrementation/decrementation methods, respectively.
2367
2368         ScopedEventQueue method definitions are reordered to follow the order of their declarations in the header file.
2369         ScopedEventQueue::dispatchAllEvents() now uses std::move to efficiently dispatch and clear all currently queued events.
2370
2371         * dom/EventDispatcher.cpp:
2372         (WebCore::EventDispatcher::dispatchScopedEvent):
2373         * dom/ScopedEventQueue.cpp:
2374         (WebCore::ScopedEventQueue::instance):
2375         (WebCore::ScopedEventQueue::dispatchAllEvents):
2376         * dom/ScopedEventQueue.h:
2377         (WebCore::EventQueueScope::EventQueueScope):
2378         (WebCore::EventQueueScope::~EventQueueScope):
2379
2380 2013-10-28  Andreas Kling  <akling@apple.com>
2381
2382         applyTextTransform() should take a const RenderStyle&.
2383         <https://webkit.org/b/123434>
2384
2385         This function is always called with an existing RenderStyle object.
2386
2387         Reviewed by Anders Carlsson.
2388
2389 2013-10-28  Andreas Kling  <akling@apple.com>
2390
2391         RenderSVGResource::applyResource() should take a const RenderStyle&.
2392         <https://webkit.org/b/123433>
2393
2394         These functions are always called with an existing RenderStyle object
2395         so let them take a const reference instead of a raw pointer.
2396         Also sprinkled some missing OVERRIDEs.
2397
2398         Reviewed by Anders Carlsson.
2399
2400 2013-10-28  Andreas Kling  <akling@apple.com>
2401
2402         Remove unused RenderTextControl::textBaseStyle().
2403         <https://webkit.org/b/123432>
2404
2405         Reviewed by Anders Carlsson.
2406
2407 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
2408
2409         HTML input type objects should be managed through std::unique_ptr
2410         https://bugs.webkit.org/show_bug.cgi?id=123160
2411
2412         Reviewed by Darin Adler.
2413
2414         Make the constructors of the InputType subclasses public. This makes it possible to use std::make_unique on these classes
2415         and makes the T::create() helpers redundant. New instances of these classes are now managed through std::unique_ptr.
2416
2417         InputType::create() now uses a NeverDestroyed InputTypeFactoryMap that maps type names to InputTypeFactoryFunctions and
2418         gets populated when the method is first called and the map is still empty. Certain types are not added to the factory map
2419         if they're disabled at runtime.
2420
2421         The factory is used to create the new InputType object if the requested type was found in the map, and TextInputType is used otherwise.
2422
2423         * html/ButtonInputType.cpp:
2424         * html/ButtonInputType.h:
2425         (WebCore::ButtonInputType::ButtonInputType):
2426         * html/CheckboxInputType.cpp:
2427         * html/CheckboxInputType.h:
2428         (WebCore::CheckboxInputType::CheckboxInputType):
2429         * html/ColorInputType.cpp:
2430         * html/ColorInputType.h:
2431         (WebCore::ColorInputType::ColorInputType):
2432         * html/DateInputType.cpp:
2433         * html/DateInputType.h:
2434         * html/DateTimeInputType.cpp:
2435         * html/DateTimeInputType.h:
2436         (WebCore::DateTimeInputType::DateTimeInputType):
2437         * html/DateTimeLocalInputType.cpp:
2438         * html/DateTimeLocalInputType.h:
2439         (WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
2440         * html/EmailInputType.cpp:
2441         * html/EmailInputType.h:
2442         (WebCore::EmailInputType::EmailInputType):
2443         * html/FileInputType.cpp:
2444         * html/FileInputType.h:
2445         * html/HTMLInputElement.cpp:
2446         (WebCore::HTMLInputElement::updateType):
2447         * html/HTMLInputElement.h:
2448         * html/HiddenInputType.cpp:
2449         * html/HiddenInputType.h:
2450         (WebCore::HiddenInputType::HiddenInputType):
2451         * html/ImageInputType.cpp:
2452         (WebCore::ImageInputType::ImageInputType):
2453         * html/ImageInputType.h:
2454         * html/InputType.cpp:
2455         (WebCore::createInputType): A templated helper that constructs a new InputType subclass object through std::make_unique.
2456         (WebCore::populateInputTypeFactoryMap): Populates the passed-in map with type-createInputType<T> pairs.
2457         (WebCore::InputType::create): Get the InputTypeFactoryFunction for the specified type, or fall back to TextInputType.
2458         (WebCore::InputType::createText):
2459         * html/InputType.h:
2460         * html/MonthInputType.cpp:
2461         * html/MonthInputType.h:
2462         (WebCore::MonthInputType::MonthInputType):
2463         * html/NumberInputType.cpp:
2464         * html/NumberInputType.h:
2465         (WebCore::NumberInputType::NumberInputType):
2466         * html/PasswordInputType.cpp:
2467         * html/PasswordInputType.h:
2468         (WebCore::PasswordInputType::PasswordInputType):
2469         * html/RadioInputType.cpp:
2470         * html/RadioInputType.h:
2471         (WebCore::RadioInputType::RadioInputType):
2472         * html/RangeInputType.cpp:
2473         * html/RangeInputType.h:
2474         * html/ResetInputType.cpp:
2475         * html/ResetInputType.h:
2476         (WebCore::ResetInputType::ResetInputType):
2477         * html/SearchInputType.cpp:
2478         (WebCore::SearchInputType::SearchInputType):
2479         * html/SearchInputType.h:
2480         * html/SubmitInputType.cpp:
2481         * html/SubmitInputType.h:
2482         (WebCore::SubmitInputType::SubmitInputType):
2483         * html/TelephoneInputType.cpp:
2484         * html/TelephoneInputType.h:
2485         (WebCore::TelephoneInputType::TelephoneInputType):
2486         * html/TextInputType.cpp:
2487         * html/TextInputType.h:
2488         (WebCore::TextInputType::TextInputType):
2489         * html/TimeInputType.cpp:
2490         * html/TimeInputType.h:
2491         * html/URLInputType.cpp:
2492         * html/URLInputType.h:
2493         (WebCore::URLInputType::URLInputType):
2494         * html/WeekInputType.cpp:
2495         * html/WeekInputType.h:
2496         (WebCore::WeekInputType::WeekInputType):
2497
2498 2013-10-28  Brady Eidson  <beidson@apple.com>
2499
2500         Refactor IDB factory creation.
2501         https://bugs.webkit.org/show_bug.cgi?id=123347
2502
2503         Reviewed by Andreas Kling.
2504
2505         - Rework how database directory location is passed around.
2506         - Make (some) SecurityOrigin arguments be references instead of pointers.
2507         - Add two SecurityOrigin arguments to opening databases for future use.
2508
2509         * Modules/indexeddb/IDBFactory.cpp:
2510         (WebCore::IDBFactory::openInternal):
2511
2512         * Modules/indexeddb/IDBFactoryBackendInterface.cpp:
2513         (WebCore::IDBFactoryBackendInterface::create):
2514         * Modules/indexeddb/IDBFactoryBackendInterface.h:
2515
2516         * Modules/indexeddb/PageGroupIndexedDatabase.cpp:
2517         (WebCore::PageGroupIndexedDatabase::PageGroupIndexedDatabase):
2518         (WebCore::PageGroupIndexedDatabase::from):
2519         (WebCore::PageGroupIndexedDatabase::factoryBackend):
2520         * Modules/indexeddb/PageGroupIndexedDatabase.h:
2521
2522         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp:
2523         (WebCore::WorkerGlobalScopeIndexedDatabase::WorkerGlobalScopeIndexedDatabase):
2524         (WebCore::WorkerGlobalScopeIndexedDatabase::from):
2525         (WebCore::WorkerGlobalScopeIndexedDatabase::indexedDB):
2526         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h:
2527
2528         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
2529         (WebCore::IDBBackingStoreLevelDB::open):
2530         (WebCore::IDBBackingStoreLevelDB::openInMemory):
2531         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
2532
2533         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
2534         (WebCore::computeFileIdentifier):
2535         (WebCore::computeUniqueIdentifier):
2536         (WebCore::IDBFactoryBackendLevelDB::IDBFactoryBackendLevelDB):
2537         (WebCore::IDBFactoryBackendLevelDB::getDatabaseNames):
2538         (WebCore::IDBFactoryBackendLevelDB::deleteDatabase):
2539         (WebCore::IDBFactoryBackendLevelDB::openBackingStore):
2540         (WebCore::IDBFactoryBackendLevelDB::open):
2541         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
2542         (WebCore::IDBFactoryBackendLevelDB::create):
2543
2544         * WebCore.exp.in:
2545
2546         * platform/DatabaseStrategy.cpp:
2547         (WebCore::DatabaseStrategy::createIDBFactoryBackend):
2548         * platform/DatabaseStrategy.h:
2549
2550 2013-10-28  Andreas Kling  <akling@apple.com>
2551
2552         RenderElement::style() should return a reference.
2553         <https://webkit.org/b/123414>
2554
2555         Now that renderers always have style, go ahead and make style()
2556         return a RenderStyle&.
2557
2558         There are countless opportunities for further cleanup enabled by
2559         this change. I'm simply passing &style() in many cases where we
2560         can really do something nicer instead.
2561
2562         Reviewed by Anders Carlsson.
2563
2564 2013-10-28  Tim Horton  <timothy_horton@apple.com>
2565
2566         Make TileController create the appropriate PlatformCALayer subclasses
2567         https://bugs.webkit.org/show_bug.cgi?id=123418
2568
2569         Reviewed by Simon Fraser.
2570
2571         Add PlatformCALayer::createCompatibleLayer, which is overridden in
2572         each of the subclasses to create a PlatformCALayer instance of the same
2573         subclass. This is used in TileController to make bare PlatformCALayers
2574         of the correct type (Mac, Win, or Remote).
2575
2576         * platform/graphics/ca/PlatformCALayer.h:
2577         * platform/graphics/ca/mac/PlatformCALayerMac.h:
2578         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
2579         (PlatformCALayerMac::createCompatibleLayer):
2580         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
2581         (PlatformCALayerWin::createCompatibleLayer):
2582         * platform/graphics/ca/win/PlatformCALayerWin.h:
2583         Add createCompatibleLayer and implement it in the subclasses.
2584
2585         * platform/graphics/ca/mac/TileController.mm:
2586         (WebCore::TileController::TileController):
2587         (WebCore::TileController::tiledScrollingIndicatorLayer):
2588         (WebCore::TileController::createTileLayer):
2589         Make use of createCompatibleLayer when creating PlatformCALayers.
2590
2591 2013-10-28  Alexandru Chiculita  <achicu@adobe.com>
2592
2593         Web Inspector: CSS Regions: Add protocol API to expose content nodes addition/removal
2594         https://bugs.webkit.org/show_bug.cgi?id=123424
2595
2596         Reviewed by Timothy Hatcher.
2597
2598         Test: inspector-protocol/model/content-flow-content-nodes.html
2599
2600         Adding two new inspector-protocol APIs to handle the cases when new elements are
2601         added or removed from a named flow. These APIs will trigger even though there
2602         is no region associated with the named flow.
2603
2604         * inspector/Inspector.json:
2605         * inspector/InspectorCSSAgent.cpp:
2606         (WebCore::InspectorCSSAgent::didRegisterNamedFlowContentElement):
2607         (WebCore::InspectorCSSAgent::didUnregisterNamedFlowContentElement):
2608         * inspector/InspectorCSSAgent.h:
2609         * inspector/InspectorInstrumentation.cpp:
2610         (WebCore::InspectorInstrumentation::didRegisterNamedFlowContentElementImpl):
2611         (WebCore::InspectorInstrumentation::didUnregisterNamedFlowContentElementImpl):
2612         * inspector/InspectorInstrumentation.h:
2613         (WebCore::InspectorInstrumentation::didRegisterNamedFlowContentElement):
2614         (WebCore::InspectorInstrumentation::didUnregisterNamedFlowContentElement):
2615         * rendering/RenderNamedFlowThread.cpp:
2616         (WebCore::RenderNamedFlowThread::registerNamedFlowContentElement):
2617         (WebCore::RenderNamedFlowThread::unregisterNamedFlowContentElement):
2618
2619 2013-10-28  Joseph Pecoraro  <pecoraro@apple.com>
2620
2621         Web Inspector: Remove unused inspector/inline-javascript-imports.py
2622         https://bugs.webkit.org/show_bug.cgi?id=123425
2623
2624         Reviewed by Timothy Hatcher.
2625
2626         * inspector/inline-javascript-imports.py: Removed.
2627
2628 2013-10-28  Joseph Pecoraro  <pecoraro@apple.com>
2629
2630         Web Inspector: Remove unused "externs" files and generators
2631         https://bugs.webkit.org/show_bug.cgi?id=123427
2632
2633         Reviewed by Timothy Hatcher.
2634
2635         * inspector/InjectedScriptExterns.js: Removed.
2636         * inspector/generate_protocol_externs.py: Removed.
2637
2638 2013-10-28  Joseph Pecoraro  <pecoraro@apple.com>
2639
2640         Upstream remaining PLATFORM(IOS) and ENABLE(REMOTE_INSPECTOR) pieces
2641         https://bugs.webkit.org/show_bug.cgi?id=123411
2642
2643         Reviewed by Timothy Hatcher.
2644
2645         Include an InspectorClient hook for when node searching is enabled / disabled.
2646
2647         * inspector/InspectorClient.h:
2648         (WebCore::InspectorClient::didSetSearchingForNode):
2649         * inspector/InspectorDOMAgent.cpp:
2650         (WebCore::InspectorDOMAgent::setSearchingForNode):
2651         * inspector/InspectorOverlay.cpp:
2652         (WebCore::InspectorOverlay::didSetSearchingForNode):
2653         * inspector/InspectorOverlay.h:
2654
2655 2013-10-28  Benjamin Poulain  <benjamin@webkit.org>
2656
2657         Rename applyPageScaleFactorInCompositor to delegatesPageScaling
2658         https://bugs.webkit.org/show_bug.cgi?id=123417
2659
2660         Reviewed by Simon Fraser.
2661
2662         * page/Frame.cpp:
2663         (WebCore::Frame::frameScaleFactor):
2664         * page/FrameView.cpp:
2665         (WebCore::FrameView::visibleContentScaleFactor):
2666         * page/Page.cpp:
2667         (WebCore::Page::setPageScaleFactor):
2668         * page/Settings.in:
2669         * platform/ScrollView.h:
2670         * rendering/RenderLayerCompositor.cpp:
2671         (WebCore::RenderLayerCompositor::addToOverlapMap):
2672
2673 2013-10-28  Myles C. Maxfield  <mmaxfield@apple.com>
2674
2675         Parsing support for -webkit-text-decoration-skip: ink
2676         https://bugs.webkit.org/show_bug.cgi?id=123358
2677
2678         Reviewed by Dean Jackson.
2679
2680         Adds initial parsing support for parsing -webkit-text-decoration-skip with
2681         values of "none" and "ink". This work is behind the new
2682         ENABLE(CSS3_TEXT_DECORATION) compile-time flag.
2683
2684         Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-roundtrip.html
2685
2686         * Configurations/FeatureDefines.xcconfig: Adding ENABLE(CSS3_TEXT_DECORATION)
2687         * css/CSSComputedStyleDeclaration.cpp: Mapping internal representation of text-decoration-skip
2688         to a CSSValue
2689         (WebCore::renderTextDecorationSkipFlagsToCSSValue):
2690         (WebCore::ComputedStyleExtractor::propertyValue):
2691         * css/CSSParser.cpp: Actually parsing tokens
2692         (WebCore::CSSParser::parseValue):
2693         (WebCore::CSSParser::parseTextDecorationSkip):
2694         * css/CSSParser.h:
2695         * css/CSSPropertyNames.in: adding -webkit-text-decoration-skip
2696         * css/CSSValueKeywords.in: adding ink
2697         * css/DeprecatedStyleBuilder.cpp: Mapping from CSSValue to internal representation
2698         (WebCore::ApplyPropertyTextDecorationSkip::valueToDecorationSkip):
2699         (WebCore::ApplyPropertyTextDecorationSkip::applyValue):
2700         (WebCore::ApplyPropertyTextDecorationSkip::createHandler):
2701         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
2702         * css/StyleResolver.cpp: decoration-skip uses DeprecatedStyleBuilder
2703         (WebCore::StyleResolver::applyProperty):
2704         * rendering/style/RenderStyle.h: Adding functions for modifying and accessing decoration-skip properties
2705         * rendering/style/RenderStyleConstants.h: Definition of internal representation
2706         * rendering/style/StyleRareInheritedData.cpp: Setting up constructors and comparators
2707         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2708         (WebCore::StyleRareInheritedData::operator==):
2709         * rendering/style/StyleRareInheritedData.h: Holds actual value of internal representation
2710
2711 2013-10-28  Anders Carlsson  <andersca@apple.com>
2712
2713         RunLoop::dispatch should take an std::function
2714         https://bugs.webkit.org/show_bug.cgi?id=123407
2715
2716         Reviewed by Andreas Kling.
2717
2718         * WebCore.exp.in:
2719         * platform/RunLoop.cpp:
2720         (WebCore::RunLoop::performWork):
2721         (WebCore::RunLoop::dispatch):
2722         * platform/RunLoop.h:
2723
2724 2013-10-28  Tim Horton  <timothy_horton@apple.com>
2725
2726         Make TileController manipulate PlatformCALayers instead of CALayers
2727         https://bugs.webkit.org/show_bug.cgi?id=123279
2728
2729         Reviewed by Simon Fraser.
2730
2731         In the interest of making TileController more platform-independent
2732         (so that it can be used with the remote layer tree, and maybe Windows),
2733         move TileController onto our PlatformCALayer abstraction instead of
2734         direct manipulation of CALayers.
2735
2736         Some fallout from this includes getting rid of special Mac-specific
2737         TileController-specific CALayer subclasses, and reworking tile
2738         painting to work in a more generic way.
2739
2740         This is a first step, and doesn't get us all the way to a platform independent
2741         TileController, but more patches are forthcoming.
2742
2743         No new tests, just a (largeish) refactor.
2744
2745         * WebCore.exp.in:
2746         The signature of some methods has changed.
2747
2748         * WebCore.xcodeproj/project.pbxproj:
2749         Remove WebTileLayer.*
2750
2751         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
2752         (WebCore::ScrollingTreeScrollingNodeMac::logExposedUnfilledArea):
2753         Use the "isTile" key on the CALayer dictionary instead of the layer's
2754         class to determine if it's a tile. TileController will set this on a tile
2755         when it is created, for now.
2756
2757         * platform/graphics/TiledBacking.h:
2758         tiledScrollingIndicatorLayer() should return a PlatformCALayer.
2759
2760         * platform/graphics/ca/GraphicsLayerCA.cpp:
2761         (WebCore::GraphicsLayerCA::platformCALayerPaintContents):
2762         * platform/graphics/ca/GraphicsLayerCA.h:
2763         (WebCore::GraphicsLayerCA::platformCALayerIncrementRepaintCount):
2764         * platform/graphics/ca/PlatformCALayerClient.h:
2765         The PlatformCALayerClient paintContents and incrementRepaintCount callbacks
2766         should include the platformCALayer that caused the callback.
2767
2768         * platform/graphics/ca/PlatformCALayer.h:
2769         Add LayerTypeSimpleLayer, which is similar to LayerTypeWebLayer
2770         except it just calls back its client to paint, instead of doing
2771         complicated things with repaint rects. This is so that TileController
2772         doesn't re-enter drawLayerContents when asking its GraphicsLayer
2773         to paint for each PlatformCALayer (it will be entering drawLayerContents
2774         for the first time for each layer). It also happens to be useful
2775         for things like the tile controller overlay, which don't need
2776         all that complication.
2777
2778         Add LayerTypeTiledBackingTileLayer, which is used simply to distinguish
2779         TileController Tile layers from other LayerTypeSimpleLayers.
2780
2781         * platform/graphics/ca/mac/LayerPool.h:
2782         * platform/graphics/ca/mac/LayerPool.mm:
2783         (WebCore::LayerPool::addLayer):
2784         (WebCore::LayerPool::takeLayerWithSize):
2785         LayerPool should operate on PlatformCALayers now.
2786
2787         * platform/graphics/ca/mac/PlatformCALayerMac.h:
2788         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
2789         (PlatformCALayerMac::PlatformCALayerMac):
2790         Set the "isTile" key on the CALayer to true for TiledBackingTileLayers,
2791         so that the scrolling performance logging can tell a tile apart from
2792         any other layer, on the scrolling thread, without touching PlatformCALayers
2793         or the TileController or any other main-thread data structures.
2794
2795         (PlatformCALayerMac::setEdgeAntialiasingMask): Added.
2796         * platform/graphics/ca/mac/TileController.h:
2797         Remove references to Objective-C classes; instead use PlatformCALayer everywhere.
2798         TileController is now a PlatformCALayerClient, and the layers it owns are
2799         all PlatformCALayers (and it is constructed with a PlatformCALayer, etc.).
2800         Hand in the tile debug border color as a WebCore color, instead of a CGColorRef.
2801         blankPixelCountForTiles() now operates on a list of PlatformLayers instead of
2802         WebTileLayers specifically, since WebTileLayer is gone.
2803         Make drawTileMapContents private because WebTileCacheMapLayer no longer exists.
2804
2805         (WebCore::TileController::platformCALayerDrawsContent):
2806         All of the layers who have TileController as their client paint their contents.
2807
2808         (WebCore::TileController::platformCALayerContentsOpaque):
2809         This will only be called for layers which paint via drawLayerContents,
2810         so it's OK that we don't special-case the debugging overlay here.
2811
2812         (WebCore::TileController::owningGraphicsLayer):
2813         Return the GraphicsLayer that owns the TileController's main
2814         layer, via its conformance to PlatformCALayerClient. This is
2815         a bit strange (because it's not strictly a GraphicsLayer, despite
2816         always being so at the moment), but is done for clarity inside
2817         TileController itself.
2818
2819         * platform/graphics/ca/mac/TileController.mm:
2820         Remove CALayer (WebCALayerDetails), WebTiledScrollingIndicatorLayer,
2821         and a bunch of includes that we don't need anymore.
2822
2823         (WebCore::TileController::create):
2824         (WebCore::TileController::TileController):
2825         TileController is passed a PlatformCALayer for the tile cache root layer,
2826         instead of a WebTiledBackingLayer. It also creates a PlatformCALayer with
2827         LayerTypeLayer instead of a bare CALayer for the container layer.
2828         It's OK to remove the transaction because it was only used to stop
2829         the implicit animation, which PlatformCALayer will do for us.
2830
2831         (WebCore::TileController::~TileController):
2832         Clear the owner of the PlatformCALayers which the TileController previously owned,
2833         so they don't try to call back a destroyed TileController.
2834
2835         (WebCore::TileController::tileCacheLayerBoundsChanged):
2836         (WebCore::TileController::setNeedsDisplay):
2837         Straightforward adjustments towards use of PlatformCALayer.
2838
2839         (WebCore::TileController::setTileNeedsDisplayInRect):
2840         Adjustments towards use of PlatformCALayer; we need FloatRects so we can
2841         pass pointers to PlatformCALayer::setNeedsDisplay.
2842
2843         (WebCore::TileController::platformCALayerPaintContents):
2844         Replace drawLayer with platformCALayerPaintContents, which will be called
2845         back from our various WebSimpleLayers. If the PlatformCALayer is our
2846         tiled scrolling debug indicator, paint that. Otherwise, it's a tile.
2847         Make use of drawLayerContents() to paint the tile contents.
2848         Make use of drawRepaintIndicator() to paint the repaint indicator if needed.
2849         Move scrolling performance logging code that used to be in WebTileLayer here.
2850
2851         (WebCore::TileController::platformCALayerDeviceScaleFactor):
2852         (WebCore::TileController::platformCALayerShowDebugBorders):
2853         (WebCore::TileController::platformCALayerShowRepaintCounter):
2854         Forward these to the owning GraphicsLayerCA, because it will have the right answers.
2855
2856         (WebCore::TileController::setScale):
2857         Adjustments towards use of PlatformCALayer; remove some code that Simon
2858         caused to be unused in 156291 but did not remove.
2859
2860         (WebCore::TileController::setAcceleratesDrawing):
2861         (WebCore::TileController::setTilesOpaque):
2862         (WebCore::TileController::setVisibleRect):
2863         (WebCore::TileController::revalidateTiles):
2864         (WebCore::TileController::setTileDebugBorderWidth):
2865         (WebCore::TileController::setTileDebugBorderColor):
2866         (WebCore::TileController::bounds):
2867         (WebCore::TileController::blankPixelCount):
2868         (WebCore::TileController::blankPixelCountForTiles):
2869         (WebCore::queueTileForRemoval):
2870         (WebCore::TileController::setNeedsRevalidateTiles):
2871         (WebCore::TileController::ensureTilesForRect):
2872         (WebCore::TileController::retainedTileBackingStoreMemory):
2873         Straightforward adjustments towards use of PlatformCALayer.
2874
2875         (WebCore::TileController::updateTileCoverageMap):
2876         Adjustments towards use of PlatformCALayer; rename backgroundColor
2877         to visibleRectIndicatorColor, since it's actually a border, not a background.
2878
2879         (WebCore::TileController::tiledScrollingIndicatorLayer):
2880         Create a LayerTypeSimpleLayer PlatformCALayer for the tiled scrolling indicator.
2881         It will be asked to paint straightforwardly, like a CALayer would.
2882         Create a LayerTypeLayer PlatformCALayer for the visible rect indicator.
2883         It doesn't need to paint anything, so it doesn't get an owner.
2884
2885         (WebCore::TileController::createTileLayer):
2886         When creating a new tile layer, adopt it by setting its owner.
2887         Otherwise, straightforward adjustments towards use of PlatformCALayer.
2888
2889         (WebCore::TileController::platformCALayerIncrementRepaintCount):
2890         Manage repaint counts for tiles in TileController now.
2891
2892         (WebCore::TileController::drawTileMapContents):
2893         Adjustments towards use of PlatformCALayer.
2894
2895         * platform/graphics/ca/mac/WebTileLayer.h: Removed.
2896         * platform/graphics/ca/mac/WebTileLayer.mm: Removed.
2897         We don't need WebTileLayer anymore, tiles are now just WebSimpleLayers
2898         owned by TileController. Its behavior has been moved into TileController.
2899
2900         * platform/graphics/ca/mac/WebTiledBackingLayer.h:
2901         * platform/graphics/ca/mac/WebTiledBackingLayer.mm:
2902         (-[WebTiledBackingLayer createTileController:]):
2903         Add createTileController: so that the WebTiledBackingLayer's owner can
2904         hand the TileController the PlatformCALayer for the WebTiledBackingLayer
2905         without propagating additional usage of PlatformCALayer::platformCALayer(),
2906         which we need to remove in light of the remote layer tree work.
2907
2908         (-[WebTiledBackingLayer setBorderColor:]):
2909
2910         * platform/graphics/ca/win/PlatformCALayerWin.h:
2911         Add an empty implementation of setEdgeAntialiasingMask.
2912         We'll probably want to implement it before adopting TileController on Windows.
2913
2914         * platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
2915         (PlatformCALayerWinInternal::displayCallback):
2916         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2917         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerPaintContents):
2918         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerIncrementRepaintCount):
2919         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
2920         (WebCore::LayerClient::platformCALayerPaintContents):
2921         (WebCore::LayerClient::platformCALayerIncrementRepaintCount):
2922         Adjust for new parameters on PlatformCALayerClient callbacks.
2923
2924         * platform/graphics/mac/WebLayer.h:
2925         Add WebSimpleLayer, which inherits directly from CALayer, and make
2926         our standard WebLayer (which is used for compositing layers in web content)
2927         inherit from that.
2928
2929         * platform/graphics/mac/WebLayer.mm:
2930         Move most of the behavior of WebLayer onto WebSimpleLayer, except for its
2931         complex painting code. That stays as an override on WebLayer.
2932
2933         (WebCore::drawLayerContents):
2934         Use the PlatformCALayer's PlatformLayer - if it exists - to extract
2935         fine-grained repaint rects. If it doesn't, we'll just use the CGContext's
2936         clip rect as our single repaint rect.
2937         Rename platformLayer to platformCALayer for accuracy.
2938         Remove special code for CATiledLayer since we ought not use it on Mac anymore.
2939
2940         (WebCore::drawRepaintIndicator):
2941         Factor repaint indicator code out into its own function so that TileController
2942         can use it. It can't be called from drawLayerContents for TileController, since
2943         the PlatformCALayer that TileController passes in to drawLayerContents is actually
2944         that of the tile cache's root layer, not the tile itself.
2945         Also, add a custom background color parameter so TileController can override
2946         the default green color with its own standard purple.
2947
2948         (-[WebLayer drawInContext:]):
2949         (-[WebSimpleLayer drawInContext:]):
2950         * platform/graphics/mac/WebTiledLayer.mm:
2951         (-[WebTiledLayer drawInContext:]):
2952         Removed a param from drawLayerContents because it's trivially acquirable
2953         from the PlatformCALayer.
2954
2955 2013-10-24  Sam Weinig  <sam@webkit.org>
2956
2957         Move RenderBlock functions only used by RenderBlockFlow to RenderBlockFlow
2958         https://bugs.webkit.org/show_bug.cgi?id=123318
2959
2960         Reviewed by David Hyatt.
2961
2962         * rendering/LineLayoutState.h:
2963         Move FloatWithRect from RenderBlock.
2964
2965         * rendering/RenderBlock.cpp:
2966         * rendering/RenderBlock.h:
2967         * rendering/RenderBlockFlow.cpp:
2968         * rendering/RenderBlockFlow.h:
2969         * rendering/RenderBlockLineLayout.cpp:
2970         Move pagination and float functions.
2971
2972 2013-10-28  Sergio Villar Senin  <svillar@igalia.com>
2973
2974         [CSS Grid Layout] Add support for order inside grid items
2975         https://bugs.webkit.org/show_bug.cgi?id=123208
2976
2977         Reviewed by Antti Koivisto.
2978
2979         Based on Blink r153457 and r153536 by <jchaffraix@chromium.org>
2980
2981         Added support for sorting grid items by using -webkit-order
2982         property. Used OrderIterator to implement it so it had to be moved
2983         out of RenderFlexibleBox to be shared with RenderGrid.
2984
2985         Tests: fast/css-grid-layout/grid-item-order-auto-flow-resolution.html
2986                fast/css-grid-layout/grid-item-order-paint-order.html
2987
2988         * CMakeLists.txt: Added new file.
2989         * GNUmakefile.list.am: Ditto.
2990         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
2991         * WebCore.xcodeproj/project.pbxproj: Ditto.
2992         * rendering/OrderIterator.cpp: Added. Ripped out of RenderFlexibleBox.
2993         (WebCore::OrderIterator::OrderIterator):
2994         (WebCore::OrderIterator::setOrderValues): Use std::move semantics.
2995         (WebCore::OrderIterator::first): Use an integer as iterator.
2996         (WebCore::OrderIterator::next): Ditto.
2997         (WebCore::OrderIterator::reset): Ditto.
2998         * rendering/OrderIterator.h: Added.
2999         (WebCore::OrderIterator::currentChild):
3000         * rendering/RenderFlexibleBox.cpp:
3001         (WebCore::RenderFlexibleBox::RenderFlexibleBox):
3002         (WebCore::RenderFlexibleBox::layoutBlock):
3003         * rendering/RenderFlexibleBox.h:
3004         * rendering/RenderGrid.cpp:
3005         (WebCore::RenderGrid::RenderGrid):
3006         (WebCore::RenderGrid::placeItemsOnGrid):
3007         (WebCore::RenderGrid::populateExplicitGridAndOrderIterator):
3008         (WebCore::RenderGrid::paintChildren):
3009         * rendering/RenderGrid.h:
3010
3011 2013-10-28  Afonso R. Costa Jr.  <afonso.costa@samsung.com>
3012
3013         Methods on window.internals shouldn't pass a document.
3014         https://bugs.webkit.org/show_bug.cgi?id=107301
3015
3016         Reviewed by Alexey Proskuryakov.
3017
3018         Each 'Internals' instance is associated with a 'Document'. So, it
3019         is not necessary to pass a document as argument. Only nodesFromRect and
3020         layerTreeAsText methods were kept because, in some Layout Tests, the
3021         'Document' object is not the same used by Internals::contextDocument.
3022
3023         * testing/Internals.cpp: Removed 'document' parameter.
3024         (WebCore::Internals::animationsAreSuspended):
3025         (WebCore::Internals::suspendAnimations):
3026         (WebCore::Internals::resumeAnimations):
3027         (WebCore::Internals::inspectorHighlightRects):
3028         (WebCore::Internals::inspectorHighlightObject):
3029         (WebCore::Internals::setScrollViewPosition):
3030         (WebCore::Internals::setPagination):
3031         (WebCore::Internals::configurationForViewport):
3032         (WebCore::Internals::paintControlTints):
3033         (WebCore::Internals::setDelegatesScrolling):
3034         (WebCore::Internals::touchPositionAdjustedToBestClickableNode):
3035         (WebCore::Internals::touchNodeAdjustedToBestClickableNode):
3036         (WebCore::Internals::touchPositionAdjustedToBestContextMenuNode):
3037         (WebCore::Internals::touchNodeAdjustedToBestContextMenuNode):
3038         (WebCore::Internals::bestZoomableAreaForTouchPoint):
3039         (WebCore::Internals::lastSpellCheckRequestSequence):
3040         (WebCore::Internals::lastSpellCheckProcessedSequence):
3041         (WebCore::Internals::wheelEventHandlerCount):
3042         (WebCore::Internals::touchEventHandlerCount):
3043         (WebCore::Internals::setBatteryStatus):
3044         (WebCore::Internals::setNetworkInformation):
3045         (WebCore::Internals::setDeviceProximity):
3046         (WebCore::Internals::hasSpellingMarker):
3047         (WebCore::Internals::hasAutocorrectedMarker):
3048         (WebCore::Internals::isOverwriteModeEnabled):
3049         (WebCore::Internals::toggleOverwriteModeEnabled):
3050         (WebCore::Internals::consoleMessageArgumentCounts):
3051         (WebCore::Internals::hasGrammarMarker):
3052         (WebCore::Internals::numberOfScrollableAreas):
3053         (WebCore::Internals::isPageBoxVisible):
3054         (WebCore::Internals::repaintRectsAsText):
3055         (WebCore::Internals::scrollingStateTreeAsText):
3056         (WebCore::Internals::mainThreadScrollingReasons):
3057         (WebCore::Internals::nonFastScrollableRects):
3058         (WebCore::Internals::garbageCollectDocumentResources):
3059         (WebCore::Internals::insertAuthorCSS):
3060         (WebCore::Internals::insertUserCSS):
3061         (WebCore::Internals::shortcutIconURLs):
3062         (WebCore::Internals::allIconURLs):
3063         (WebCore::Internals::setHeaderHeight):
3064         (WebCore::Internals::setFooterHeight):
3065         (WebCore::Internals::webkitWillEnterFullScreenForElement):
3066         (WebCore::Internals::webkitDidEnterFullScreenForElement):
3067         (WebCore::Internals::webkitWillExitFullScreenForElement):
3068         (WebCore::Internals::webkitDidExitFullScreenForElement):
3069         (WebCore::Internals::startTrackingRepaints):
3070         (WebCore::Internals::stopTrackingRepaints):
3071         (WebCore::Internals::getCurrentCursorInfo):
3072         * testing/Internals.h:
3073         (WebCore::Internals::setPagination):
3074         * testing/Internals.idl:
3075
3076 2013-10-28  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3077
3078         Remove HTMLMediaElement.startTime
3079         https://bugs.webkit.org/show_bug.cgi?id=123264
3080
3081         Reviewed by Eric Carlson.
3082
3083         Patch based on one by: philipj@opera.com
3084         Blink review URL: https://codereview.chromium.org/32583003
3085
3086         startTime has been removed from the HTMLMediaElement and its use
3087         in the rest of components.
3088
3089         * Modules/mediacontrols/mediaControlsApple.js:
3090         (Controller.prototype.handleRewindButtonClicked):
3091         (Controller.prototype.handleTimelineMouseMove):
3092         (Controller.prototype.updateDuration):
3093         (Controller.prototype.updateTime): Removed used of startTime().
3094         * bindings/gobject/WebKitDOMCustom.cpp:
3095         (webkit_dom_html_media_element_get_start_time):
3096         * bindings/gobject/WebKitDOMCustom.h:
3097         * bindings/gobject/WebKitDOMCustom.symbols: Added phony function.
3098         * html/HTMLMediaElement.cpp:
3099         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
3100         (WebCore::HTMLMediaElement::isBlockedOnMediaController): Removed
3101         use of startTime()
3102         * html/HTMLMediaElement.h:
3103         * html/HTMLMediaElement.idl: Removed startTime()
3104         * rendering/RenderThemeWinCE.cpp:
3105         (WebCore::RenderThemeWinCE::paintSliderThumb): Removed use of
3106         startTime()
3107
3108 2013-10-28  Andreas Kling  <akling@apple.com>
3109
3110         RenderElement::m_style should be a Ref.
3111         <https://webkit.org/b/123401>
3112
3113         Made RenderElement::m_style a Ref. This codifies the fact that it
3114         can never be null after construction.
3115
3116         Removed a couple of unnecessary null checks that were exposed as
3117         compilation failures.
3118
3119         Reviewed by Antti Koivisto.
3120
3121 2013-10-28  Bastien Nocera <hadess@hadess.net>
3122
3123         Name all the GLib timeout sources
3124         https://bugs.webkit.org/show_bug.cgi?id=123229
3125
3126         Reviewed by Anders Carlsson.
3127
3128         Give a name to GLib timeout sources, this is helpful when
3129         profiling WebKitGTK applications.
3130
3131         No new tests, no change in functionality.
3132
3133 2013-10-28  Philippe Normand  <pnormand@igalia.com>
3134
3135         MediaStreamTrackPrivate's m_client uninitialized
3136         https://bugs.webkit.org/show_bug.cgi?id=123403
3137
3138         Reviewed by Eric Carlson.
3139
3140         No new tests, no change in functionality.
3141
3142         * platform/mediastream/MediaStreamTrackPrivate.cpp:
3143         (WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate):
3144         Initialize the m_client member variable.
3145
3146 2013-10-28  Carlos Garcia Campos  <cgarcia@igalia.com>
3147
3148         Unreviewed. Fix make distcheck.
3149
3150         * GNUmakefile.am: Add crypto idl files to EXTRA_DIST and remove
3151         css/fullscreenQuickTime.css that was removed.
3152
3153 2013-10-28  Antti Koivisto  <antti@apple.com>
3154
3155         Prepare simple line layout to support multiple runs per line
3156         https://bugs.webkit.org/show_bug.cgi?id=123400
3157
3158         Reviewed by Andreas Kling.
3159
3160         Bunch of renaming and some refactoring for future support for text runs.
3161
3162         SimpleLineLayout::Lines -> SimpleLineLayout::Layout and becomes a class instead of a typedef.
3163         SimpleLineLayout::Resolver::Line -> SimpleLineLayout::Resolver::Run
3164         SimpleLineLayout::createLines() -> SimpleLineLayout::create()
3165         RenderBlockFlow::simpleLines() -> RenderBlockFlow::simpleLineLayout()
3166         RenderText::simpleLines() -> RenderText::simpleLineLayout()
3167         
3168         Added resolver construction functions:
3169         
3170         SimpleLineLayout::runResolver()
3171         SimpleLineLayout::lineResolver()
3172
3173 2013-10-28  Mario Sanchez Prada  <mario.prada@samsung.com>
3174
3175         [GTK] Expose title and alternative text for links in image maps
3176         https://bugs.webkit.org/show_bug.cgi?id=84045
3177
3178         Reviewed by Chris Fleizach.
3179
3180         Change the way we decide when the title attribute should be
3181         used for the accessible description, by not relying in the
3182         titleTagShouldBeUsedInDescriptionField() helper function but
3183         in whether we have found a visible text for it or not.
3184
3185         This actually mimics what the Mac port does and so makes possible
3186         to share both the layout test and its expected results.
3187
3188         * accessibility/atk/WebKitAccessibleUtil.cpp:
3189         (accessibilityDescription): Update the method to determine
3190         whether the title attribute should be used for the description.
3191
3192 2013-10-28  Bastien Nocera <hadess@hadess.net>
3193
3194         Replace 0 timeouts g_timeout_add() by g_idle_add()
3195         https://bugs.webkit.org/show_bug.cgi?id=123260
3196
3197         Reviewed by Carlos Garcia Campos.
3198
3199         A zero timeout should be equivalent to using g_idle_add_full(G_PRIORITY_DEFAULT, ...)
3200         without the nagging feeling that the wrong API was used.
3201
3202         No new tests, no change in functionality.
3203
3204         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Use g_idle_add() instead
3205         of 0-timer.
3206         (WebCore::MediaPlayerPrivateGStreamer::videoChanged):
3207         (WebCore::MediaPlayerPrivateGStreamer::audioChanged):
3208         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: Ditto.
3209         (WebCore::MediaPlayerPrivateGStreamerBase::volumeChanged):
3210         (WebCore::MediaPlayerPrivateGStreamerBase::muteChanged):
3211         * platform/gtk/GtkDragAndDropHelper.cpp: Ditto.
3212         (WebCore::GtkDragAndDropHelper::handleDragLeave):
3213
3214 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
3215
3216         Re-enable simple line layout for GTK
3217         https://bugs.webkit.org/show_bug.cgi?id=123388
3218
3219         Reviewed by Andreas Kling.
3220
3221         * rendering/SimpleLineLayout.cpp:
3222         (WebCore::SimpleLineLayout::canUseFor): 8-bit TextRun support is now enabled for the GTK port, so the port
3223         can use the simple line layout.
3224
3225 2013-10-27  Andreas Kling  <akling@apple.com>
3226
3227         Fix 4 asserting SVG tests after r158097.
3228
3229         RenderElement::setStyle() is, quite surprisingly, a virtual function
3230         with a single override in RenderSVGBlock.
3231         To match the old behavior, we have to rewrite the display type from
3232         any inline type to block instead.
3233
3234         * rendering/RenderElement.cpp:
3235         (WebCore::RenderElement::initializeStyle):
3236
3237 2013-10-27  Andreas Kling  <akling@apple.com>
3238
3239         Tone down overzealous assertion from r158097.
3240
3241         RenderElement::initializeStyle() really only cares that there are no
3242         text renderers that we should be calling styleDidChange() on.
3243
3244         Tweak the code to only check that there are no text children.
3245
3246         * rendering/RenderElement.cpp:
3247         (WebCore::RenderElement::initializeStyle):
3248
3249 2013-10-27  Antti Koivisto  <antti@apple.com>
3250
3251         Enable center and right text alignment for simple lines
3252         https://bugs.webkit.org/show_bug.cgi?id=123398
3253
3254         Reviewed by Andreas Kling.
3255
3256         Support text-align:center and text-align:right on simple line layout path.
3257
3258         * rendering/SimpleLineLayout.cpp:
3259         (WebCore::SimpleLineLayout::canUseFor):
3260         
3261             text-align:justify is still not supported.
3262
3263         (WebCore::SimpleLineLayout::computeLineLeft):
3264         (WebCore::SimpleLineLayout::createLines):
3265         
3266             Do a rounding dance that matches the line boxes.
3267
3268         * rendering/SimpleLineLayout.h:
3269         
3270             Add left position to lines.
3271
3272         * rendering/SimpleLineLayoutResolver.h:
3273         (WebCore::SimpleLineLayout::Resolver::Line::rect):
3274         
3275             We now do rounding during layout.
3276
3277         (WebCore::SimpleLineLayout::Resolver::Line::baseline):
3278
3279 2013-10-27  Andreas Kling  <akling@apple.com>
3280
3281         Renderers should receive their style at construction.
3282         <https://webkit.org/b/123396>
3283
3284         Pass the RenderStyle to all non-text renderer constructors.
3285         After construction, initializeStyle() must be called (as a stopgap
3286         measure) until we are able to do style-derived initialization
3287         without virtual function calls.
3288
3289         With this change, RenderElement::m_style is never null. Subsequent
3290         patches will add enforcement for this and also make style() return
3291         a RenderStyle&.
3292
3293         I'm adding three FIXME's in this patch:
3294
3295             - createRendererIfNeeded() calls AnimationController to set up
3296               the initial style manually instead of asking RenderElement's
3297               setAnimatedStyle() to do it. This can probably be done in a
3298               nicer way, but it's not clear yet how.
3299
3300             - ImageContentData::createRenderer() does a bit of unnecessary
3301               work. This should be easy to clean up but got too distracting
3302               to be part of this patch.
3303
3304             - Document::createRenderTree() creates the RenderView with an
3305               initial dummy RenderStyle. I've done this because resolving
3306               the document style assumes we already have a RenderView.
3307
3308         For styleWillChange() implementations to detect that they are
3309         reacting to the initial style, I've added a hasInitializedStyle()
3310         function on RenderElement. This will return false until you've
3311         called initializeStyle() on the renderer. This should go away
3312         along with initializeStyle() eventually.
3313
3314         Reviewed by Antti Koivisto.
3315
3316 2013-10-26  Tim Horton  <timothy_horton@apple.com>
3317
3318         [mac] Remove WebTiledLayer
3319         https://bugs.webkit.org/show_bug.cgi?id=123395
3320
3321         Reviewed by Anders Carlsson.
3322
3323         Mac doesn't use CATiledLayer at all anymore. We have to keep
3324         LayerTypeTiledLayer around for Windows, for now, but we can
3325         get rid of WebTiledLayer and some related Mac-specific code.
3326
3327         No new tests, just removing dead code.
3328
3329         * WebCore.xcodeproj/project.pbxproj:
3330         Remove WebTiledLayer.*
3331
3332         * platform/graphics/ca/PlatformCALayer.h:
3333         * platform/graphics/ca/mac/PlatformCALayerMac.h:
3334         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
3335         (PlatformCALayerMac::PlatformCALayerMac):
3336         Remove synchronouslyDisplayTilesInRect, which was only used for WebTiledLayer on Mac.
3337         Remove WebTiledLayer instantiation and setup code.
3338
3339         * platform/graphics/mac/WebTiledLayer.h: Removed.
3340         * platform/graphics/mac/WebTiledLayer.mm: Removed.
3341
3342 2013-10-26  Andreas Kling  <akling@apple.com>
3343
3344         CTTE: RenderImageResourceStyleImage always has a StyleImage.
3345         <https://webkit.org/b/123390>
3346
3347         Codify the fact that RenderImageResourceStyleImage always wraps an
3348         existing StyleImage object.
3349
3350         Reviewed by Antti Koivisto.
3351
3352 2013-10-26  Antti Koivisto  <antti@apple.com>
3353
3354         Revert some accidental changes.
3355
3356         * css/CSSFontFaceSource.cpp:
3357         (WebCore::CSSFontFaceSource::getFontData):
3358         * css/CSSFontSelector.cpp:
3359         * css/CSSFontSelector.h:
3360
3361 2013-10-26  Mark Lam  <mark.lam@apple.com>
3362
3363         Gardening: fixed broken build.
3364         https://bugs.webkit.org/show_bug.cgi?id=123354.
3365
3366         * css/CSSFontSelector.h:
3367
3368 2013-10-26  Antti Koivisto  <antti@apple.com>
3369
3370         fast/frames/seamless/seamless-nested-crash.html asserts on wk2 only
3371         https://bugs.webkit.org/show_bug.cgi?id=123354
3372
3373         Reviewed by Andreas Kling.
3374
3375         * rendering/SimpleLineLayout.cpp:
3376         (WebCore::SimpleLineLayout::canUseFor):
3377         
3378             Don't enable simple line layout if the primary font is loading. The code expects
3379             to use the primary font metrics for all lines but those won't match the fallbacks
3380             when font is not loaded.
3381
3382 2013-10-26  Carlos Garcia Campos  <cgarcia@igalia.com>
3383
3384         [GTK] Deprecate public dispatch_event method in objects implementing EventTarget interface
3385         https://bugs.webkit.org/show_bug.cgi?id=123261
3386
3387         Reviewed by Gustavo Noronha Silva.
3388
3389         The interface function should be used instead.
3390
3391         * bindings/scripts/CodeGeneratorGObject.pm:
3392         (GetFunctionDeprecationInformation): Helper function to return the
3393         version when the function was deprecated and the function
3394         replacing the deprecated one.
3395         (GenerateFunction): Check if the function is deprecated to mark it
3396         as such in the header and API docs.
3397         * bindings/scripts/gobject-generate-headers.pl: Replace the unused
3398         WEBKIT_OBSOLETE_API macro with new macros to mark function as
3399         deprecated, using the glib macros so that we don't need checks for
3400         the platform.
3401         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
3402         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
3403         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
3404         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
3405         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
3406         * bindings/scripts/test/GObject/WebKitDOMTestException.h:
3407         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
3408         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
3409         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
3410         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
3411         * bindings/scripts/test/GObject/WebKitDOMattribute.h:
3412
3413 2013-10-25  Mark Lam  <mark.lam@apple.com>
3414
3415         DatabaseManager's ProposedDatabases need to be thread-safe.
3416         https://bugs.webkit.org/show_bug.cgi?id=123313.
3417
3418         Reviewed by Geoffrey Garen.
3419
3420         No new tests.
3421
3422         * Modules/webdatabase/DatabaseManager.cpp:
3423         (WebCore::DatabaseManager::DatabaseManager):
3424         (WebCore::DatabaseManager::existingDatabaseContextFor):
3425         (WebCore::DatabaseManager::registerDatabaseContext):
3426         (WebCore::DatabaseManager::unregisterDatabaseContext):
3427         (WebCore::DatabaseManager::didConstructDatabaseContext):
3428         (WebCore::DatabaseManager::didDestructDatabaseContext):
3429         (WebCore::DatabaseManager::openDatabaseBackend):
3430         (WebCore::DatabaseManager::addProposedDatabase):
3431         (WebCore::DatabaseManager::removeProposedDatabase):
3432         (WebCore::DatabaseManager::fullPathForDatabase):
3433         (WebCore::DatabaseManager::detailsForNameAndOrigin):
3434         * Modules/webdatabase/DatabaseManager.h:
3435
3436 2013-10-25  Joseph Pecoraro  <pecoraro@apple.com>
3437
3438         Upstream ENABLE(REMOTE_INSPECTOR) and enable on iOS and Mac
3439         https://bugs.webkit.org/show_bug.cgi?id=123111
3440
3441         Reviewed by Timothy Hatcher.
3442
3443         * Configurations/FeatureDefines.xcconfig:
3444         * WebCore.exp.in:
3445
3446 2013-10-25  Hans Muller  <hmuller@adobe.com>
3447
3448         [CSS Shapes] CORS-enabled fetch for shape image values
3449         https://bugs.webkit.org/show_bug.cgi?id=123114
3450
3451         Reviewed by Andreas Kling.
3452
3453         Access to shape images is now controlled by CORS CSS shape per
3454         http://dev.w3.org/csswg/css-shapes/#shape-outside-property.
3455         Previously shape images had to be same-origin.
3456
3457         Shape image URL access is defined by the same logic that defines
3458         canvas tainting: same-origin and data URLs are allowed and images
3459         with a "Access-Control-Allow-Origin:" header that's either "*" or
3460         that matches the document's origin.
3461
3462         A PotentiallyCrossOriginEnabled RequestOriginPolicy was added to
3463         ResourceLoaderOptions, to indicate that a "potentially CORS-enabled fetch"
3464         was to be undertaken. The CSSImageValue::cachedImage() method handles this
3465         option by effectively setting the "Origin:" request header (see
3466         updateRequestForAccessControl() in CrossOriginAccessControl.cpp).
3467         StyleResolver::loadPendingShapeImage() uses the new ResourceLoaderOption.
3468
3469         The static ShapeInsideInfo and ShapeOutsideInfo isEnabledFor() method
3470         now performs the CORS check for image valued shapes. The private
3471         isOriginClean() method from CanvasRenderingContext2D has been moved to
3472         the CachedImage class so that it can be shared by the Canvas and Shape
3473         implementations. It checks the response headers per the CORS spec.
3474
3475         Test: http/tests/security/shape-image-cors.html
3476
3477         * css/CSSImageValue.cpp:
3478         (WebCore::CSSImageValue::cachedImage): Handle the new ResourceLoaderOption.
3479         * css/StyleResolver.cpp:
3480         (WebCore::StyleResolver::loadPendingShapeImage): Set the new ResourceLoaderOption.
3481         * html/canvas/CanvasRenderingContext2D.cpp:
3482         (WebCore::CanvasRenderingContext2D::createPattern): Use the CachedImage::isOriginClean().
3483         * loader/ResourceLoaderOptions.h: Added PotentiallyCrossOriginEnabled to RequestOriginPolicy.
3484         * loader/cache/CachedImage.cpp:
3485         (WebCore::CachedImage::isOriginClean): Migrated from CanvasRenderingContext2D.
3486         * loader/cache/CachedImage.h:
3487         * rendering/shapes/ShapeInfo.cpp:
3488         (WebCore::::checkImageOrigin): Do the CORS check and log an error message if neccessary.
3489         * rendering/shapes/ShapeInfo.h:
3490         * rendering/shapes/ShapeInsideInfo.cpp:
3491         (WebCore::ShapeInsideInfo::isEnabledFor): Call checkImageOrigin() for images.
3492         * rendering/shapes/ShapeOutsideInfo.cpp:
3493         (WebCore::ShapeOutsideInfo::isEnabledFor): Ditto.
3494
3495 2013-10-25  Jer Noble  <jer.noble@apple.com>
3496
3497         [MSE] Fix runtime errors caused by mediasource IDL attributes.
3498         https://bugs.webkit.org/show_bug.cgi?id=123352
3499
3500         Reviewed by Eric Carlson.
3501
3502         Due to http://webkit.org/b/123178, MediaSource classes must add a GenerateIsReachable
3503         (and also a JSGenerateToJSObject) attribute to avoid runtime asserts and crashes.
3504
3505         * Modules/mediasource/MediaSource.idl:
3506         * Modules/mediasource/SourceBuffer.idl:
3507         * Modules/mediasource/SourceBufferList.idl:
3508         * Modules/mediasource/WebKitMediaSource.idl:
3509         * Modules/mediasource/WebKitSourceBufferList.idl:
3510
3511 2013-10-25  Jacky Jiang  <zhajiang@blackberry.com>
3512
3513         [BlackBerry] Browser crashed at PlatformGraphicsContext::addDrawLineForText() when trying to upload a video to youtube
3514         https://bugs.webkit.org/show_bug.cgi?id=123349
3515
3516         Reviewed by George Staikos.
3517         Internally reviewed by George Staikos, Konrad Piascik, Eli Fidler and Arvid Nilsson.
3518
3519         Browser crashed when dereferencing null PlatformGraphicsContext*.
3520         In FrameView::paintControlTints(), we intentionally constructed GraphicsContext
3521         with null PlatformGraphicsContext* and disabled painting by doing
3522         context.setUpdatingControlTints(true). So we should not go further in
3523         GraphicsContext::drawLineForText() if painting is disabled.
3524         Check paintingDisabled() for the other functions in PathBlackBerry.cpp
3525         as well; otherwise, it is likely we will crash at those places.
3526
3527         * platform/graphics/blackberry/PathBlackBerry.cpp:
3528         (WebCore::GraphicsContext::fillPath):
3529         (WebCore::GraphicsContext::strokePath):
3530         (WebCore::GraphicsContext::drawLine):
3531         (WebCore::GraphicsContext::drawLineForDocumentMarker):
3532         (WebCore::GraphicsContext::drawLineForText):
3533         (WebCore::GraphicsContext::clip):
3534         (WebCore::GraphicsContext::clipPath):
3535         (WebCore::GraphicsContext::canvasClip):
3536         (WebCore::GraphicsContext::clipOut):
3537
3538 2013-10-25  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3539
3540         Adding platform implementation of MediaStreamTrack
3541         https://bugs.webkit.org/show_bug.cgi?id=123301
3542
3543         Reviewed by Eric Carlson.
3544
3545         No new tests needed.
3546
3547         * CMakeLists.txt:
3548         * Modules/mediastream/AudioStreamTrack.cpp:
3549         (WebCore::AudioStreamTrack::create): Create method now receives a MediaStreamTrackPrivate as parameter.
3550
3551         (WebCore::AudioStreamTrack::AudioStreamTrack):
3552         * Modules/mediastream/AudioStreamTrack.h:
3553         * Modules/mediastream/MediaStream.cpp:
3554         (WebCore::MediaStream::MediaStream): Constructor now iterates through a set of MediaStreamTrackPrivate
3555         instances to create each MediaStreamTrack of MediaStream.
3556
3557         (WebCore::MediaStream::addRemoteSource): Calling AudioStreamTrack and VideoStreamTrack with
3558         MediaStreamTrackPrivate as parameter.
3559
3560         * Modules/mediastream/MediaStreamTrack.cpp:
3561         (WebCore::MediaStreamTrack::MediaStreamTrack): Constructor now receives a MediaStreamTrackPrivate, instead of a
3562         MediaStreamSource.
3563
3564         (WebCore::MediaStreamTrack::~MediaStreamTrack):
3565         (WebCore::MediaStreamTrack::kind): Calling method from MediaStreamTrackPrivate.
3566
3567         (WebCore::MediaStreamTrack::setSource): Ditto.
3568
3569         (WebCore::MediaStreamTrack::id): Ditto.
3570
3571         (WebCore::MediaStreamTrack::label): Ditto.
3572
3573         (WebCore::MediaStreamTrack::enabled): Ditto.
3574
3575         (WebCore::MediaStreamTrack::setEnabled): Ditto.
3576
3577         (WebCore::MediaStreamTrack::muted): Ditto.
3578
3579         (WebCore::MediaStreamTrack::readonly): Ditto.
3580
3581         (WebCore::MediaStreamTrack::remote): Ditto.
3582
3583         (WebCore::MediaStreamTrack::readyState): Ditto.
3584
3585         (WebCore::MediaStreamTrack::states):
3586         (WebCore::MediaStreamTrack::capabilities):
3587         (WebCore::MediaStreamTrack::clone):
3588         (WebCore::MediaStreamTrack::stopProducingData):
3589         (WebCore::MediaStreamTrack::ended): Ditto.
3590
3591         (WebCore::MediaStreamTrack::sourceStateChanged): Ditto.
3592
3593         (WebCore::MediaStreamTrack::sourceMutedChanged): Ditto.
3594
3595         (WebCore::MediaStreamTrack::sourceEnabledChanged): Ditto.
3596         (WebCore::MediaStreamTrack::configureTrackRendering):
3597         (WebCore::MediaStreamTrack::stopped): Ditto.
3598
3599         (WebCore::MediaStreamTrack::trackDidEnd): Setting Ended ready state in MediaStreamTrackPrivate.
3600
3601         (WebCore::MediaStreamTrack::trackReadyStateChanged): Dispatches Live or Ended event.
3602
3603         (WebCore::MediaStreamTrack::trackMutedChanged): Dispatches Muted event.
3604
3605         * Modules/mediastream/MediaStreamTrack.h: Now inheriting from MediaStreamTrackPrivateClient.
3606
3607         (WebCore::MediaStreamTrack::source): Calling method from MediaStreamTrackPrivate.
3608         (WebCore::MediaStreamTrack::privateTrack):
3609         * Modules/mediastream/VideoStreamTrack.cpp:
3610         (WebCore::VideoStreamTrack::create):
3611         (WebCore::VideoStreamTrack::VideoStreamTrack): Create method now receives a MediaStreamTrackPrivate as parameter.
3612         * Modules/mediastream/VideoStreamTrack.h:
3613         * platform/mediastream/MediaStreamDescriptor.cpp:
3614         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor): Stores the private tracks in a Vector (property of
3615         MediaStreamDescriptor class).
3616
3617         (WebCore::MediaStreamDescriptor::addTrack): Adds a private track to the tracks' Vector
3618
3619         (WebCore::MediaStreamDescriptor::removeTrack): Removes a private track from the tracks' Vector
3620
3621         * platform/mediastream/MediaStreamDescriptor.h:
3622         (WebCore::MediaStreamDescriptor::numberOfAudioSources): Renamed from numberOfAudioStreams.
3623
3624         (WebCore::MediaStreamDescriptor::audioSources): Renamed from audioStreams.
3625
3626         (WebCore::MediaStreamDescriptor::numberOfVideoSources): Renamed from numberOfVideoStreams.
3627
3628         (WebCore::MediaStreamDescriptor::videoSources): Renamed from videoStreams.
3629
3630         (WebCore::MediaStreamDescriptor::numberOfAudioTracks): Returns the number of audio tracks this MediaStreamDescriptor
3631         has.
3632
3633         (WebCore::MediaStreamDescriptor::audioTracks): Returns a audio track, given an index
3634
3635         (WebCore::MediaStreamDescriptor::numberOfVideoTracks): Returns the number of video tracks this MediaStreamDescriptor
3636         has.
3637         (WebCore::MediaStreamDescriptor::videoTracks): Returns a video track, given an index
3638         * platform/mediastream/MediaStreamTrackPrivate.cpp: Added.
3639         * platform/mediastream/MediaStreamTrackPrivate.h: Added.
3640
3641 2013-10-25  Zoltan Horvath  <zoltan@webkit.org>
3642
3643         [CSS Regions][CSS Shapes] Update updateShapeAndSegmentsForCurrentLineInFlowThread to deal better with multiple regions
3644         <https://webkit.org/b/123210>
3645
3646         Reviewed by David Hyatt.
3647
3648         I simplified the determination of the next region part of updateShapeAndSegmentsForCurrentLineInFlowThread's implementation
3649         in order to make the code more straightforward. I also tried to avoid using regionAtBlockOffset(...) function where it's possible,
3650         since it's not always that reliable, what I'll will report in a separate bug.
3651
3652         No new tests, covered by existing tests.
3653
3654         * rendering/RenderBlockLineLayout.cpp:
3655         (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread):
3656
3657 2013-10-25  Zoltan Horvath  <zoltan@webkit.org>
3658
3659         [CSS Regions][CSS Shapes] Update updateShapeAndSegmentsForCurrentLineInFlowThread to deal better with the first lines
3660         <https://bugs.webkit.org/show_bug.cgi?id=123275>
3661
3662         Reviewed by David Hyatt.
3663
3664         We have a complex condition in updateShapeAndSegmentsForCurrentLineInFlowThread, which is
3665         adjusting the first line to the shape's top. This patch adds two boolean to make that clear.
3666
3667         No new tests, no behavior change.
3668
3669         * rendering/RenderBlockLineLayout.cpp:
3670         (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread):
3671
3672 2013-10-25  Antti Koivisto  <antti@apple.com>
3673
3674         Faster way for simple line layout to check if text has fallback fonts
3675         https://bugs.webkit.org/show_bug.cgi?id=123342
3676
3677         Reviewed by Andreas Kling.
3678         
3679         Don't use RenderText::knownToHaveNoOverflowAndNoFallbackFonts as it is slow.
3680
3681         Simple text code path test already guarantees there is no overflow. Test for fallback
3682         fonts explicitly.
3683
3684         * platform/graphics/SimpleFontData.h:
3685         
3686             Make FINAL.
3687
3688         * rendering/RenderText.cpp:
3689         * rendering/RenderText.h:
3690         
3691             Remove knownToHaveNoOverflowAndNoFallbackFonts() as it has no clients.
3692
3693         * rendering/SimpleLineLayout.cpp:
3694         (WebCore::SimpleLineLayout::canUseFor):
3695         
3696             Check if all characters can be found from the primary font.
3697
3698 2013-10-25  Andreas Kling  <akling@apple.com>
3699
3700         SVGResourcesCache::clientDestroyed() should take a RenderElement&.
3701         <https://webkit.org/b/123339>
3702
3703         This function is always called with an object, and that object
3704         is guaranteed to never be a text renderer.
3705
3706         Reviewed by Antti Koivisto.
3707
3708 2013-10-25  Andreas Kling  <akling@apple.com>
3709
3710         SVGResourcesCache::clientLayoutChanged() should take a RenderElement&.
3711         <https://webkit.org/b/123336>
3712
3713         This function is always called with an object, and that object
3714         is guaranteed to never be a text renderer.
3715
3716         Reviewed by Antti Koivisto.
3717
3718 2013-10-25  Andreas Kling  <akling@apple.com>
3719
3720         SVGResourcesCache::clientStyleChanged() should take a RenderElement&.
3721         <https://webkit.org/b/123335>
3722
3723         This function is always called with an object, and that object
3724         is guaranteed to never be a text renderer.
3725
3726         Reviewed by Antti Koivisto.
3727
3728 2013-10-25  Andreas Kling  <akling@apple.com>
3729
3730         SVG: postApplyResource() should take a RenderElement&.
3731         <https://webkit.org/b/123334>
3732
3733         This function is always called with an object, and that object
3734         is guaranteed to never be a text renderer.
3735
3736         Reviewed by Antti Koivisto.
3737
3738 2013-10-25  Antti Koivisto  <antti@apple.com>
3739
3740         REGRESSION(r157950): It made many tests assert on Windows, EFL, GTK
3741         https://bugs.webkit.org/show_bug.cgi?id=123309
3742
3743         Reviewed by Andreas Kling.
3744
3745         Disable simple line layout on non-Mac plaforms for now.
3746
3747         * rendering/SimpleLineLayout.cpp:
3748         (WebCore::SimpleLineLayout::canUseFor):
3749
3750 2013-10-24  Andreas Kling  <akling@apple.com>
3751
3752         SVG: applyResource() should take a RenderElement&.
3753         <https://webkit.org/b/123286>
3754
3755         This function is always called with an object, and that object
3756         is guaranteed to never be a text renderer.
3757
3758         Reviewed by Antti Koivisto.
3759
3760 2013-10-25  Andreas Kling  <akling@apple.com>
3761
3762         RenderElement::styleWillChange() should pass newStyle as reference.
3763         <https://webkit.org/b/123332>
3764
3765         When styleWillChange() is called, there is always a new style getting
3766         set so there's no need to handle the null style case.
3767         This flushed out a couple of unnecessary checks.
3768
3769         Reviewed by Antti Koivisto.
3770
3771 2013-10-25  peavo@outlook.com  <peavo@outlook.com>
3772
3773         [WinCairo] Compile fixes.
3774         https://bugs.webkit.org/show_bug.cgi?id=123269
3775
3776         Reviewed by Csaba Osztrogonác.
3777
3778         * platform/graphics/win/ImageCairoWin.cpp: Added new parameter to BitmapImage::draw() calls.
3779         (WebCore::BitmapImage::getHBITMAPOfSize):
3780         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
3781
3782 2013-10-25  Sergio Villar Senin  <svillar@igalia.com>
3783
3784         Use a Vector instead of HashSet to computed the orderValues in RenderFlexibleBox
3785         https://bugs.webkit.org/show_bug.cgi?id=118620
3786
3787         Reviewed by Antti Koivisto.
3788
3789         Turns out that order is extremelly uncommon so using a Vector is
3790         much less expensive. This also special-cases the much common case
3791         of only having order of value 0 by using Vectors with just one
3792         preallocated member.
3793
3794         Also added the performance test that shows a ~1% win when using a
3795         vector instead of the HashSet.
3796
3797         * rendering/RenderFlexibleBox.cpp:
3798         (WebCore::RenderFlexibleBox::OrderIterator::setOrderValues):
3799         (WebCore::RenderFlexibleBox::layoutBlock):
3800         (WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
3801         * rendering/RenderFlexibleBox.h:
3802
3803 2013-10-25  Sergio Villar Senin  <svillar@igalia.com>
3804
3805         Non-SVG build broken after r157950
3806         https://bugs.webkit.org/show_bug.cgi?id=123328
3807
3808         Reviewed by Xan Lopez.
3809
3810         The isSVGInlineTest() check should be done only if SVG is enabled.
3811
3812         * rendering/SimpleLineLayout.cpp:
3813         (WebCore::SimpleLineLayout::canUseFor):
3814
3815 2013-10-24  Jer Noble  <jer.noble@apple.com>
3816
3817         [Mac] Add helper methods to convert CMTime <--> MediaTime
3818         https://bugs.webkit.org/show_bug.cgi?id=123285
3819
3820         Reviewed by Eric Carlson.
3821
3822         Add utility methods to convert between CMTime (a rational time class) and MediaTime.
3823         Once there, PlatformClockCM can now vend and accept MediaTimes for currentTime.
3824
3825         * platform/mac/MediaTimeMac.h:
3826         * platform/mac/MediaTimeMac.cpp:
3827         (WebCore::toMediaTime): Added conversion utility method.
3828         (WebCore::toCMTime): Ditto.
3829
3830         * platform/mac/PlatformClockCM.h:
3831         * platform/mac/PlatformClockCM.mm:
3832         (PlatformClockCM::setCurrentMediaTime): Added.
3833         (PlatformClockCM::currentMediaTime): Added.
3834
3835         * WebCore.xcodeproj/project.pbxproj: Add new files to project.
3836
3837 2013-10-24  Mark Rowe  <mrowe@apple.com>
3838
3839         Remove references to OS X 10.7 from Xcode configuration settings.
3840
3841         Now that we're not building for OS X 10.7 they're no longer needed.
3842
3843         Reviewed by Anders Carlsson.
3844
3845
3846         * Configurations/Base.xcconfig:
3847         * Configurations/DebugRelease.xcconfig:
3848         * Configurations/FeatureDefines.xcconfig:
3849         * Configurations/Version.xcconfig:
3850
3851 2013-10-24  Antti Koivisto  <antti@apple.com>
3852
3853         Cache line layout path
3854         https://bugs.webkit.org/show_bug.cgi?id=123298
3855
3856         Reviewed by Sam Weinig.
3857         
3858         Determining the path can be non-trivial. Avoid computing it repeatedly on relayouts.
3859
3860         * rendering/RenderBlock.cpp:
3861         (WebCore::RenderBlock::RenderBlock):
3862         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
3863         (WebCore::RenderBlock::invalidateLineLayoutPath):
3864         (WebCore::RenderBlock::removeChild):
3865         
3866             Invalidate the path when children change.
3867
3868         * rendering/RenderBlock.h:
3869         * rendering/RenderBlockFlow.cpp:
3870         (WebCore::RenderBlockFlow::layoutInlineChildren):
3871         (WebCore::RenderBlockFlow::styleDidChange):
3872         
3873             Invalidate the path when style changes.
3874
3875         (WebCore::RenderBlockFlow::deleteLineBoxesBeforeSimpleLineLayout):
3876         (WebCore::RenderBlockFlow::ensureLineBoxes):
3877         * rendering/RenderText.cpp:
3878         (WebCore::RenderText::setText):
3879         
3880             Invalidate the path when text changes.
3881
3882 2013-10-24  Mark Rowe  <mrowe@apple.com>
3883
3884         <rdar://problem/15312643> Prepare for the mysterious future.
3885
3886         Reviewed by David Kilzer.
3887
3888
3889         * Configurations/Base.xcconfig:
3890         * Configurations/DebugRelease.xcconfig:
3891         * Configurations/FeatureDefines.xcconfig:
3892         * Configurations/Version.xcconfig:
3893
3894 2013-10-24  Andreas Kling  <akling@apple.com>
3895
3896         DocumentLoader::cachedResourceLoader() should return a reference.
3897         <https://webkit.org/b/123303>
3898
3899         ..and while we're at it, make DocumentLoader::m_cachedResourceLoader
3900         a Ref, and have CachedResourceLoader::create return a PassRef.
3901
3902         Reviewed by Sam Weinig.
3903
3904 2013-10-24  Anders Carlsson  <andersca@apple.com>
3905
3906         Stop bringing in the std namespace
3907         https://bugs.webkit.org/show_bug.cgi?id=123273
3908
3909         Reviewed by Andreas Kling.
3910
3911         * Modules/webaudio/AudioBufferSourceNode.cpp:
3912         (WebCore::AudioBufferSourceNode::renderFromBuffer):
3913         (WebCore::AudioBufferSourceNode::startGrain):
3914         (WebCore::AudioBufferSourceNode::totalPitchRate):
3915         * Modules/webaudio/AudioNodeInput.cpp:
3916         (WebCore::AudioNodeInput::numberOfChannels):
3917         * Modules/webaudio/AudioParamTimeline.cpp:
3918         (WebCore::AudioParamTimeline::valuesForTimeRangeImpl):
3919         * Modules/webaudio/AudioScheduledSourceNode.cpp:
3920         (WebCore::AudioScheduledSourceNode::updateSchedulingInfo):
3921         (WebCore::AudioScheduledSourceNode::stop):
3922         * Modules/webaudio/AudioSummingJunction.cpp:
3923         * Modules/webaudio/DelayDSPKernel.cpp:
3924         (WebCore::DelayDSPKernel::process):
3925         * Modules/webaudio/OfflineAudioDestinationNode.cpp:
3926         (WebCore::OfflineAudioDestinationNode::offlineRender):
3927         * Modules/webaudio/OscillatorNode.cpp:
3928         * Modules/webaudio/PannerNode.cpp:
3929         (WebCore::PannerNode::dopplerRate):
3930         * Modules/webaudio/WaveShaperDSPKernel.cpp:
3931         (WebCore::WaveShaperDSPKernel::processCurve):
3932         * Modules/webdatabase/DatabaseTracker.cpp:
3933         (WebCore::DatabaseTracker::hasAdequateQuotaForOrigin):
3934         * Modules/websockets/WebSocket.cpp:
3935         (WebCore::saturateAdd):
3936         * Modules/websockets/WebSocketChannel.cpp:
3937         * Modules/websockets/WebSocketFrame.cpp:
3938         (WebCore::WebSocketFrame::parseFrame):
3939         * accessibility/AccessibilityARIAGrid.cpp:
3940         * accessibility/AccessibilityARIAGridCell.cpp:
3941         * accessibility/AccessibilityARIAGridRow.cpp:
3942         * accessibility/AccessibilityList.cpp:
3943         * accessibility/AccessibilityListBox.cpp:
3944         * accessibility/AccessibilityListBoxOption.cpp:
3945         * accessibility/AccessibilityNodeObject.cpp:
3946         * accessibility/AccessibilityObject.cpp:
3947         * accessibility/AccessibilityRenderObject.cpp:
3948         * accessibility/AccessibilityTable.cpp:
3949         (WebCore::AccessibilityTable::addChildren):
3950         * accessibility/AccessibilityTableCell.cpp:
3951         * accessibility/AccessibilityTableColumn.cpp:
3952         * accessibility/AccessibilityTableHeaderContainer.cpp:
3953         * accessibility/AccessibilityTableRow.cpp:
3954         * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
3955         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
3956         (-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
3957         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
3958         (WebCore::JSCSSStyleDeclaration::getOwnPropertyNames):
3959         * bindings/js/JSGeolocationCustom.cpp:
3960         (WebCore::setTimeout):
3961         (WebCore::setMaximumAge):
3962         * bindings/js/ScriptController.cpp:
3963         * bindings/js/SerializedScriptValue.cpp:
3964         (WebCore::writeLittleEndian):
3965         (WebCore::CloneSerializer::write):
3966         (WebCore::CloneDeserializer::deserialize):
3967         (WebCore::CloneDeserializer::readString):
3968         * css/CSSComputedStyleDeclaration.cpp:
3969         (WebCore::ComputedStyleExtractor::propertyValue):
3970         * css/CSSFontSelector.cpp:
3971         (WebCore::CSSFontSelector::getFontFace):
3972         * css/CSSGradientValue.cpp:
3973         (WebCore::CSSRadialGradientValue::createGradient):
3974         * css/CSSParser.cpp:
3975         (WebCore::CSSParser::parseValue):
3976         (WebCore::CSSParser::parseColorParameters):
3977         (WebCore::CSSParser::parseHSLParameters):
3978         * css/CSSReflectValue.cpp:
3979         * css/DeprecatedStyleBuilder.cpp:
3980         (WebCore::ApplyPropertyFontSize::applyValue):
3981         * css/PropertySetCSSStyleDeclaration.cpp:
3982         * css/SVGCSSParser.cpp:
3983         * css/StylePropertySet.cpp:
3984         (WebCore::StylePropertySet::getLayeredShorthandValue):
3985         * css/StyleResolver.cpp:
3986         (WebCore::StyleResolver::viewportPercentageValue):
3987         * dom/CharacterData.cpp:
3988         (WebCore::CharacterData::parserAppendData):
3989         * dom/ContainerNode.cpp:
3990         * dom/Document.cpp:
3991         (WebCore::Document::minimumLayoutDelay):
3992         * dom/Node.cpp:
3993         (WebCore::Node::compareDocumentPosition):
3994         * dom/Range.cpp:
3995         (WebCore::Range::toString):
3996         (WebCore::Range::textRects):
3997         (WebCore::Range::textQuads):
3998         * dom/ScriptedAnimationController.cpp:
3999         (WebCore::ScriptedAnimationController::scheduleAnimation):
4000         * dom/StyledElement.cpp:
4001         (WebCore::StyledElement::makePresentationAttributeCacheKey):
4002         * dom/Text.cpp:
4003         * dom/ViewportArguments.cpp:
4004         (WebCore::clampLengthValue):
4005         (WebCore::clampScaleValue):
4006         (WebCore::ViewportArguments::resolve):
4007         (WebCore::computeMinimumScaleFactorForContentContained):
4008         (WebCore::restrictMinimumScaleFactorToViewportSize):
4009         * editing/AlternativeTextController.cpp:
4010         * editing/ApplyStyleCommand.cpp:
4011         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
4012         * editing/CompositeEditCommand.cpp:
4013         (WebCore::CompositeEditCommand::deleteInsignificantText):
4014         * editing/Editor.cpp:
4015         (WebCore::Editor::setComposition):
4016         (WebCore::Editor::compositionRange):
4017         * editing/EditorCommand.cpp:
4018         (WebCore::verticalScrollDistance):
4019         * editing/TextIterator.cpp:
4020         (WebCore::TextIterator::handleTextNode):
4021         (WebCore::TextIterator::handleTextBox):
4022         (WebCore::CharacterIterator::string):
4023         (WebCore::SearchBuffer::SearchBuffer):
4024         (WebCore::SearchBuffer::append):
4025         (WebCore::SearchBuffer::prependContext):
4026         (WebCore::SearchBuffer::search):
4027         * editing/VisibleUnits.cpp:
4028         (WebCore::startOfParagraph):
4029         * editing/htmlediting.cpp:
4030         * editing/markup.cpp:
4031         * fileapi/FileReaderLoader.cpp:
4032         (WebCore::FileReaderLoader::didReceiveResponse):
4033         (WebCore::FileReaderLoader::didReceiveData):
4034         * history/BackForwardList.cpp:
4035         (WebCore::BackForwardList::backListWithLimit):
4036         (WebCore::BackForwardList::forwardListWithLimit):
4037         * history/PageCache.cpp:
4038         (WebCore::PageCache::setCapacity):
4039         * html/BaseDateAndTimeInputType.cpp:
4040         * html/FTPDirectoryDocument.cpp:
4041         * html/HTMLAreaElement.cpp:
4042         (WebCore::HTMLAreaElement::getRegion):
4043         * html/HTMLElement.cpp:
4044         (WebCore::HTMLElement::parseAttribute):
4045         (WebCore::parseColorStringWithCrazyLegacyRules):
4046         * html/HTMLFormControlElement.cpp:
4047         * html/HTMLFormElement.cpp:
4048         (WebCore::HTMLFormElement::getTextFieldValues):
4049         * html/HTMLImageElement.cpp:
4050         * html/HTMLInputElement.cpp:
4051         * html/HTMLMapElement.cpp:
4052         * html/HTMLMediaElement.cpp:
4053         (WebCore::HTMLMediaElement::HTMLMediaElement):
4054         (WebCore::HTMLMediaElement::updateActiveTextTrackCues):
4055         (WebCore::HTMLMediaElement::textTrackAddCue):
4056         (WebCore::HTMLMediaElement::textTrackRemoveCue):
4057         (WebCore::HTMLMediaElement::rewind):
4058         (WebCore::HTMLMediaElement::seek):
4059         (WebCore::HTMLMediaElement::duration):
4060         * html/HTMLSelectElement.cpp:
4061         (WebCore::HTMLSelectElement::parseAttribute):
4062         (WebCore::HTMLSelectElement::updateListBoxSelection):
4063         * html/HTMLSourceElement.cpp:
4064         * html/HTMLTableCellElement.cpp:
4065         (WebCore::HTMLTableCellElement::colSpan):
4066         (WebCore::HTMLTableCellElement::rowSpan):
4067         * html/HTMLTableElement.cpp:
4068         (WebCore::HTMLTableElement::parseAttribute):
4069         * html/HTMLTextFormControlElement.cpp:
4070         (WebCore::HTMLTextFormControlElement::setSelectionStart):
4071         (WebCore::HTMLTextFormControlElement::setSelectionEnd):
4072         (WebCore::HTMLTextFormControlElement::select):
4073         (WebCore::HTMLTextFormControlElement::setSelectionRange):
4074         * html/HTMLTrackElement.cpp:
4075         * html/ImageDocument.cpp:
4076         (WebCore::ImageDocument::scale):
4077         * html/InputType.cpp:
4078         (WebCore::InputType::valueAsDouble):
4079         * html/MediaController.cpp:
4080         (MediaController::duration):
4081         (MediaController::currentTime):
4082         (MediaController::setCurrentTime):
4083         (MediaController::updateReadyState):
4084         * html/NumberInputType.cpp:
4085         (WebCore::NumberInputType::setValueAsDouble):
4086         (WebCore::NumberInputType::setValueAsDecimal):
4087         (WebCore::NumberInputType::createStepRange):
4088         * html/RangeInputType.cpp:
4089         (WebCore::RangeInputType::handleKeydownEvent):
4090         * html/SearchInputType.cpp:
4091         (WebCore::SearchInputType::startSearchEventTimer):
4092         * html/StepRange.cpp:
4093         (WebCore::StepRange::clampValue):
4094         (WebCore::StepRange::parseStep):
4095         * h