5c800f96f6058335a97c5425ea88f623ebfe9ef7
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-10-29  Myles C. Maxfield  <mmaxfield@apple.com>
2
3         Move InlineTextBox's text painting to it's own class
4         https://bugs.webkit.org/show_bug.cgi?id=123355
5
6         Reviewed by Dean Jackson.
7
8         Implementing text-decoration-skip: ink requires drawing text
9         twice (once regularly, and once with a thick outline into a mask).
10         This patch pulls out the relevant text drawing code from
11         InlineTextBox into a new class, called TextPainter, which can be re-used
12         to draw text multiple times.
13
14         Because there should be no observable difference, no tests need to be updated.
15
16         * CMakeLists.txt: Adding new TextPainter class
17         * GNUmakefile.list.am: Adding new TextPainter class
18         * WebCore.vcxproj/WebCore.vcxproj: Adding new TextPainter class
19         * WebCore.vcxproj/WebCore.vcxproj.filters: Adding new TextPainter
20         class
21         * WebCore.xcodeproj/project.pbxproj: Adding new TextPainter class
22         * rendering/InlineTextBox.cpp:
23         (WebCore::InlineTextBox::paint): Moving text drawing code from
24         this function
25         * rendering/RenderingAllInOne.cpp: Adding new TextPainter class
26         * rendering/TextPainter.cpp: Added.
27         (WebCore::TextPainter::TextPainter):
28         (WebCore::drawTextOrEmphasisMarks):
29         (WebCore::paintTextWithShadows):
30         (WebCore::rotation):
31         (WebCore::TextPainter::paintText): New location for text drawing
32         code
33         (WebCore::TextPainter::paintTextInContext):
34         * rendering/TextPainter.h: Added.
35         (WebCore::SavedDrawingStateForMask::SavedDrawingStateForMask):
36         (WebCore::TextPainter::boxRect):
37
38 2013-10-29  Jer Noble  <jer.noble@apple.com>
39
40         [MSE] [Mac] Enable MediaSource on the Mac
41         https://bugs.webkit.org/show_bug.cgi?id=122484
42
43         Reviewed by Darin Adler.
44
45         Enable ENABLE_MEDIA_SOURCE.
46
47         * Configurations/FeatureDefines.xcconfig:
48
49 2013-10-29  Tim Horton  <timothy_horton@apple.com>
50
51         Build fix after 158223; make TileController use float for scales.
52
53         This matches what we do in other places, and fixes the constant
54         issue with exporting symbols that include CGFloat.
55
56         * WebCore.exp.in:
57         * platform/graphics/ca/mac/TileController.h:
58         (WebCore::TileController::scale):
59         * platform/graphics/ca/mac/TileController.mm:
60         (WebCore::TileController::setScale):
61
62 2013-10-29  Antti Koivisto  <antti@apple.com>
63
64         Try to keep MSVC happy.
65
66         * rendering/SimpleLineLayout.h:
67         (WebCore::SimpleLineLayout::Run::Run):
68
69 2013-10-29  Tim Horton  <timothy_horton@apple.com>
70
71         More correct build fix after 158223.
72
73         Only fails in release because it's inline.
74
75         * WebCore.exp.in:
76
77 2013-10-29  Antti Koivisto  <antti@apple.com>
78
79         Use left/right instead of left/width for simple text runs
80         https://bugs.webkit.org/show_bug.cgi?id=123465
81
82         Reviewed by Andreas Kling.
83
84         This simplifies the code a bit.
85
86         * rendering/SimpleLineLayout.cpp:
87         (WebCore::SimpleLineLayout::adjustRunOffsets):
88         (WebCore::SimpleLineLayout::create):
89         * rendering/SimpleLineLayout.h:
90         (WebCore::SimpleLineLayout::Run::Run):
91         * rendering/SimpleLineLayoutResolver.h:
92         (WebCore::SimpleLineLayout::RunResolver::Run::rect):
93
94 2013-10-29  Tim Horton  <timothy_horton@apple.com>
95
96         Try fixing the Mac build (though I have no idea why
97         this wouldn't fail locally)...
98
99         * WebCore.exp.in:
100
101 2013-10-29  Tim Horton  <timothy_horton@apple.com>
102
103         Remote Layer Tree: Support tiled drawing and use it for the main frame
104         https://bugs.webkit.org/show_bug.cgi?id=123422
105
106         Reviewed by Simon Fraser.
107
108         * WebCore.exp.in:
109         * WebCore.xcodeproj/project.pbxproj:
110
111 2013-10-29  Eric Carlson  <eric.carlson@apple.com>
112
113         [Mac MediaStream] implement AVFoundation backed MediaStreamSource
114         https://bugs.webkit.org/show_bug.cgi?id=123316
115
116         Reviewed by Jer Noble
117
118         No new tests, existing tests updated.
119
120         * CMakeLists.txt: Add MediaStreamSourceStates.cpp.
121
122         * Modules/mediastream/MediaSourceStates.cpp:
123         (WebCore::MediaSourceStates::MediaSourceStates): m_SourceStates -> m_sourceStates.
124         (WebCore::MediaSourceStates::sourceType): Ditto.
125         (WebCore::MediaSourceStates::facingMode): Ditto.
126         * Modules/mediastream/MediaSourceStates.h: Ditto.
127         * Modules/mediastream/MediaSourceStates.idl: Mark some attributes as optional.
128
129         * Modules/mediastream/MediaStream.cpp:
130         (WebCore::MediaStream::addTrack):
131         (WebCore::MediaStream::removeTrack):
132         (WebCore::MediaStream::addRemoteSource):
133         (WebCore::MediaStream::removeRemoteSource):
134
135         * Modules/mediastream/MediaStreamCapabilities.cpp:
136         (WebCore::MediaStreamCapabilities::sourceType): MediaSourceStates -> MediaStreamSourceStates
137         (WebCore::MediaStreamCapabilities::facingMode): Ditto.
138
139         * Modules/mediastream/MediaStreamTrack.cpp:
140         (WebCore::MediaStreamTrack::MediaStreamTrack): Don't observe source changes directly, let the
141             private track do that. Change private track parameter to ref because it can't be NULL.
142         (WebCore::MediaStreamTrack::~MediaStreamTrack): Ditto.
143         (WebCore::MediaStreamTrack::setSource): Pass through to private track.
144         (WebCore::MediaStreamTrack::stopped): Ditto.
145         (WebCore::MediaStreamTrack::states): Ditto.
146         (WebCore::MediaStreamTrack::capabilities): Ditto.
147         (WebCore::MediaStreamTrack::applyConstraints): Ditto.
148         (WebCore::MediaStreamTrack::stopProducingData): Ditto.
149         (WebCore::MediaStreamTrack::trackReadyStateChanged): Renamed from sourceStateChanged. Don't
150             schedule an 'ended' event if called as a side effect of the stop() method having been
151             called as per spec.
152         (WebCore::MediaStreamTrack::trackMutedChanged): Renamed from sourceMutedChanged.
153         (WebCore::MediaStreamTrack::trackEnabledChanged): Renamed from sourceEnabledChanged.
154         (WebCore::MediaStreamTrack::stop): Pass through to private track.
155         * Modules/mediastream/MediaStreamTrack.h:
156         (WebCore::MediaStreamTrack::Observer::~Observer): Add virtual destructor.
157
158         * Modules/mediastream/UserMediaRequest.cpp:
159         (WebCore::UserMediaRequest::callSuccessHandler): Set track, not source, constraints.
160
161         * WebCore.xcodeproj/project.pbxproj: Add new files.
162
163         * bindings/js/JSMediaSourceStatesCustom.cpp:
164         (WebCore::JSMediaSourceStates::facingMode): Return jsUndefined when the facing mode
165             is Unknown.
166
167         * platform/mediastream/MediaStreamCenter.h: Remove unused class forward defines and
168             undefined method prototype.
169
170         * platform/mediastream/MediaStreamDescriptor.cpp:
171         (WebCore::MediaStreamDescriptor::addSource): ASSERT if source is kind None.
172         (WebCore::MediaStreamDescriptor::removeSource): Ditto.
173         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor):
174
175         * platform/mediastream/MediaStreamSource.cpp:
176         (WebCore::MediaStreamSource::setReadyState): Call startProducingData when readyState changes
177             to Live, stopProducingData when it changes to Ended.
178         (WebCore::MediaStreamSource::removeObserver): Call stop() when there are no more observers.
179         (WebCore::MediaStreamSource::setEnabled): If passed false, do nothing unless all observers
180             are disabled. Call startProducingData/stopProducingData when becoming enabled/disabled.
181         (WebCore::MediaStreamSource::stop): Don't bother checking to see if other observers have
182             stopped, the spec says that track.stop() should permanently stop the track's source.
183         * platform/mediastream/MediaStreamSource.h:
184         (WebCore::MediaStreamSource::name): Make virtual so derived classes can override.
185         (WebCore::MediaStreamSource::setName): Ditto.
186         (WebCore::MediaStreamSource::readyState): Ditto.
187         (WebCore::MediaStreamSource::enabled): Ditto.
188         (WebCore::MediaStreamSource::muted): Ditto.
189         (WebCore::MediaStreamSource::setReadonly): Ditto.
190         (WebCore::MediaStreamSource::remote): Ditto.
191         (WebCore::MediaStreamSource::setRemote): Ditto.
192         (WebCore::MediaStreamSource::startProducingData): Added.
193         (WebCore::MediaStreamSource::stopProducingData): Added.
194
195         * platform/mediastream/MediaStreamSourceCapabilities.h: Move MediaStreamSourceStates to
196             its own file.
197
198         * platform/mediastream/MediaStreamSourceStates.cpp: Added.
199         (WebCore::MediaStreamSourceStates::facingMode): Moved here from MediaSourceStates so the 
200             strings are available to platform code.
201         (WebCore::MediaStreamSourceStates::sourceType): Ditto.
202         * platform/mediastream/MediaStreamSourceStates.h: Added, moved from MediaStreamSourceCapabilities.h.
203
204         * platform/mediastream/MediaStreamTrackPrivate.cpp:
205         (WebCore::MediaStreamTrackPrivate::create): Pass private track to constructor as PassRefPtr.
206         (WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate): Initialize member variables.
207         (WebCore::MediaStreamTrackPrivate::~MediaStreamTrackPrivate): Unregister as source observer.
208         (WebCore::MediaStreamTrackPrivate::setSource): Unregister/register as source observer.
209         (WebCore::MediaStreamTrackPrivate::setEnabled): Enable/disable source, call client.
210         (WebCore::MediaStreamTrackPrivate::stop): New. Set readyState to Ended, optionally stop source.
211         (WebCore::MediaStreamTrackPrivate::setReadyState): Inline the logic from shouldFireTrackReadyStateChanged.
212         (WebCore::MediaStreamTrackPrivate::constraints): New, passthrough to the source.
213         (WebCore::MediaStreamTrackPrivate::states): Ditto.
214         (WebCore::MediaStreamTrackPrivate::type): Ditto.
215         (WebCore::MediaStreamTrackPrivate::capabilities): Ditto.
216         (WebCore::MediaStreamTrackPrivate::applyConstraints): Ditto.
217         (WebCore::MediaStreamTrackPrivate::sourceReadyStateChanged): React to source changes.
218         (WebCore::MediaStreamTrackPrivate::sourceMutedChanged): Ditto.
219         (WebCore::MediaStreamTrackPrivate::sourceEnabledChanged): Ditto.
220         (WebCore::MediaStreamTrackPrivate::observerIsEnabled): Respond to source query.
221         (WebCore::MediaStreamTrackPrivate::observerIsStopped): Ditto.
222         * platform/mediastream/MediaStreamTrackPrivate.h:
223
224         * platform/mediastream/mac/AVAudioCaptureSource.h: Added.
225         * platform/mediastream/mac/AVAudioCaptureSource.mm: Added.
226
227         * platform/mediastream/mac/AVCaptureDeviceManager.h: Added.
228         * platform/mediastream/mac/AVCaptureDeviceManager.mm: Added.
229
230         * platform/mediastream/mac/AVMediaCaptureSource.h: Added.
231         * platform/mediastream/mac/AVMediaCaptureSource.mm: Added.
232
233         * platform/mediastream/mac/AVVideoCaptureSource.h: Added.
234         * platform/mediastream/mac/AVVideoCaptureSource.mm: Added.
235
236         * platform/mediastream/mac/MediaStreamCenterMac.cpp:
237         (WebCore::MediaStreamCenterMac::validateRequestConstraints): Implement.
238         (WebCore::MediaStreamCenterMac::createMediaStream): Ditto.
239         (WebCore::MediaStreamCenterMac::getMediaStreamTrackSources): Ditto.
240
241         * platform/mock/MockMediaStreamCenter.cpp:
242         (WebCore::initializeMockSources): Update for MediaStreamSourceStates changes.
243         (WebCore::MockMediaStreamCenter::createMediaStream):
244
245 2013-10-29  Zoltan Horvath  <zoltan@webkit.org>
246
247         [CSS Regions][CSS Shapes] Layout error when the shape has negative top coordinate and it's applied on the second region
248         <https://webkit.org/b/123346>
249
250         Reviewed by David Hyatt.
251
252         We have a layout error when there is a shape applied on the second region, and it has a negative 'top' coordinate.
253         Since shapeInsideInfo::shapeLogicalTop() can return negative numbers, we need to check for it, when we're positioning
254         the first line in the region.
255
256         Test: fast/regions/shape-inside/shape-inside-on-multiple-regions-with-negative-shape-top.html
257
258         * rendering/RenderBlockLineLayout.cpp:
259         (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread):
260
261 2013-10-29  Brady Eidson  <beidson@apple.com>
262
263         Get IDBTransactionBackendLevelDBOperations *almost* ready to go cross platform.
264         https://bugs.webkit.org/show_bug.cgi?id=123451
265
266         Reviewed by NOBODY (My bad, non-reviewed, non-building code got in there)
267
268         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
269         (WebCore::IDBDatabaseBackendImpl::processPendingCalls): Remove the auto line I was trying from review feedback.
270
271 2013-10-29  Brady Eidson  <beidson@apple.com>
272
273         Get IDBTransactionBackendLevelDBOperations *almost* ready to go cross platform.
274         https://bugs.webkit.org/show_bug.cgi?id=123451
275
276         Reviewed by Andreas Kling.
277
278         This involves:
279         - Splitting out IDBTransactionBackendLevelDB::Operation into its own header
280         - Splitting out IDBDatabaseBackendImpl::PendingOpenCall into its own header
281         - Reworking the LevelDB Operations to handle the base class IDBTransactionBackendInterface
282         - Adding virtual methods in a few of the *Interface classes to support the above
283
284         * GNUmakefile.list.am:
285         * WebCore.xcodeproj/project.pbxproj:
286
287         * Modules/indexeddb/IDBCallbacks.h:
288
289         * Modules/indexeddb/IDBCursorBackendInterface.h:
290
291         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp:
292         (WebCore::IDBDatabaseBackendImpl::setIndexKeys):
293         (WebCore::IDBDatabaseBackendImpl::processPendingCalls):
294         (WebCore::IDBDatabaseBackendImpl::openConnection):
295         (WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
296         * Modules/indexeddb/IDBDatabaseBackendImpl.h:
297         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
298
299         * Modules/indexeddb/IDBOperation.h: Added.
300         (WebCore::IDBOperation::~IDBOperation):
301
302         * Modules/indexeddb/IDBPendingOpenCall.h: Added.
303         (WebCore::IDBPendingOpenCall::create):
304         (WebCore::IDBPendingOpenCall::callbacks):
305         (WebCore::IDBPendingOpenCall::databaseCallbacks):
306         (WebCore::IDBPendingOpenCall::version):
307         (WebCore::IDBPendingOpenCall::transactionId):
308         (WebCore::IDBPendingOpenCall::IDBPendingOpenCall):
309
310         * Modules/indexeddb/IDBRequest.h:
311
312         * Modules/indexeddb/IDBTransactionBackendInterface.h:
313
314         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
315         (WebCore::IDBCursorBackendLevelDB::CursorIterationOperation::create):
316         (WebCore::IDBCursorBackendLevelDB::CursorAdvanceOperation::create):
317         (WebCore::IDBCursorBackendLevelDB::CursorPrefetchIterationOperation::create):
318         (WebCore::IDBCursorBackendLevelDB::IDBCursorBackendLevelDB):
319         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
320
321         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
322         (WebCore::IDBTransactionBackendLevelDB::scheduleTask):
323         (WebCore::IDBTransactionBackendLevelDB::abort):
324         (WebCore::IDBTransactionBackendLevelDB::taskTimerFired):
325         (WebCore::IDBTransactionBackendLevelDB::schedulePutOperation):
326         (WebCore::IDBTransactionBackendLevelDB::scheduleOpenCursorOperation):
327         (WebCore::IDBTransactionBackendLevelDB::scheduleCountOperation):
328         (WebCore::IDBTransactionBackendLevelDB::scheduleDeleteRangeOperation):
329         (WebCore::IDBTransactionBackendLevelDB::scheduleClearOperation):
330         (WebCore::IDBTransactionBackendLevelDB::createCursorBackend):
331         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
332
333         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
334         (WebCore::CreateObjectStoreOperation::perform):
335         (WebCore::CreateIndexOperation::perform):
336         (WebCore::CreateIndexAbortOperation::perform):
337         (WebCore::DeleteIndexOperation::perform):
338         (WebCore::DeleteIndexAbortOperation::perform):
339         (WebCore::OpenCursorOperation::perform):
340         (WebCore::DeleteObjectStoreOperation::perform):
341         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
342         (WebCore::CreateObjectStoreAbortOperation::perform):
343         (WebCore::DeleteObjectStoreAbortOperation::perform):
344         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform):
345         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:
346         (WebCore::CreateObjectStoreOperation::create):
347         (WebCore::CreateObjectStoreOperation::CreateObjectStoreOperation):
348         (WebCore::DeleteObjectStoreOperation::create):
349         (WebCore::DeleteObjectStoreOperation::DeleteObjectStoreOperation):
350         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::create):
351         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::VersionChangeOperation):
352         (WebCore::CreateObjectStoreAbortOperation::create):
353         (WebCore::CreateObjectStoreAbortOperation::CreateObjectStoreAbortOperation):
354         (WebCore::DeleteObjectStoreAbortOperation::create):
355         (WebCore::DeleteObjectStoreAbortOperation::DeleteObjectStoreAbortOperation):
356         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::create):
357         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::VersionChangeAbortOperation):
358         (WebCore::CreateIndexOperation::create):
359         (WebCore::CreateIndexOperation::CreateIndexOperation):
360         (WebCore::CreateIndexAbortOperation::create):
361         (WebCore::CreateIndexAbortOperation::CreateIndexAbortOperation):
362         (WebCore::DeleteIndexOperation::create):
363         (WebCore::DeleteIndexOperation::DeleteIndexOperation):
364         (WebCore::DeleteIndexAbortOperation::create):
365         (WebCore::DeleteIndexAbortOperation::DeleteIndexAbortOperation):
366         (WebCore::GetOperation::create):
367         (WebCore::GetOperation::GetOperation):
368         (WebCore::PutOperation::create):
369         (WebCore::PutOperation::PutOperation):
370         (WebCore::SetIndexesReadyOperation::create):
371         (WebCore::SetIndexesReadyOperation::SetIndexesReadyOperation):
372         (WebCore::OpenCursorOperation::create):
373         (WebCore::OpenCursorOperation::OpenCursorOperation):
374         (WebCore::CountOperation::create):
375         (WebCore::CountOperation::CountOperation):
376         (WebCore::DeleteRangeOperation::create):
377         (WebCore::DeleteRangeOperation::DeleteRangeOperation):
378         (WebCore::ClearOperation::create):
379         (WebCore::ClearOperation::ClearOperation):
380
381 2013-10-29  Antti Koivisto  <antti@apple.com>
382
383         Make SimpleLineLayout::Layout a variable size object
384         https://bugs.webkit.org/show_bug.cgi?id=123459
385
386         Reviewed by Andreas Kling.
387
388         Less memory, less indirection.
389
390         * rendering/SimpleLineLayout.cpp:
391         (WebCore::SimpleLineLayout::canUseFor):
392         (WebCore::SimpleLineLayout::create):
393         (WebCore::SimpleLineLayout::Layout::create):
394         (WebCore::SimpleLineLayout::Layout::Layout):
395         * rendering/SimpleLineLayout.h:
396         * rendering/SimpleLineLayoutFunctions.cpp:
397         (WebCore::SimpleLineLayout::hitTestFlow):
398         * rendering/SimpleLineLayoutFunctions.h:
399         (WebCore::SimpleLineLayout::computeFlowFirstLineBaseline):
400         (WebCore::SimpleLineLayout::computeFlowLastLineBaseline):
401         (WebCore::SimpleLineLayout::findTextCaretMinimumOffset):
402         (WebCore::SimpleLineLayout::findTextCaretMaximumOffset):
403         (WebCore::SimpleLineLayout::containsTextCaretOffset):
404         (WebCore::SimpleLineLayout::isTextRendered):
405         * rendering/SimpleLineLayoutResolver.h:
406         (WebCore::SimpleLineLayout::RunResolver::end):
407
408 2013-10-29  Andreas Kling  <akling@apple.com>
409
410         RenderObject::outlineStyleForRepaint() should return a reference.
411         <https://webkit.org/b/123453>
412
413         Kill a FIXME and make outlineStyleForRepaint() return a RenderStyle&.
414
415         Reviewed by Antti Koivisto.
416
417 2013-10-29  Andreas Kling  <akling@apple.com>
418
419         Move more of SVG resources cache to using RenderElement.
420         <https://webkit.org/b/123452>
421
422         Make some more RenderSVGResourcesCache methods take RenderElement&
423         instead of RenderObject*.
424
425         Also removed a double hash lookup in removeResourcesFromRenderer().
426
427         Reviewed by Antti Koivisto.
428
429 2013-10-29  Joseph Pecoraro  <pecoraro@apple.com>
430
431         Web Inspector: Remove old Inspector.json version files and generators
432         https://bugs.webkit.org/show_bug.cgi?id=123426
433
434         Reviewed by Timothy Hatcher.
435
436         * CMakeLists.txt:
437         * DerivedSources.make:
438         * GNUmakefile.am:
439         * GNUmakefile.list.am:
440         * WebCore.xcodeproj/project.pbxproj:
441         * inspector/Inspector-0.1.json: Removed.
442         * inspector/Inspector-1.0.json: Removed.
443         * inspector/generate-inspector-protocol-version: Removed.
444
445 2013-10-29  Philippe Normand  <pnormand@igalia.com>
446
447         [GTK] DOM bindings documentation errors
448         https://bugs.webkit.org/show_bug.cgi?id=123448
449
450         Reviewed by Carlos Garcia Campos.
451
452         * bindings/gobject/WebKitDOMCustom.h: Basic documentation for
453         return types.
454         * bindings/scripts/CodeGeneratorGObject.pm:
455         (GenerateFunction): Generate Returns documentation tag for
456         non-void return types and provide basic documentation.
457         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
458         Reset tests results.
459         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
460         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
461         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
462         * bindings/scripts/test/GObject/WebKitDOMTestException.h:
463         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
464         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
465         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
466         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
467         * bindings/scripts/test/GObject/WebKitDOMattribute.h:
468
469 2013-10-24  Brent Fulgham  <bfulgham@apple.com>
470
471         Invalid cast in WebCore::toRenderMathMLBlock
472         https://bugs.webkit.org/show_bug.cgi?id=121728
473         rdar://problem/15046151
474
475         Reviewed by Dean Jackson.
476
477         Tested by: mathml/arbitrary-markup.html
478
479         * dom/Element.h: Expose childShouldCreateRenderer for
480         MathML as well as SVG builds.
481         * dom/Node.h: 
482         (WebCore::Node::isMathMLElement): Added.
483         * mathml/MathMLElement.cpp:
484         (WebCore::MathMLElement::create): Create as MathML Element.
485         (WebCore::MathMLElement::childShouldCreateRenderer):
486         Only allow the child to emit a renderer if it is a
487         MathML element.
488         * mathml/MathMLElement.h:
489
490 2013-10-29  Andreas Kling  <akling@apple.com>
491
492         SVG: applyStrokeStyleToContext should take a RenderElement&.
493         <https://webkit.org/b/123447>
494
495         ..and a RenderStyle& too, for that matter.
496
497         Reviewed by Anders Carlsson.
498
499         * rendering/svg/SVGRenderSupport.h:
500         * rendering/svg/SVGRenderSupport.cpp:
501         (WebCore::SVGRenderSupport::applyStrokeStyleToContext):
502
503             Have this take a RenderElement& and RenderStyle& instead of
504             raw pointers. Tweaked a silly-looking loop.
505
506         * rendering/svg/RenderSVGShape.h:
507         * rendering/svg/RenderSVGShape.cpp:
508
509             Moved BoundingRectStrokeStyleApplier helper class into the
510             cpp file since it wasn't being used anywhere else.
511
512         * rendering/svg/RenderSVGResourceGradient.cpp:
513         (WebCore::RenderSVGResourceGradient::applyResource):
514         * rendering/svg/RenderSVGResourcePattern.cpp:
515         (WebCore::RenderSVGResourcePattern::applyResource):
516         * rendering/svg/RenderSVGResourceSolidColor.cpp:
517         (WebCore::RenderSVGResourceSolidColor::applyResource):
518
519             Remove ampersands.
520
521 2013-10-29  Antti Koivisto  <antti@apple.com>
522
523         Multiple runs per line on simple line path
524         https://bugs.webkit.org/show_bug.cgi?id=123446
525
526         Reviewed by Andreas Kling.
527
528         By allowing multiple runs per line we can support text flows with consecutive whitespaces in the middle.
529
530         * rendering/SimpleLineLayout.cpp:
531         (WebCore::SimpleLineLayout::canUseFor):
532         
533             Remove space test.
534             The improved test coverage found a few more cases that we need to disallow.
535
536         (WebCore::SimpleLineLayout::adjustRunOffsets):
537             
538             Round the run positions and widths so they match line boxes.
539             Adjust for text-align.
540
541         (WebCore::SimpleLineLayout::create):
542         
543             Split lines with consecutive spaces into runs.
544
545         * rendering/SimpleLineLayout.h:
546         (WebCore::SimpleLineLayout::Run::Run):
547         * rendering/SimpleLineLayoutFunctions.cpp:
548         (WebCore::SimpleLineLayout::hitTestFlow):
549         (WebCore::SimpleLineLayout::collectFlowOverflow):
550         (WebCore::SimpleLineLayout::computeTextBoundingBox):
551         * rendering/SimpleLineLayoutResolver.h:
552         (WebCore::SimpleLineLayout::RunResolver::Iterator::resolver):
553         (WebCore::SimpleLineLayout::RunResolver::Iterator::lineIndex):
554         (WebCore::SimpleLineLayout::RunResolver::Run::Run):
555         (WebCore::SimpleLineLayout::RunResolver::Run::rect):
556         (WebCore::SimpleLineLayout::RunResolver::Run::baseline):
557         (WebCore::SimpleLineLayout::RunResolver::Run::text):
558         (WebCore::SimpleLineLayout::RunResolver::Run::lineIndex):
559         (WebCore::SimpleLineLayout::RunResolver::Iterator::Iterator):
560         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator++):
561         
562             Removed unnecessary operators.
563
564         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator==):
565         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator!=):
566         (WebCore::SimpleLineLayout::RunResolver::Iterator::operator*):
567         (WebCore::SimpleLineLayout::RunResolver::Iterator::simpleRun):
568         (WebCore::SimpleLineLayout::RunResolver::RunResolver):
569         (WebCore::SimpleLineLayout::RunResolver::begin):
570         (WebCore::SimpleLineLayout::RunResolver::end):
571         
572             Resolver -> RunResolver
573
574         (WebCore::SimpleLineLayout::LineResolver::Iterator::Iterator):
575         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator++):
576         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator==):
577         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator!=):
578         (WebCore::SimpleLineLayout::LineResolver::Iterator::operator*):
579         (WebCore::SimpleLineLayout::LineResolver::LineResolver):
580         (WebCore::SimpleLineLayout::LineResolver::begin):
581         (WebCore::SimpleLineLayout::LineResolver::end):
582         
583             Add LineResolver around RunResolver. It resolves the line rectangles.
584
585         (WebCore::SimpleLineLayout::runResolver):
586         (WebCore::SimpleLineLayout::lineResolver):
587
588 2013-10-29  Chris Fleizach  <cfleizach@apple.com>
589
590         AX: elements with explicit tabindex should expose AXFocused as writable, since mouse clicks can focus it
591         https://bugs.webkit.org/show_bug.cgi?id=121335
592
593         Reviewed by Mario Sanchez Prada.
594
595         Re-order logic that determines if a <span> should appear as an accessible element. 
596         The change is that if an element canSetFocus() it should always be in the AX tree.
597
598         Test: accessibility/tabindex-elements-are-accessible.html
599
600         * accessibility/AccessibilityRenderObject.cpp:
601         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
602         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
603
604 2013-10-29  Philippe Normand  <pnormand@igalia.com>
605
606         [GTK] enable media-stream in build-webkit
607         https://bugs.webkit.org/show_bug.cgi?id=123144
608
609         Reviewed by Martin Robinson.
610
611         * GNUmakefile.list.am: Add new MediaStream files to the GTK port build.
612
613 2013-10-28  Chris Fleizach  <cfleizach@apple.com>
614
615         AX: Webkit does not expose AXRequired on input type=file
616         https://bugs.webkit.org/show_bug.cgi?id=123376
617
618         Reviewed by Mario Sanchez Prada.
619
620         File upload buttons should expose AXRequired, since they take an input state.
621
622         * accessibility/AccessibilityNodeObject.cpp:
623         (WebCore::AccessibilityNodeObject::supportsRequiredAttribute):
624         (WebCore::AccessibilityNodeObject::alternativeText):
625
626 2013-10-29  Jinwoo Song  <jinwoo7.song@samsung.com>
627
628         Re-enable simple line layout for EFL
629         https://bugs.webkit.org/show_bug.cgi?id=123402
630
631         Reviewed by Antti Koivisto.
632
633         * rendering/SimpleLineLayout.cpp:
634         (WebCore::SimpleLineLayout::canUseFor): 8-bit TextRun support is now enabled for EFL port, so the port
635         can use the simple line layout.
636
637 2013-10-29  Zan Dobersek  <zdobersek@igalia.com>
638
639         Unreviewed, follow-up to r158185. Export the required symbol.
640         This should fix the Mac debug build.
641
642         * WebCore.exp.in:
643
644 2013-10-29  Santosh Mahto  <santosh.ma@samsung.com>
645
646         Text selected with double-click gets unselected after DOM modification
647         https://bugs.webkit.org/show_bug.cgi?id=114227
648
649         Reviewed by Ryosuke Niwa.
650
651         Before this patch when selection is done by double-click (start and base remain
652         same) and DOM is modified then selection gets vanished. This does not
653         happen when selection is done by dragging mouse. This happens because
654         on double-click base and extent remain the same and on DOM
655         modification we update the selection with base and extent, so we loose
656         the selection. Since in double-click case start/end contain the
657         correct selection, same should be used after dom modification to
658         update selection.
659
660         Test: editing/selection/double-click-selection-with-dom-mutation.html
661
662         * editing/FrameSelection.cpp:
663         (WebCore::FrameSelection::textWasReplaced): use start/end to update
664         selection in case double click selection. Added a check for base !=
665         extent, if base != extent use base/extent to update the selection
666         otherwise use start/end with directionality check.
667
668 2013-10-29  Mihnea Ovidenie  <mihnea@adobe.com>
669
670         [CSSRegions] Display anonymous regions in DRT
671         https://bugs.webkit.org/show_bug.cgi?id=122963
672
673         Reviewed by Alexandru Chiculita.
674
675         After https://bugs.webkit.org/show_bug.cgi?id=119135, css regions are modelled using an anonymous
676         RenderNamedFlowFragment object inside the block having a valid -webkit-flow-from.
677         This patch changes the way elements | pseudo-elements with -webkit-flow-from are displayed
678         in test dumps.
679
680         Before:
681             RenderRegion {DIV} at (200,200) size 52x52 [border: (1px solid #000000)]
682         After:
683             RenderBlock (positioned) {DIV} at (200,200) size 52x52 [border: (1px solid #000000)]
684                 RenderNamedFlowFragment at (1,1) size 50x50
685
686         Before:
687             Flow Threads
688                 Thread with flow-name 'article'
689                 Regions for flow 'article'
690                     RenderRegion {DIV} #region_1
691                     RenderRegion {DIV} #region_2
692         After:
693             Named flows
694                 Named flow 'article'
695                 Regions for named flow 'article'
696                     RenderNamedFlowFragment (anonymous child of {DIV::before} #region_1)
697                     RenderNamedFlowFragment (anonymous child of {DIV} #region_2)
698
699         Changed existing tests based on the new dumps.
700
701         * rendering/RenderBlock.cpp:
702         (WebCore::RenderBlock::renderName):
703         * rendering/RenderNamedFlowFragment.h: Add a comment explaining the purpose of the class.
704         * rendering/RenderRegion.h:
705         * rendering/RenderTreeAsText.cpp:
706         (WebCore::write):
707         (WebCore::writeRenderRegionList): Adjust function to display info for anonymous regions too.
708         (WebCore::writeRenderNamedFlowThreads): Separate dump of valid and invalid regions for a named flow.
709
710 2013-10-29  Zan Dobersek  <zdobersek@igalia.com>
711
712         Move writeIndent, overloaded << operators from RenderTreeAsText to TextStream
713         https://bugs.webkit.org/show_bug.cgi?id=116012
714
715         Reviewed by Simon Fraser.
716
717         The writeIndent method and overloaded << operators for writing out vectors and points and rectangles
718         of various types are not specific to the render tree nor do they depend on any rendering-specific interface.
719
720         * page/scrolling/ScrollingStateNode.cpp:
721         * page/scrolling/ScrollingStateNode.h:
722         (ScrollingStateNode): Remove the writeIndent declaration, it's functionally the same as the TextStream method.
723         * platform/graphics/GraphicsLayer.cpp:
724         * platform/graphics/GraphicsLayer.h:
725         (GraphicsLayer): Ditto.
726         * platform/graphics/filters/DistantLightSource.cpp: Remove the RenderTreeAsText.h inclusion or replace it with
727         the inclusion of the TextStream.h header where required. The writeIndent method is now declared there.
728         * platform/graphics/filters/FEBlend.cpp: Ditto.
729         * platform/graphics/filters/FEColorMatrix.cpp: Ditto.
730         * platform/graphics/filters/FEComponentTransfer.cpp: Ditto.
731         * platform/graphics/filters/FEComposite.cpp: Ditto.
732         * platform/graphics/filters/FEConvolveMatrix.cpp: Ditto.
733         * platform/graphics/filters/FECustomFilter.cpp: Ditto.
734         * platform/graphics/filters/FEDiffuseLighting.cpp: Ditto.
735         * platform/graphics/filters/FEDisplacementMap.cpp: Ditto.
736         * platform/graphics/filters/FEDropShadow.cpp: Ditto.
737         * platform/graphics/filters/FEFlood.cpp: Ditto.
738         * platform/graphics/filters/FEGaussianBlur.cpp: Ditto.
739         * platform/graphics/filters/FEMerge.cpp: Ditto.
740         * platform/graphics/filters/FEMorphology.cpp: Ditto.
741         * platform/graphics/filters/FEOffset.cpp: Ditto.
742         * platform/graphics/filters/FESpecularLighting.cpp: Ditto.
743         * platform/graphics/filters/FETurbulence.cpp: Ditto.
744         * platform/graphics/filters/SourceAlpha.cpp: Ditto.
745         * platform/graphics/filters/SourceGraphic.cpp: Ditto.
746         * platform/text/TextStream.cpp: Move the writeIndent and operators' definitions here.
747         (WebCore::operator<<):
748         (WebCore):
749         (WebCore::writeIndent):
750         * platform/text/TextStream.h: Move the writeIndent and operators' declarations here.
751         (WebCore):
752         (TextStream):
753         (WebCore::TextStream::operator<<):
754         * rendering/RenderTreeAsText.cpp: Move the writeIndent and operators' definitions into TextStream.
755         (WebCore):
756         * rendering/RenderTreeAsText.h: Move the writeIndent and operators' declarations into TextStream.
757         (WebCore):
758
759 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
760
761         Clean up ScopedEventQueue
762         https://bugs.webkit.org/show_bug.cgi?id=123408
763
764         Reviewed by Darin Adler.
765
766         Clean up the ScopedEventQueue implementation. ScopedEventQueue::instance() should return a reference to a
767         NeverDestroyed<ScopedEventQueue> object. The static ScopedEventQueue::s_instance pointer is removed.
768
769         The ScopedEventQueue destructor, the dispatchAllEvents method and the scope level incrementation/decrementation
770         methods are made private. NeverDestroyed<ScopedEventQueue> and EventQueueScope are made friends of the
771         ScopedEventQueue class so they can access the constructor and the incrementation/decrementation methods, respectively.
772
773         ScopedEventQueue method definitions are reordered to follow the order of their declarations in the header file.
774         ScopedEventQueue::dispatchAllEvents() now uses std::move to efficiently dispatch and clear all currently queued events.
775
776         * dom/EventDispatcher.cpp:
777         (WebCore::EventDispatcher::dispatchScopedEvent):
778         * dom/ScopedEventQueue.cpp:
779         (WebCore::ScopedEventQueue::instance):
780         (WebCore::ScopedEventQueue::dispatchAllEvents):
781         * dom/ScopedEventQueue.h:
782         (WebCore::EventQueueScope::EventQueueScope):
783         (WebCore::EventQueueScope::~EventQueueScope):
784
785 2013-10-28  Andreas Kling  <akling@apple.com>
786
787         applyTextTransform() should take a const RenderStyle&.
788         <https://webkit.org/b/123434>
789
790         This function is always called with an existing RenderStyle object.
791
792         Reviewed by Anders Carlsson.
793
794 2013-10-28  Andreas Kling  <akling@apple.com>
795
796         RenderSVGResource::applyResource() should take a const RenderStyle&.
797         <https://webkit.org/b/123433>
798
799         These functions are always called with an existing RenderStyle object
800         so let them take a const reference instead of a raw pointer.
801         Also sprinkled some missing OVERRIDEs.
802
803         Reviewed by Anders Carlsson.
804
805 2013-10-28  Andreas Kling  <akling@apple.com>
806
807         Remove unused RenderTextControl::textBaseStyle().
808         <https://webkit.org/b/123432>
809
810         Reviewed by Anders Carlsson.
811
812 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
813
814         HTML input type objects should be managed through std::unique_ptr
815         https://bugs.webkit.org/show_bug.cgi?id=123160
816
817         Reviewed by Darin Adler.
818
819         Make the constructors of the InputType subclasses public. This makes it possible to use std::make_unique on these classes
820         and makes the T::create() helpers redundant. New instances of these classes are now managed through std::unique_ptr.
821
822         InputType::create() now uses a NeverDestroyed InputTypeFactoryMap that maps type names to InputTypeFactoryFunctions and
823         gets populated when the method is first called and the map is still empty. Certain types are not added to the factory map
824         if they're disabled at runtime.
825
826         The factory is used to create the new InputType object if the requested type was found in the map, and TextInputType is used otherwise.
827
828         * html/ButtonInputType.cpp:
829         * html/ButtonInputType.h:
830         (WebCore::ButtonInputType::ButtonInputType):
831         * html/CheckboxInputType.cpp:
832         * html/CheckboxInputType.h:
833         (WebCore::CheckboxInputType::CheckboxInputType):
834         * html/ColorInputType.cpp:
835         * html/ColorInputType.h:
836         (WebCore::ColorInputType::ColorInputType):
837         * html/DateInputType.cpp:
838         * html/DateInputType.h:
839         * html/DateTimeInputType.cpp:
840         * html/DateTimeInputType.h:
841         (WebCore::DateTimeInputType::DateTimeInputType):
842         * html/DateTimeLocalInputType.cpp:
843         * html/DateTimeLocalInputType.h:
844         (WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
845         * html/EmailInputType.cpp:
846         * html/EmailInputType.h:
847         (WebCore::EmailInputType::EmailInputType):
848         * html/FileInputType.cpp:
849         * html/FileInputType.h:
850         * html/HTMLInputElement.cpp:
851         (WebCore::HTMLInputElement::updateType):
852         * html/HTMLInputElement.h:
853         * html/HiddenInputType.cpp:
854         * html/HiddenInputType.h:
855         (WebCore::HiddenInputType::HiddenInputType):
856         * html/ImageInputType.cpp:
857         (WebCore::ImageInputType::ImageInputType):
858         * html/ImageInputType.h:
859         * html/InputType.cpp:
860         (WebCore::createInputType): A templated helper that constructs a new InputType subclass object through std::make_unique.
861         (WebCore::populateInputTypeFactoryMap): Populates the passed-in map with type-createInputType<T> pairs.
862         (WebCore::InputType::create): Get the InputTypeFactoryFunction for the specified type, or fall back to TextInputType.
863         (WebCore::InputType::createText):
864         * html/InputType.h:
865         * html/MonthInputType.cpp:
866         * html/MonthInputType.h:
867         (WebCore::MonthInputType::MonthInputType):
868         * html/NumberInputType.cpp:
869         * html/NumberInputType.h:
870         (WebCore::NumberInputType::NumberInputType):
871         * html/PasswordInputType.cpp:
872         * html/PasswordInputType.h:
873         (WebCore::PasswordInputType::PasswordInputType):
874         * html/RadioInputType.cpp:
875         * html/RadioInputType.h:
876         (WebCore::RadioInputType::RadioInputType):
877         * html/RangeInputType.cpp:
878         * html/RangeInputType.h:
879         * html/ResetInputType.cpp:
880         * html/ResetInputType.h:
881         (WebCore::ResetInputType::ResetInputType):
882         * html/SearchInputType.cpp:
883         (WebCore::SearchInputType::SearchInputType):
884         * html/SearchInputType.h:
885         * html/SubmitInputType.cpp:
886         * html/SubmitInputType.h:
887         (WebCore::SubmitInputType::SubmitInputType):
888         * html/TelephoneInputType.cpp:
889         * html/TelephoneInputType.h:
890         (WebCore::TelephoneInputType::TelephoneInputType):
891         * html/TextInputType.cpp:
892         * html/TextInputType.h:
893         (WebCore::TextInputType::TextInputType):
894         * html/TimeInputType.cpp:
895         * html/TimeInputType.h:
896         * html/URLInputType.cpp:
897         * html/URLInputType.h:
898         (WebCore::URLInputType::URLInputType):
899         * html/WeekInputType.cpp:
900         * html/WeekInputType.h:
901         (WebCore::WeekInputType::WeekInputType):
902
903 2013-10-28  Brady Eidson  <beidson@apple.com>
904
905         Refactor IDB factory creation.
906         https://bugs.webkit.org/show_bug.cgi?id=123347
907
908         Reviewed by Andreas Kling.
909
910         - Rework how database directory location is passed around.
911         - Make (some) SecurityOrigin arguments be references instead of pointers.
912         - Add two SecurityOrigin arguments to opening databases for future use.
913
914         * Modules/indexeddb/IDBFactory.cpp:
915         (WebCore::IDBFactory::openInternal):
916
917         * Modules/indexeddb/IDBFactoryBackendInterface.cpp:
918         (WebCore::IDBFactoryBackendInterface::create):
919         * Modules/indexeddb/IDBFactoryBackendInterface.h:
920
921         * Modules/indexeddb/PageGroupIndexedDatabase.cpp:
922         (WebCore::PageGroupIndexedDatabase::PageGroupIndexedDatabase):
923         (WebCore::PageGroupIndexedDatabase::from):
924         (WebCore::PageGroupIndexedDatabase::factoryBackend):
925         * Modules/indexeddb/PageGroupIndexedDatabase.h:
926
927         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp:
928         (WebCore::WorkerGlobalScopeIndexedDatabase::WorkerGlobalScopeIndexedDatabase):
929         (WebCore::WorkerGlobalScopeIndexedDatabase::from):
930         (WebCore::WorkerGlobalScopeIndexedDatabase::indexedDB):
931         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h:
932
933         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
934         (WebCore::IDBBackingStoreLevelDB::open):
935         (WebCore::IDBBackingStoreLevelDB::openInMemory):
936         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
937
938         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
939         (WebCore::computeFileIdentifier):
940         (WebCore::computeUniqueIdentifier):
941         (WebCore::IDBFactoryBackendLevelDB::IDBFactoryBackendLevelDB):
942         (WebCore::IDBFactoryBackendLevelDB::getDatabaseNames):
943         (WebCore::IDBFactoryBackendLevelDB::deleteDatabase):
944         (WebCore::IDBFactoryBackendLevelDB::openBackingStore):
945         (WebCore::IDBFactoryBackendLevelDB::open):
946         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
947         (WebCore::IDBFactoryBackendLevelDB::create):
948
949         * WebCore.exp.in:
950
951         * platform/DatabaseStrategy.cpp:
952         (WebCore::DatabaseStrategy::createIDBFactoryBackend):
953         * platform/DatabaseStrategy.h:
954
955 2013-10-28  Andreas Kling  <akling@apple.com>
956
957         RenderElement::style() should return a reference.
958         <https://webkit.org/b/123414>
959
960         Now that renderers always have style, go ahead and make style()
961         return a RenderStyle&.
962
963         There are countless opportunities for further cleanup enabled by
964         this change. I'm simply passing &style() in many cases where we
965         can really do something nicer instead.
966
967         Reviewed by Anders Carlsson.
968
969 2013-10-28  Tim Horton  <timothy_horton@apple.com>
970
971         Make TileController create the appropriate PlatformCALayer subclasses
972         https://bugs.webkit.org/show_bug.cgi?id=123418
973
974         Reviewed by Simon Fraser.
975
976         Add PlatformCALayer::createCompatibleLayer, which is overridden in
977         each of the subclasses to create a PlatformCALayer instance of the same
978         subclass. This is used in TileController to make bare PlatformCALayers
979         of the correct type (Mac, Win, or Remote).
980
981         * platform/graphics/ca/PlatformCALayer.h:
982         * platform/graphics/ca/mac/PlatformCALayerMac.h:
983         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
984         (PlatformCALayerMac::createCompatibleLayer):
985         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
986         (PlatformCALayerWin::createCompatibleLayer):
987         * platform/graphics/ca/win/PlatformCALayerWin.h:
988         Add createCompatibleLayer and implement it in the subclasses.
989
990         * platform/graphics/ca/mac/TileController.mm:
991         (WebCore::TileController::TileController):
992         (WebCore::TileController::tiledScrollingIndicatorLayer):
993         (WebCore::TileController::createTileLayer):
994         Make use of createCompatibleLayer when creating PlatformCALayers.
995
996 2013-10-28  Alexandru Chiculita  <achicu@adobe.com>
997
998         Web Inspector: CSS Regions: Add protocol API to expose content nodes addition/removal
999         https://bugs.webkit.org/show_bug.cgi?id=123424
1000
1001         Reviewed by Timothy Hatcher.
1002
1003         Test: inspector-protocol/model/content-flow-content-nodes.html
1004
1005         Adding two new inspector-protocol APIs to handle the cases when new elements are
1006         added or removed from a named flow. These APIs will trigger even though there
1007         is no region associated with the named flow.
1008
1009         * inspector/Inspector.json:
1010         * inspector/InspectorCSSAgent.cpp:
1011         (WebCore::InspectorCSSAgent::didRegisterNamedFlowContentElement):
1012         (WebCore::InspectorCSSAgent::didUnregisterNamedFlowContentElement):
1013         * inspector/InspectorCSSAgent.h:
1014         * inspector/InspectorInstrumentation.cpp:
1015         (WebCore::InspectorInstrumentation::didRegisterNamedFlowContentElementImpl):
1016         (WebCore::InspectorInstrumentation::didUnregisterNamedFlowContentElementImpl):
1017         * inspector/InspectorInstrumentation.h:
1018         (WebCore::InspectorInstrumentation::didRegisterNamedFlowContentElement):
1019         (WebCore::InspectorInstrumentation::didUnregisterNamedFlowContentElement):
1020         * rendering/RenderNamedFlowThread.cpp:
1021         (WebCore::RenderNamedFlowThread::registerNamedFlowContentElement):
1022         (WebCore::RenderNamedFlowThread::unregisterNamedFlowContentElement):
1023
1024 2013-10-28  Joseph Pecoraro  <pecoraro@apple.com>
1025
1026         Web Inspector: Remove unused inspector/inline-javascript-imports.py
1027         https://bugs.webkit.org/show_bug.cgi?id=123425
1028
1029         Reviewed by Timothy Hatcher.
1030
1031         * inspector/inline-javascript-imports.py: Removed.
1032
1033 2013-10-28  Joseph Pecoraro  <pecoraro@apple.com>
1034
1035         Web Inspector: Remove unused "externs" files and generators
1036         https://bugs.webkit.org/show_bug.cgi?id=123427
1037
1038         Reviewed by Timothy Hatcher.
1039
1040         * inspector/InjectedScriptExterns.js: Removed.
1041         * inspector/generate_protocol_externs.py: Removed.
1042
1043 2013-10-28  Joseph Pecoraro  <pecoraro@apple.com>
1044
1045         Upstream remaining PLATFORM(IOS) and ENABLE(REMOTE_INSPECTOR) pieces
1046         https://bugs.webkit.org/show_bug.cgi?id=123411
1047
1048         Reviewed by Timothy Hatcher.
1049
1050         Include an InspectorClient hook for when node searching is enabled / disabled.
1051
1052         * inspector/InspectorClient.h:
1053         (WebCore::InspectorClient::didSetSearchingForNode):
1054         * inspector/InspectorDOMAgent.cpp:
1055         (WebCore::InspectorDOMAgent::setSearchingForNode):
1056         * inspector/InspectorOverlay.cpp:
1057         (WebCore::InspectorOverlay::didSetSearchingForNode):
1058         * inspector/InspectorOverlay.h:
1059
1060 2013-10-28  Benjamin Poulain  <benjamin@webkit.org>
1061
1062         Rename applyPageScaleFactorInCompositor to delegatesPageScaling
1063         https://bugs.webkit.org/show_bug.cgi?id=123417
1064
1065         Reviewed by Simon Fraser.
1066
1067         * page/Frame.cpp:
1068         (WebCore::Frame::frameScaleFactor):
1069         * page/FrameView.cpp:
1070         (WebCore::FrameView::visibleContentScaleFactor):
1071         * page/Page.cpp:
1072         (WebCore::Page::setPageScaleFactor):
1073         * page/Settings.in:
1074         * platform/ScrollView.h:
1075         * rendering/RenderLayerCompositor.cpp:
1076         (WebCore::RenderLayerCompositor::addToOverlapMap):
1077
1078 2013-10-28  Myles C. Maxfield  <mmaxfield@apple.com>
1079
1080         Parsing support for -webkit-text-decoration-skip: ink
1081         https://bugs.webkit.org/show_bug.cgi?id=123358
1082
1083         Reviewed by Dean Jackson.
1084
1085         Adds initial parsing support for parsing -webkit-text-decoration-skip with
1086         values of "none" and "ink". This work is behind the new
1087         ENABLE(CSS3_TEXT_DECORATION) compile-time flag.
1088
1089         Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-roundtrip.html
1090
1091         * Configurations/FeatureDefines.xcconfig: Adding ENABLE(CSS3_TEXT_DECORATION)
1092         * css/CSSComputedStyleDeclaration.cpp: Mapping internal representation of text-decoration-skip
1093         to a CSSValue
1094         (WebCore::renderTextDecorationSkipFlagsToCSSValue):
1095         (WebCore::ComputedStyleExtractor::propertyValue):
1096         * css/CSSParser.cpp: Actually parsing tokens
1097         (WebCore::CSSParser::parseValue):
1098         (WebCore::CSSParser::parseTextDecorationSkip):
1099         * css/CSSParser.h:
1100         * css/CSSPropertyNames.in: adding -webkit-text-decoration-skip
1101         * css/CSSValueKeywords.in: adding ink
1102         * css/DeprecatedStyleBuilder.cpp: Mapping from CSSValue to internal representation
1103         (WebCore::ApplyPropertyTextDecorationSkip::valueToDecorationSkip):
1104         (WebCore::ApplyPropertyTextDecorationSkip::applyValue):
1105         (WebCore::ApplyPropertyTextDecorationSkip::createHandler):
1106         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
1107         * css/StyleResolver.cpp: decoration-skip uses DeprecatedStyleBuilder
1108         (WebCore::StyleResolver::applyProperty):
1109         * rendering/style/RenderStyle.h: Adding functions for modifying and accessing decoration-skip properties
1110         * rendering/style/RenderStyleConstants.h: Definition of internal representation
1111         * rendering/style/StyleRareInheritedData.cpp: Setting up constructors and comparators
1112         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1113         (WebCore::StyleRareInheritedData::operator==):
1114         * rendering/style/StyleRareInheritedData.h: Holds actual value of internal representation
1115
1116 2013-10-28  Anders Carlsson  <andersca@apple.com>
1117
1118         RunLoop::dispatch should take an std::function
1119         https://bugs.webkit.org/show_bug.cgi?id=123407
1120
1121         Reviewed by Andreas Kling.
1122
1123         * WebCore.exp.in:
1124         * platform/RunLoop.cpp:
1125         (WebCore::RunLoop::performWork):
1126         (WebCore::RunLoop::dispatch):
1127         * platform/RunLoop.h:
1128
1129 2013-10-28  Tim Horton  <timothy_horton@apple.com>
1130
1131         Make TileController manipulate PlatformCALayers instead of CALayers
1132         https://bugs.webkit.org/show_bug.cgi?id=123279
1133
1134         Reviewed by Simon Fraser.
1135
1136         In the interest of making TileController more platform-independent
1137         (so that it can be used with the remote layer tree, and maybe Windows),
1138         move TileController onto our PlatformCALayer abstraction instead of
1139         direct manipulation of CALayers.
1140
1141         Some fallout from this includes getting rid of special Mac-specific
1142         TileController-specific CALayer subclasses, and reworking tile
1143         painting to work in a more generic way.
1144
1145         This is a first step, and doesn't get us all the way to a platform independent
1146         TileController, but more patches are forthcoming.
1147
1148         No new tests, just a (largeish) refactor.
1149
1150         * WebCore.exp.in:
1151         The signature of some methods has changed.
1152
1153         * WebCore.xcodeproj/project.pbxproj:
1154         Remove WebTileLayer.*
1155
1156         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
1157         (WebCore::ScrollingTreeScrollingNodeMac::logExposedUnfilledArea):
1158         Use the "isTile" key on the CALayer dictionary instead of the layer's
1159         class to determine if it's a tile. TileController will set this on a tile
1160         when it is created, for now.
1161
1162         * platform/graphics/TiledBacking.h:
1163         tiledScrollingIndicatorLayer() should return a PlatformCALayer.
1164
1165         * platform/graphics/ca/GraphicsLayerCA.cpp:
1166         (WebCore::GraphicsLayerCA::platformCALayerPaintContents):
1167         * platform/graphics/ca/GraphicsLayerCA.h:
1168         (WebCore::GraphicsLayerCA::platformCALayerIncrementRepaintCount):
1169         * platform/graphics/ca/PlatformCALayerClient.h:
1170         The PlatformCALayerClient paintContents and incrementRepaintCount callbacks
1171         should include the platformCALayer that caused the callback.
1172
1173         * platform/graphics/ca/PlatformCALayer.h:
1174         Add LayerTypeSimpleLayer, which is similar to LayerTypeWebLayer
1175         except it just calls back its client to paint, instead of doing
1176         complicated things with repaint rects. This is so that TileController
1177         doesn't re-enter drawLayerContents when asking its GraphicsLayer
1178         to paint for each PlatformCALayer (it will be entering drawLayerContents
1179         for the first time for each layer). It also happens to be useful
1180         for things like the tile controller overlay, which don't need
1181         all that complication.
1182
1183         Add LayerTypeTiledBackingTileLayer, which is used simply to distinguish
1184         TileController Tile layers from other LayerTypeSimpleLayers.
1185
1186         * platform/graphics/ca/mac/LayerPool.h:
1187         * platform/graphics/ca/mac/LayerPool.mm:
1188         (WebCore::LayerPool::addLayer):
1189         (WebCore::LayerPool::takeLayerWithSize):
1190         LayerPool should operate on PlatformCALayers now.
1191
1192         * platform/graphics/ca/mac/PlatformCALayerMac.h:
1193         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
1194         (PlatformCALayerMac::PlatformCALayerMac):
1195         Set the "isTile" key on the CALayer to true for TiledBackingTileLayers,
1196         so that the scrolling performance logging can tell a tile apart from
1197         any other layer, on the scrolling thread, without touching PlatformCALayers
1198         or the TileController or any other main-thread data structures.
1199
1200         (PlatformCALayerMac::setEdgeAntialiasingMask): Added.
1201         * platform/graphics/ca/mac/TileController.h:
1202         Remove references to Objective-C classes; instead use PlatformCALayer everywhere.
1203         TileController is now a PlatformCALayerClient, and the layers it owns are
1204         all PlatformCALayers (and it is constructed with a PlatformCALayer, etc.).
1205         Hand in the tile debug border color as a WebCore color, instead of a CGColorRef.
1206         blankPixelCountForTiles() now operates on a list of PlatformLayers instead of
1207         WebTileLayers specifically, since WebTileLayer is gone.
1208         Make drawTileMapContents private because WebTileCacheMapLayer no longer exists.
1209
1210         (WebCore::TileController::platformCALayerDrawsContent):
1211         All of the layers who have TileController as their client paint their contents.
1212
1213         (WebCore::TileController::platformCALayerContentsOpaque):
1214         This will only be called for layers which paint via drawLayerContents,
1215         so it's OK that we don't special-case the debugging overlay here.
1216
1217         (WebCore::TileController::owningGraphicsLayer):
1218         Return the GraphicsLayer that owns the TileController's main
1219         layer, via its conformance to PlatformCALayerClient. This is
1220         a bit strange (because it's not strictly a GraphicsLayer, despite
1221         always being so at the moment), but is done for clarity inside
1222         TileController itself.
1223
1224         * platform/graphics/ca/mac/TileController.mm:
1225         Remove CALayer (WebCALayerDetails), WebTiledScrollingIndicatorLayer,
1226         and a bunch of includes that we don't need anymore.
1227
1228         (WebCore::TileController::create):
1229         (WebCore::TileController::TileController):
1230         TileController is passed a PlatformCALayer for the tile cache root layer,
1231         instead of a WebTiledBackingLayer. It also creates a PlatformCALayer with
1232         LayerTypeLayer instead of a bare CALayer for the container layer.
1233         It's OK to remove the transaction because it was only used to stop
1234         the implicit animation, which PlatformCALayer will do for us.
1235
1236         (WebCore::TileController::~TileController):
1237         Clear the owner of the PlatformCALayers which the TileController previously owned,
1238         so they don't try to call back a destroyed TileController.
1239
1240         (WebCore::TileController::tileCacheLayerBoundsChanged):
1241         (WebCore::TileController::setNeedsDisplay):
1242         Straightforward adjustments towards use of PlatformCALayer.
1243
1244         (WebCore::TileController::setTileNeedsDisplayInRect):
1245         Adjustments towards use of PlatformCALayer; we need FloatRects so we can
1246         pass pointers to PlatformCALayer::setNeedsDisplay.
1247
1248         (WebCore::TileController::platformCALayerPaintContents):
1249         Replace drawLayer with platformCALayerPaintContents, which will be called
1250         back from our various WebSimpleLayers. If the PlatformCALayer is our
1251         tiled scrolling debug indicator, paint that. Otherwise, it's a tile.
1252         Make use of drawLayerContents() to paint the tile contents.
1253         Make use of drawRepaintIndicator() to paint the repaint indicator if needed.
1254         Move scrolling performance logging code that used to be in WebTileLayer here.
1255
1256         (WebCore::TileController::platformCALayerDeviceScaleFactor):
1257         (WebCore::TileController::platformCALayerShowDebugBorders):
1258         (WebCore::TileController::platformCALayerShowRepaintCounter):
1259         Forward these to the owning GraphicsLayerCA, because it will have the right answers.
1260
1261         (WebCore::TileController::setScale):
1262         Adjustments towards use of PlatformCALayer; remove some code that Simon
1263         caused to be unused in 156291 but did not remove.
1264
1265         (WebCore::TileController::setAcceleratesDrawing):
1266         (WebCore::TileController::setTilesOpaque):
1267         (WebCore::TileController::setVisibleRect):
1268         (WebCore::TileController::revalidateTiles):
1269         (WebCore::TileController::setTileDebugBorderWidth):
1270         (WebCore::TileController::setTileDebugBorderColor):
1271         (WebCore::TileController::bounds):
1272         (WebCore::TileController::blankPixelCount):
1273         (WebCore::TileController::blankPixelCountForTiles):
1274         (WebCore::queueTileForRemoval):
1275         (WebCore::TileController::setNeedsRevalidateTiles):
1276         (WebCore::TileController::ensureTilesForRect):
1277         (WebCore::TileController::retainedTileBackingStoreMemory):
1278         Straightforward adjustments towards use of PlatformCALayer.
1279
1280         (WebCore::TileController::updateTileCoverageMap):
1281         Adjustments towards use of PlatformCALayer; rename backgroundColor
1282         to visibleRectIndicatorColor, since it's actually a border, not a background.
1283
1284         (WebCore::TileController::tiledScrollingIndicatorLayer):
1285         Create a LayerTypeSimpleLayer PlatformCALayer for the tiled scrolling indicator.
1286         It will be asked to paint straightforwardly, like a CALayer would.
1287         Create a LayerTypeLayer PlatformCALayer for the visible rect indicator.
1288         It doesn't need to paint anything, so it doesn't get an owner.
1289
1290         (WebCore::TileController::createTileLayer):
1291         When creating a new tile layer, adopt it by setting its owner.
1292         Otherwise, straightforward adjustments towards use of PlatformCALayer.
1293
1294         (WebCore::TileController::platformCALayerIncrementRepaintCount):
1295         Manage repaint counts for tiles in TileController now.
1296
1297         (WebCore::TileController::drawTileMapContents):
1298         Adjustments towards use of PlatformCALayer.
1299
1300         * platform/graphics/ca/mac/WebTileLayer.h: Removed.
1301         * platform/graphics/ca/mac/WebTileLayer.mm: Removed.
1302         We don't need WebTileLayer anymore, tiles are now just WebSimpleLayers
1303         owned by TileController. Its behavior has been moved into TileController.
1304
1305         * platform/graphics/ca/mac/WebTiledBackingLayer.h:
1306         * platform/graphics/ca/mac/WebTiledBackingLayer.mm:
1307         (-[WebTiledBackingLayer createTileController:]):
1308         Add createTileController: so that the WebTiledBackingLayer's owner can
1309         hand the TileController the PlatformCALayer for the WebTiledBackingLayer
1310         without propagating additional usage of PlatformCALayer::platformCALayer(),
1311         which we need to remove in light of the remote layer tree work.
1312
1313         (-[WebTiledBackingLayer setBorderColor:]):
1314
1315         * platform/graphics/ca/win/PlatformCALayerWin.h:
1316         Add an empty implementation of setEdgeAntialiasingMask.
1317         We'll probably want to implement it before adopting TileController on Windows.
1318
1319         * platform/graphics/ca/win/PlatformCALayerWinInternal.cpp:
1320         (PlatformCALayerWinInternal::displayCallback):
1321         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
1322         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerPaintContents):
1323         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerIncrementRepaintCount):
1324         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
1325         (WebCore::LayerClient::platformCALayerPaintContents):
1326         (WebCore::LayerClient::platformCALayerIncrementRepaintCount):
1327         Adjust for new parameters on PlatformCALayerClient callbacks.
1328
1329         * platform/graphics/mac/WebLayer.h:
1330         Add WebSimpleLayer, which inherits directly from CALayer, and make
1331         our standard WebLayer (which is used for compositing layers in web content)
1332         inherit from that.
1333
1334         * platform/graphics/mac/WebLayer.mm:
1335         Move most of the behavior of WebLayer onto WebSimpleLayer, except for its
1336         complex painting code. That stays as an override on WebLayer.
1337
1338         (WebCore::drawLayerContents):
1339         Use the PlatformCALayer's PlatformLayer - if it exists - to extract
1340         fine-grained repaint rects. If it doesn't, we'll just use the CGContext's
1341         clip rect as our single repaint rect.
1342         Rename platformLayer to platformCALayer for accuracy.
1343         Remove special code for CATiledLayer since we ought not use it on Mac anymore.
1344
1345         (WebCore::drawRepaintIndicator):
1346         Factor repaint indicator code out into its own function so that TileController
1347         can use it. It can't be called from drawLayerContents for TileController, since
1348         the PlatformCALayer that TileController passes in to drawLayerContents is actually
1349         that of the tile cache's root layer, not the tile itself.
1350         Also, add a custom background color parameter so TileController can override
1351         the default green color with its own standard purple.
1352
1353         (-[WebLayer drawInContext:]):
1354         (-[WebSimpleLayer drawInContext:]):
1355         * platform/graphics/mac/WebTiledLayer.mm:
1356         (-[WebTiledLayer drawInContext:]):
1357         Removed a param from drawLayerContents because it's trivially acquirable
1358         from the PlatformCALayer.
1359
1360 2013-10-24  Sam Weinig  <sam@webkit.org>
1361
1362         Move RenderBlock functions only used by RenderBlockFlow to RenderBlockFlow
1363         https://bugs.webkit.org/show_bug.cgi?id=123318
1364
1365         Reviewed by David Hyatt.
1366
1367         * rendering/LineLayoutState.h:
1368         Move FloatWithRect from RenderBlock.
1369
1370         * rendering/RenderBlock.cpp:
1371         * rendering/RenderBlock.h:
1372         * rendering/RenderBlockFlow.cpp:
1373         * rendering/RenderBlockFlow.h:
1374         * rendering/RenderBlockLineLayout.cpp:
1375         Move pagination and float functions.
1376
1377 2013-10-28  Sergio Villar Senin  <svillar@igalia.com>
1378
1379         [CSS Grid Layout] Add support for order inside grid items
1380         https://bugs.webkit.org/show_bug.cgi?id=123208
1381
1382         Reviewed by Antti Koivisto.
1383
1384         Based on Blink r153457 and r153536 by <jchaffraix@chromium.org>
1385
1386         Added support for sorting grid items by using -webkit-order
1387         property. Used OrderIterator to implement it so it had to be moved
1388         out of RenderFlexibleBox to be shared with RenderGrid.
1389
1390         Tests: fast/css-grid-layout/grid-item-order-auto-flow-resolution.html
1391                fast/css-grid-layout/grid-item-order-paint-order.html
1392
1393         * CMakeLists.txt: Added new file.
1394         * GNUmakefile.list.am: Ditto.
1395         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
1396         * WebCore.xcodeproj/project.pbxproj: Ditto.
1397         * rendering/OrderIterator.cpp: Added. Ripped out of RenderFlexibleBox.
1398         (WebCore::OrderIterator::OrderIterator):
1399         (WebCore::OrderIterator::setOrderValues): Use std::move semantics.
1400         (WebCore::OrderIterator::first): Use an integer as iterator.
1401         (WebCore::OrderIterator::next): Ditto.
1402         (WebCore::OrderIterator::reset): Ditto.
1403         * rendering/OrderIterator.h: Added.
1404         (WebCore::OrderIterator::currentChild):
1405         * rendering/RenderFlexibleBox.cpp:
1406         (WebCore::RenderFlexibleBox::RenderFlexibleBox):
1407         (WebCore::RenderFlexibleBox::layoutBlock):
1408         * rendering/RenderFlexibleBox.h:
1409         * rendering/RenderGrid.cpp:
1410         (WebCore::RenderGrid::RenderGrid):
1411         (WebCore::RenderGrid::placeItemsOnGrid):
1412         (WebCore::RenderGrid::populateExplicitGridAndOrderIterator):
1413         (WebCore::RenderGrid::paintChildren):
1414         * rendering/RenderGrid.h:
1415
1416 2013-10-28  Afonso R. Costa Jr.  <afonso.costa@samsung.com>
1417
1418         Methods on window.internals shouldn't pass a document.
1419         https://bugs.webkit.org/show_bug.cgi?id=107301
1420
1421         Reviewed by Alexey Proskuryakov.
1422
1423         Each 'Internals' instance is associated with a 'Document'. So, it
1424         is not necessary to pass a document as argument. Only nodesFromRect and
1425         layerTreeAsText methods were kept because, in some Layout Tests, the
1426         'Document' object is not the same used by Internals::contextDocument.
1427
1428         * testing/Internals.cpp: Removed 'document' parameter.
1429         (WebCore::Internals::animationsAreSuspended):
1430         (WebCore::Internals::suspendAnimations):
1431         (WebCore::Internals::resumeAnimations):
1432         (WebCore::Internals::inspectorHighlightRects):
1433         (WebCore::Internals::inspectorHighlightObject):
1434         (WebCore::Internals::setScrollViewPosition):
1435         (WebCore::Internals::setPagination):
1436         (WebCore::Internals::configurationForViewport):
1437         (WebCore::Internals::paintControlTints):
1438         (WebCore::Internals::setDelegatesScrolling):
1439         (WebCore::Internals::touchPositionAdjustedToBestClickableNode):
1440         (WebCore::Internals::touchNodeAdjustedToBestClickableNode):
1441         (WebCore::Internals::touchPositionAdjustedToBestContextMenuNode):
1442         (WebCore::Internals::touchNodeAdjustedToBestContextMenuNode):
1443         (WebCore::Internals::bestZoomableAreaForTouchPoint):
1444         (WebCore::Internals::lastSpellCheckRequestSequence):
1445         (WebCore::Internals::lastSpellCheckProcessedSequence):
1446         (WebCore::Internals::wheelEventHandlerCount):
1447         (WebCore::Internals::touchEventHandlerCount):
1448         (WebCore::Internals::setBatteryStatus):
1449         (WebCore::Internals::setNetworkInformation):
1450         (WebCore::Internals::setDeviceProximity):
1451         (WebCore::Internals::hasSpellingMarker):
1452         (WebCore::Internals::hasAutocorrectedMarker):
1453         (WebCore::Internals::isOverwriteModeEnabled):
1454         (WebCore::Internals::toggleOverwriteModeEnabled):
1455         (WebCore::Internals::consoleMessageArgumentCounts):
1456         (WebCore::Internals::hasGrammarMarker):
1457         (WebCore::Internals::numberOfScrollableAreas):
1458         (WebCore::Internals::isPageBoxVisible):
1459         (WebCore::Internals::repaintRectsAsText):
1460         (WebCore::Internals::scrollingStateTreeAsText):
1461         (WebCore::Internals::mainThreadScrollingReasons):
1462         (WebCore::Internals::nonFastScrollableRects):
1463         (WebCore::Internals::garbageCollectDocumentResources):
1464         (WebCore::Internals::insertAuthorCSS):
1465         (WebCore::Internals::insertUserCSS):
1466         (WebCore::Internals::shortcutIconURLs):
1467         (WebCore::Internals::allIconURLs):
1468         (WebCore::Internals::setHeaderHeight):
1469         (WebCore::Internals::setFooterHeight):
1470         (WebCore::Internals::webkitWillEnterFullScreenForElement):
1471         (WebCore::Internals::webkitDidEnterFullScreenForElement):
1472         (WebCore::Internals::webkitWillExitFullScreenForElement):
1473         (WebCore::Internals::webkitDidExitFullScreenForElement):
1474         (WebCore::Internals::startTrackingRepaints):
1475         (WebCore::Internals::stopTrackingRepaints):
1476         (WebCore::Internals::getCurrentCursorInfo):
1477         * testing/Internals.h:
1478         (WebCore::Internals::setPagination):
1479         * testing/Internals.idl:
1480
1481 2013-10-28  Xabier Rodriguez Calvar  <calvaris@igalia.com>
1482
1483         Remove HTMLMediaElement.startTime
1484         https://bugs.webkit.org/show_bug.cgi?id=123264
1485
1486         Reviewed by Eric Carlson.
1487
1488         Patch based on one by: philipj@opera.com
1489         Blink review URL: https://codereview.chromium.org/32583003
1490
1491         startTime has been removed from the HTMLMediaElement and its use
1492         in the rest of components.
1493
1494         * Modules/mediacontrols/mediaControlsApple.js:
1495         (Controller.prototype.handleRewindButtonClicked):
1496         (Controller.prototype.handleTimelineMouseMove):
1497         (Controller.prototype.updateDuration):
1498         (Controller.prototype.updateTime): Removed used of startTime().
1499         * bindings/gobject/WebKitDOMCustom.cpp:
1500         (webkit_dom_html_media_element_get_start_time):
1501         * bindings/gobject/WebKitDOMCustom.h:
1502         * bindings/gobject/WebKitDOMCustom.symbols: Added phony function.
1503         * html/HTMLMediaElement.cpp:
1504         (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
1505         (WebCore::HTMLMediaElement::isBlockedOnMediaController): Removed
1506         use of startTime()
1507         * html/HTMLMediaElement.h:
1508         * html/HTMLMediaElement.idl: Removed startTime()
1509         * rendering/RenderThemeWinCE.cpp:
1510         (WebCore::RenderThemeWinCE::paintSliderThumb): Removed use of
1511         startTime()
1512
1513 2013-10-28  Andreas Kling  <akling@apple.com>
1514
1515         RenderElement::m_style should be a Ref.
1516         <https://webkit.org/b/123401>
1517
1518         Made RenderElement::m_style a Ref. This codifies the fact that it
1519         can never be null after construction.
1520
1521         Removed a couple of unnecessary null checks that were exposed as
1522         compilation failures.
1523
1524         Reviewed by Antti Koivisto.
1525
1526 2013-10-28  Bastien Nocera <hadess@hadess.net>
1527
1528         Name all the GLib timeout sources
1529         https://bugs.webkit.org/show_bug.cgi?id=123229
1530
1531         Reviewed by Anders Carlsson.
1532
1533         Give a name to GLib timeout sources, this is helpful when
1534         profiling WebKitGTK applications.
1535
1536         No new tests, no change in functionality.
1537
1538 2013-10-28  Philippe Normand  <pnormand@igalia.com>
1539
1540         MediaStreamTrackPrivate's m_client uninitialized
1541         https://bugs.webkit.org/show_bug.cgi?id=123403
1542
1543         Reviewed by Eric Carlson.
1544
1545         No new tests, no change in functionality.
1546
1547         * platform/mediastream/MediaStreamTrackPrivate.cpp:
1548         (WebCore::MediaStreamTrackPrivate::MediaStreamTrackPrivate):
1549         Initialize the m_client member variable.
1550
1551 2013-10-28  Carlos Garcia Campos  <cgarcia@igalia.com>
1552
1553         Unreviewed. Fix make distcheck.
1554
1555         * GNUmakefile.am: Add crypto idl files to EXTRA_DIST and remove
1556         css/fullscreenQuickTime.css that was removed.
1557
1558 2013-10-28  Antti Koivisto  <antti@apple.com>
1559
1560         Prepare simple line layout to support multiple runs per line
1561         https://bugs.webkit.org/show_bug.cgi?id=123400
1562
1563         Reviewed by Andreas Kling.
1564
1565         Bunch of renaming and some refactoring for future support for text runs.
1566
1567         SimpleLineLayout::Lines -> SimpleLineLayout::Layout and becomes a class instead of a typedef.
1568         SimpleLineLayout::Resolver::Line -> SimpleLineLayout::Resolver::Run
1569         SimpleLineLayout::createLines() -> SimpleLineLayout::create()
1570         RenderBlockFlow::simpleLines() -> RenderBlockFlow::simpleLineLayout()
1571         RenderText::simpleLines() -> RenderText::simpleLineLayout()
1572         
1573         Added resolver construction functions:
1574         
1575         SimpleLineLayout::runResolver()
1576         SimpleLineLayout::lineResolver()
1577
1578 2013-10-28  Mario Sanchez Prada  <mario.prada@samsung.com>
1579
1580         [GTK] Expose title and alternative text for links in image maps
1581         https://bugs.webkit.org/show_bug.cgi?id=84045
1582
1583         Reviewed by Chris Fleizach.
1584
1585         Change the way we decide when the title attribute should be
1586         used for the accessible description, by not relying in the
1587         titleTagShouldBeUsedInDescriptionField() helper function but
1588         in whether we have found a visible text for it or not.
1589
1590         This actually mimics what the Mac port does and so makes possible
1591         to share both the layout test and its expected results.
1592
1593         * accessibility/atk/WebKitAccessibleUtil.cpp:
1594         (accessibilityDescription): Update the method to determine
1595         whether the title attribute should be used for the description.
1596
1597 2013-10-28  Bastien Nocera <hadess@hadess.net>
1598
1599         Replace 0 timeouts g_timeout_add() by g_idle_add()
1600         https://bugs.webkit.org/show_bug.cgi?id=123260
1601
1602         Reviewed by Carlos Garcia Campos.
1603
1604         A zero timeout should be equivalent to using g_idle_add_full(G_PRIORITY_DEFAULT, ...)
1605         without the nagging feeling that the wrong API was used.
1606
1607         No new tests, no change in functionality.
1608
1609         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Use g_idle_add() instead
1610         of 0-timer.
1611         (WebCore::MediaPlayerPrivateGStreamer::videoChanged):
1612         (WebCore::MediaPlayerPrivateGStreamer::audioChanged):
1613         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: Ditto.
1614         (WebCore::MediaPlayerPrivateGStreamerBase::volumeChanged):
1615         (WebCore::MediaPlayerPrivateGStreamerBase::muteChanged):
1616         * platform/gtk/GtkDragAndDropHelper.cpp: Ditto.
1617         (WebCore::GtkDragAndDropHelper::handleDragLeave):
1618
1619 2013-10-28  Zan Dobersek  <zdobersek@igalia.com>
1620
1621         Re-enable simple line layout for GTK
1622         https://bugs.webkit.org/show_bug.cgi?id=123388
1623
1624         Reviewed by Andreas Kling.
1625
1626         * rendering/SimpleLineLayout.cpp:
1627         (WebCore::SimpleLineLayout::canUseFor): 8-bit TextRun support is now enabled for the GTK port, so the port
1628         can use the simple line layout.
1629
1630 2013-10-27  Andreas Kling  <akling@apple.com>
1631
1632         Fix 4 asserting SVG tests after r158097.
1633
1634         RenderElement::setStyle() is, quite surprisingly, a virtual function
1635         with a single override in RenderSVGBlock.
1636         To match the old behavior, we have to rewrite the display type from
1637         any inline type to block instead.
1638
1639         * rendering/RenderElement.cpp:
1640         (WebCore::RenderElement::initializeStyle):
1641
1642 2013-10-27  Andreas Kling  <akling@apple.com>
1643
1644         Tone down overzealous assertion from r158097.
1645
1646         RenderElement::initializeStyle() really only cares that there are no
1647         text renderers that we should be calling styleDidChange() on.
1648
1649         Tweak the code to only check that there are no text children.
1650
1651         * rendering/RenderElement.cpp:
1652         (WebCore::RenderElement::initializeStyle):
1653
1654 2013-10-27  Antti Koivisto  <antti@apple.com>
1655
1656         Enable center and right text alignment for simple lines
1657         https://bugs.webkit.org/show_bug.cgi?id=123398
1658
1659         Reviewed by Andreas Kling.
1660
1661         Support text-align:center and text-align:right on simple line layout path.
1662
1663         * rendering/SimpleLineLayout.cpp:
1664         (WebCore::SimpleLineLayout::canUseFor):
1665         
1666             text-align:justify is still not supported.
1667
1668         (WebCore::SimpleLineLayout::computeLineLeft):
1669         (WebCore::SimpleLineLayout::createLines):
1670         
1671             Do a rounding dance that matches the line boxes.
1672
1673         * rendering/SimpleLineLayout.h:
1674         
1675             Add left position to lines.
1676
1677         * rendering/SimpleLineLayoutResolver.h:
1678         (WebCore::SimpleLineLayout::Resolver::Line::rect):
1679         
1680             We now do rounding during layout.
1681
1682         (WebCore::SimpleLineLayout::Resolver::Line::baseline):
1683
1684 2013-10-27  Andreas Kling  <akling@apple.com>
1685
1686         Renderers should receive their style at construction.
1687         <https://webkit.org/b/123396>
1688
1689         Pass the RenderStyle to all non-text renderer constructors.
1690         After construction, initializeStyle() must be called (as a stopgap
1691         measure) until we are able to do style-derived initialization
1692         without virtual function calls.
1693
1694         With this change, RenderElement::m_style is never null. Subsequent
1695         patches will add enforcement for this and also make style() return
1696         a RenderStyle&.
1697
1698         I'm adding three FIXME's in this patch:
1699
1700             - createRendererIfNeeded() calls AnimationController to set up
1701               the initial style manually instead of asking RenderElement's
1702               setAnimatedStyle() to do it. This can probably be done in a
1703               nicer way, but it's not clear yet how.
1704
1705             - ImageContentData::createRenderer() does a bit of unnecessary
1706               work. This should be easy to clean up but got too distracting
1707               to be part of this patch.
1708
1709             - Document::createRenderTree() creates the RenderView with an
1710               initial dummy RenderStyle. I've done this because resolving
1711               the document style assumes we already have a RenderView.
1712
1713         For styleWillChange() implementations to detect that they are
1714         reacting to the initial style, I've added a hasInitializedStyle()
1715         function on RenderElement. This will return false until you've
1716         called initializeStyle() on the renderer. This should go away
1717         along with initializeStyle() eventually.
1718
1719         Reviewed by Antti Koivisto.
1720
1721 2013-10-26  Tim Horton  <timothy_horton@apple.com>
1722
1723         [mac] Remove WebTiledLayer
1724         https://bugs.webkit.org/show_bug.cgi?id=123395
1725
1726         Reviewed by Anders Carlsson.
1727
1728         Mac doesn't use CATiledLayer at all anymore. We have to keep
1729         LayerTypeTiledLayer around for Windows, for now, but we can
1730         get rid of WebTiledLayer and some related Mac-specific code.
1731
1732         No new tests, just removing dead code.
1733
1734         * WebCore.xcodeproj/project.pbxproj:
1735         Remove WebTiledLayer.*
1736
1737         * platform/graphics/ca/PlatformCALayer.h:
1738         * platform/graphics/ca/mac/PlatformCALayerMac.h:
1739         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
1740         (PlatformCALayerMac::PlatformCALayerMac):
1741         Remove synchronouslyDisplayTilesInRect, which was only used for WebTiledLayer on Mac.
1742         Remove WebTiledLayer instantiation and setup code.
1743
1744         * platform/graphics/mac/WebTiledLayer.h: Removed.
1745         * platform/graphics/mac/WebTiledLayer.mm: Removed.
1746
1747 2013-10-26  Andreas Kling  <akling@apple.com>
1748
1749         CTTE: RenderImageResourceStyleImage always has a StyleImage.
1750         <https://webkit.org/b/123390>
1751
1752         Codify the fact that RenderImageResourceStyleImage always wraps an
1753         existing StyleImage object.
1754
1755         Reviewed by Antti Koivisto.
1756
1757 2013-10-26  Antti Koivisto  <antti@apple.com>
1758
1759         Revert some accidental changes.
1760
1761         * css/CSSFontFaceSource.cpp:
1762         (WebCore::CSSFontFaceSource::getFontData):
1763         * css/CSSFontSelector.cpp:
1764         * css/CSSFontSelector.h:
1765
1766 2013-10-26  Mark Lam  <mark.lam@apple.com>
1767
1768         Gardening: fixed broken build.
1769         https://bugs.webkit.org/show_bug.cgi?id=123354.
1770
1771         * css/CSSFontSelector.h:
1772
1773 2013-10-26  Antti Koivisto  <antti@apple.com>
1774
1775         fast/frames/seamless/seamless-nested-crash.html asserts on wk2 only
1776         https://bugs.webkit.org/show_bug.cgi?id=123354
1777
1778         Reviewed by Andreas Kling.
1779
1780         * rendering/SimpleLineLayout.cpp:
1781         (WebCore::SimpleLineLayout::canUseFor):
1782         
1783             Don't enable simple line layout if the primary font is loading. The code expects
1784             to use the primary font metrics for all lines but those won't match the fallbacks
1785             when font is not loaded.
1786
1787 2013-10-26  Carlos Garcia Campos  <cgarcia@igalia.com>
1788
1789         [GTK] Deprecate public dispatch_event method in objects implementing EventTarget interface
1790         https://bugs.webkit.org/show_bug.cgi?id=123261
1791
1792         Reviewed by Gustavo Noronha Silva.
1793
1794         The interface function should be used instead.
1795
1796         * bindings/scripts/CodeGeneratorGObject.pm:
1797         (GetFunctionDeprecationInformation): Helper function to return the
1798         version when the function was deprecated and the function
1799         replacing the deprecated one.
1800         (GenerateFunction): Check if the function is deprecated to mark it
1801         as such in the header and API docs.
1802         * bindings/scripts/gobject-generate-headers.pl: Replace the unused
1803         WEBKIT_OBSOLETE_API macro with new macros to mark function as
1804         deprecated, using the glib macros so that we don't need checks for
1805         the platform.
1806         * bindings/scripts/test/GObject/WebKitDOMTestActiveDOMObject.h:
1807         * bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
1808         * bindings/scripts/test/GObject/WebKitDOMTestCustomNamedGetter.h:
1809         * bindings/scripts/test/GObject/WebKitDOMTestEventConstructor.h:
1810         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.h:
1811         * bindings/scripts/test/GObject/WebKitDOMTestException.h:
1812         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
1813         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1814         * bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
1815         * bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
1816         * bindings/scripts/test/GObject/WebKitDOMattribute.h:
1817
1818 2013-10-25  Mark Lam  <mark.lam@apple.com>
1819
1820         DatabaseManager's ProposedDatabases need to be thread-safe.
1821         https://bugs.webkit.org/show_bug.cgi?id=123313.
1822
1823         Reviewed by Geoffrey Garen.
1824
1825         No new tests.
1826
1827         * Modules/webdatabase/DatabaseManager.cpp:
1828         (WebCore::DatabaseManager::DatabaseManager):
1829         (WebCore::DatabaseManager::existingDatabaseContextFor):
1830         (WebCore::DatabaseManager::registerDatabaseContext):
1831         (WebCore::DatabaseManager::unregisterDatabaseContext):
1832         (WebCore::DatabaseManager::didConstructDatabaseContext):
1833         (WebCore::DatabaseManager::didDestructDatabaseContext):
1834         (WebCore::DatabaseManager::openDatabaseBackend):
1835         (WebCore::DatabaseManager::addProposedDatabase):
1836         (WebCore::DatabaseManager::removeProposedDatabase):
1837         (WebCore::DatabaseManager::fullPathForDatabase):
1838         (WebCore::DatabaseManager::detailsForNameAndOrigin):
1839         * Modules/webdatabase/DatabaseManager.h:
1840
1841 2013-10-25  Joseph Pecoraro  <pecoraro@apple.com>
1842
1843         Upstream ENABLE(REMOTE_INSPECTOR) and enable on iOS and Mac
1844         https://bugs.webkit.org/show_bug.cgi?id=123111
1845
1846         Reviewed by Timothy Hatcher.
1847
1848         * Configurations/FeatureDefines.xcconfig:
1849         * WebCore.exp.in:
1850
1851 2013-10-25  Hans Muller  <hmuller@adobe.com>
1852
1853         [CSS Shapes] CORS-enabled fetch for shape image values
1854         https://bugs.webkit.org/show_bug.cgi?id=123114
1855
1856         Reviewed by Andreas Kling.
1857
1858         Access to shape images is now controlled by CORS CSS shape per
1859         http://dev.w3.org/csswg/css-shapes/#shape-outside-property.
1860         Previously shape images had to be same-origin.
1861
1862         Shape image URL access is defined by the same logic that defines
1863         canvas tainting: same-origin and data URLs are allowed and images
1864         with a "Access-Control-Allow-Origin:" header that's either "*" or
1865         that matches the document's origin.
1866
1867         A PotentiallyCrossOriginEnabled RequestOriginPolicy was added to
1868         ResourceLoaderOptions, to indicate that a "potentially CORS-enabled fetch"
1869         was to be undertaken. The CSSImageValue::cachedImage() method handles this
1870         option by effectively setting the "Origin:" request header (see
1871         updateRequestForAccessControl() in CrossOriginAccessControl.cpp).
1872         StyleResolver::loadPendingShapeImage() uses the new ResourceLoaderOption.
1873
1874         The static ShapeInsideInfo and ShapeOutsideInfo isEnabledFor() method
1875         now performs the CORS check for image valued shapes. The private
1876         isOriginClean() method from CanvasRenderingContext2D has been moved to
1877         the CachedImage class so that it can be shared by the Canvas and Shape
1878         implementations. It checks the response headers per the CORS spec.
1879
1880         Test: http/tests/security/shape-image-cors.html
1881
1882         * css/CSSImageValue.cpp:
1883         (WebCore::CSSImageValue::cachedImage): Handle the new ResourceLoaderOption.
1884         * css/StyleResolver.cpp:
1885         (WebCore::StyleResolver::loadPendingShapeImage): Set the new ResourceLoaderOption.
1886         * html/canvas/CanvasRenderingContext2D.cpp:
1887         (WebCore::CanvasRenderingContext2D::createPattern): Use the CachedImage::isOriginClean().
1888         * loader/ResourceLoaderOptions.h: Added PotentiallyCrossOriginEnabled to RequestOriginPolicy.
1889         * loader/cache/CachedImage.cpp:
1890         (WebCore::CachedImage::isOriginClean): Migrated from CanvasRenderingContext2D.
1891         * loader/cache/CachedImage.h:
1892         * rendering/shapes/ShapeInfo.cpp:
1893         (WebCore::::checkImageOrigin): Do the CORS check and log an error message if neccessary.
1894         * rendering/shapes/ShapeInfo.h:
1895         * rendering/shapes/ShapeInsideInfo.cpp:
1896         (WebCore::ShapeInsideInfo::isEnabledFor): Call checkImageOrigin() for images.
1897         * rendering/shapes/ShapeOutsideInfo.cpp:
1898         (WebCore::ShapeOutsideInfo::isEnabledFor): Ditto.
1899
1900 2013-10-25  Jer Noble  <jer.noble@apple.com>
1901
1902         [MSE] Fix runtime errors caused by mediasource IDL attributes.
1903         https://bugs.webkit.org/show_bug.cgi?id=123352
1904
1905         Reviewed by Eric Carlson.
1906
1907         Due to http://webkit.org/b/123178, MediaSource classes must add a GenerateIsReachable
1908         (and also a JSGenerateToJSObject) attribute to avoid runtime asserts and crashes.
1909
1910         * Modules/mediasource/MediaSource.idl:
1911         * Modules/mediasource/SourceBuffer.idl:
1912         * Modules/mediasource/SourceBufferList.idl:
1913         * Modules/mediasource/WebKitMediaSource.idl:
1914         * Modules/mediasource/WebKitSourceBufferList.idl:
1915
1916 2013-10-25  Jacky Jiang  <zhajiang@blackberry.com>
1917
1918         [BlackBerry] Browser crashed at PlatformGraphicsContext::addDrawLineForText() when trying to upload a video to youtube
1919         https://bugs.webkit.org/show_bug.cgi?id=123349
1920
1921         Reviewed by George Staikos.
1922         Internally reviewed by George Staikos, Konrad Piascik, Eli Fidler and Arvid Nilsson.
1923
1924         Browser crashed when dereferencing null PlatformGraphicsContext*.
1925         In FrameView::paintControlTints(), we intentionally constructed GraphicsContext
1926         with null PlatformGraphicsContext* and disabled painting by doing
1927         context.setUpdatingControlTints(true). So we should not go further in
1928         GraphicsContext::drawLineForText() if painting is disabled.
1929         Check paintingDisabled() for the other functions in PathBlackBerry.cpp
1930         as well; otherwise, it is likely we will crash at those places.
1931
1932         * platform/graphics/blackberry/PathBlackBerry.cpp:
1933         (WebCore::GraphicsContext::fillPath):
1934         (WebCore::GraphicsContext::strokePath):
1935         (WebCore::GraphicsContext::drawLine):
1936         (WebCore::GraphicsContext::drawLineForDocumentMarker):
1937         (WebCore::GraphicsContext::drawLineForText):
1938         (WebCore::GraphicsContext::clip):
1939         (WebCore::GraphicsContext::clipPath):
1940         (WebCore::GraphicsContext::canvasClip):
1941         (WebCore::GraphicsContext::clipOut):
1942
1943 2013-10-25  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1944
1945         Adding platform implementation of MediaStreamTrack
1946         https://bugs.webkit.org/show_bug.cgi?id=123301
1947
1948         Reviewed by Eric Carlson.
1949
1950         No new tests needed.
1951
1952         * CMakeLists.txt:
1953         * Modules/mediastream/AudioStreamTrack.cpp:
1954         (WebCore::AudioStreamTrack::create): Create method now receives a MediaStreamTrackPrivate as parameter.
1955
1956         (WebCore::AudioStreamTrack::AudioStreamTrack):
1957         * Modules/mediastream/AudioStreamTrack.h:
1958         * Modules/mediastream/MediaStream.cpp:
1959         (WebCore::MediaStream::MediaStream): Constructor now iterates through a set of MediaStreamTrackPrivate
1960         instances to create each MediaStreamTrack of MediaStream.
1961
1962         (WebCore::MediaStream::addRemoteSource): Calling AudioStreamTrack and VideoStreamTrack with
1963         MediaStreamTrackPrivate as parameter.
1964
1965         * Modules/mediastream/MediaStreamTrack.cpp:
1966         (WebCore::MediaStreamTrack::MediaStreamTrack): Constructor now receives a MediaStreamTrackPrivate, instead of a
1967         MediaStreamSource.
1968
1969         (WebCore::MediaStreamTrack::~MediaStreamTrack):
1970         (WebCore::MediaStreamTrack::kind): Calling method from MediaStreamTrackPrivate.
1971
1972         (WebCore::MediaStreamTrack::setSource): Ditto.
1973
1974         (WebCore::MediaStreamTrack::id): Ditto.
1975
1976         (WebCore::MediaStreamTrack::label): Ditto.
1977
1978         (WebCore::MediaStreamTrack::enabled): Ditto.
1979
1980         (WebCore::MediaStreamTrack::setEnabled): Ditto.
1981
1982         (WebCore::MediaStreamTrack::muted): Ditto.
1983
1984         (WebCore::MediaStreamTrack::readonly): Ditto.
1985
1986         (WebCore::MediaStreamTrack::remote): Ditto.
1987
1988         (WebCore::MediaStreamTrack::readyState): Ditto.
1989
1990         (WebCore::MediaStreamTrack::states):
1991         (WebCore::MediaStreamTrack::capabilities):
1992         (WebCore::MediaStreamTrack::clone):
1993         (WebCore::MediaStreamTrack::stopProducingData):
1994         (WebCore::MediaStreamTrack::ended): Ditto.
1995
1996         (WebCore::MediaStreamTrack::sourceStateChanged): Ditto.
1997
1998         (WebCore::MediaStreamTrack::sourceMutedChanged): Ditto.
1999
2000         (WebCore::MediaStreamTrack::sourceEnabledChanged): Ditto.
2001         (WebCore::MediaStreamTrack::configureTrackRendering):
2002         (WebCore::MediaStreamTrack::stopped): Ditto.
2003
2004         (WebCore::MediaStreamTrack::trackDidEnd): Setting Ended ready state in MediaStreamTrackPrivate.
2005
2006         (WebCore::MediaStreamTrack::trackReadyStateChanged): Dispatches Live or Ended event.
2007
2008         (WebCore::MediaStreamTrack::trackMutedChanged): Dispatches Muted event.
2009
2010         * Modules/mediastream/MediaStreamTrack.h: Now inheriting from MediaStreamTrackPrivateClient.
2011
2012         (WebCore::MediaStreamTrack::source): Calling method from MediaStreamTrackPrivate.
2013         (WebCore::MediaStreamTrack::privateTrack):
2014         * Modules/mediastream/VideoStreamTrack.cpp:
2015         (WebCore::VideoStreamTrack::create):
2016         (WebCore::VideoStreamTrack::VideoStreamTrack): Create method now receives a MediaStreamTrackPrivate as parameter.
2017         * Modules/mediastream/VideoStreamTrack.h:
2018         * platform/mediastream/MediaStreamDescriptor.cpp:
2019         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor): Stores the private tracks in a Vector (property of
2020         MediaStreamDescriptor class).
2021
2022         (WebCore::MediaStreamDescriptor::addTrack): Adds a private track to the tracks' Vector
2023
2024         (WebCore::MediaStreamDescriptor::removeTrack): Removes a private track from the tracks' Vector
2025
2026         * platform/mediastream/MediaStreamDescriptor.h:
2027         (WebCore::MediaStreamDescriptor::numberOfAudioSources): Renamed from numberOfAudioStreams.
2028
2029         (WebCore::MediaStreamDescriptor::audioSources): Renamed from audioStreams.
2030
2031         (WebCore::MediaStreamDescriptor::numberOfVideoSources): Renamed from numberOfVideoStreams.
2032
2033         (WebCore::MediaStreamDescriptor::videoSources): Renamed from videoStreams.
2034
2035         (WebCore::MediaStreamDescriptor::numberOfAudioTracks): Returns the number of audio tracks this MediaStreamDescriptor
2036         has.
2037
2038         (WebCore::MediaStreamDescriptor::audioTracks): Returns a audio track, given an index
2039
2040         (WebCore::MediaStreamDescriptor::numberOfVideoTracks): Returns the number of video tracks this MediaStreamDescriptor
2041         has.
2042         (WebCore::MediaStreamDescriptor::videoTracks): Returns a video track, given an index
2043         * platform/mediastream/MediaStreamTrackPrivate.cpp: Added.
2044         * platform/mediastream/MediaStreamTrackPrivate.h: Added.
2045
2046 2013-10-25  Zoltan Horvath  <zoltan@webkit.org>
2047
2048         [CSS Regions][CSS Shapes] Update updateShapeAndSegmentsForCurrentLineInFlowThread to deal better with multiple regions
2049         <https://webkit.org/b/123210>
2050
2051         Reviewed by David Hyatt.
2052
2053         I simplified the determination of the next region part of updateShapeAndSegmentsForCurrentLineInFlowThread's implementation
2054         in order to make the code more straightforward. I also tried to avoid using regionAtBlockOffset(...) function where it's possible,
2055         since it's not always that reliable, what I'll will report in a separate bug.
2056
2057         No new tests, covered by existing tests.
2058
2059         * rendering/RenderBlockLineLayout.cpp:
2060         (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread):
2061
2062 2013-10-25  Zoltan Horvath  <zoltan@webkit.org>
2063
2064         [CSS Regions][CSS Shapes] Update updateShapeAndSegmentsForCurrentLineInFlowThread to deal better with the first lines
2065         <https://bugs.webkit.org/show_bug.cgi?id=123275>
2066
2067         Reviewed by David Hyatt.
2068
2069         We have a complex condition in updateShapeAndSegmentsForCurrentLineInFlowThread, which is
2070         adjusting the first line to the shape's top. This patch adds two boolean to make that clear.
2071
2072         No new tests, no behavior change.
2073
2074         * rendering/RenderBlockLineLayout.cpp:
2075         (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread):
2076
2077 2013-10-25  Antti Koivisto  <antti@apple.com>
2078
2079         Faster way for simple line layout to check if text has fallback fonts
2080         https://bugs.webkit.org/show_bug.cgi?id=123342
2081
2082         Reviewed by Andreas Kling.
2083         
2084         Don't use RenderText::knownToHaveNoOverflowAndNoFallbackFonts as it is slow.
2085
2086         Simple text code path test already guarantees there is no overflow. Test for fallback
2087         fonts explicitly.
2088
2089         * platform/graphics/SimpleFontData.h:
2090         
2091             Make FINAL.
2092
2093         * rendering/RenderText.cpp:
2094         * rendering/RenderText.h:
2095         
2096             Remove knownToHaveNoOverflowAndNoFallbackFonts() as it has no clients.
2097
2098         * rendering/SimpleLineLayout.cpp:
2099         (WebCore::SimpleLineLayout::canUseFor):
2100         
2101             Check if all characters can be found from the primary font.
2102
2103 2013-10-25  Andreas Kling  <akling@apple.com>
2104
2105         SVGResourcesCache::clientDestroyed() should take a RenderElement&.
2106         <https://webkit.org/b/123339>
2107
2108         This function is always called with an object, and that object
2109         is guaranteed to never be a text renderer.
2110
2111         Reviewed by Antti Koivisto.
2112
2113 2013-10-25  Andreas Kling  <akling@apple.com>
2114
2115         SVGResourcesCache::clientLayoutChanged() should take a RenderElement&.
2116         <https://webkit.org/b/123336>
2117
2118         This function is always called with an object, and that object
2119         is guaranteed to never be a text renderer.
2120
2121         Reviewed by Antti Koivisto.
2122
2123 2013-10-25  Andreas Kling  <akling@apple.com>
2124
2125         SVGResourcesCache::clientStyleChanged() should take a RenderElement&.
2126         <https://webkit.org/b/123335>
2127
2128         This function is always called with an object, and that object
2129         is guaranteed to never be a text renderer.
2130
2131         Reviewed by Antti Koivisto.
2132
2133 2013-10-25  Andreas Kling  <akling@apple.com>
2134
2135         SVG: postApplyResource() should take a RenderElement&.
2136         <https://webkit.org/b/123334>
2137
2138         This function is always called with an object, and that object
2139         is guaranteed to never be a text renderer.
2140
2141         Reviewed by Antti Koivisto.
2142
2143 2013-10-25  Antti Koivisto  <antti@apple.com>
2144
2145         REGRESSION(r157950): It made many tests assert on Windows, EFL, GTK
2146         https://bugs.webkit.org/show_bug.cgi?id=123309
2147
2148         Reviewed by Andreas Kling.
2149
2150         Disable simple line layout on non-Mac plaforms for now.
2151
2152         * rendering/SimpleLineLayout.cpp:
2153         (WebCore::SimpleLineLayout::canUseFor):
2154
2155 2013-10-24  Andreas Kling  <akling@apple.com>
2156
2157         SVG: applyResource() should take a RenderElement&.
2158         <https://webkit.org/b/123286>
2159
2160         This function is always called with an object, and that object
2161         is guaranteed to never be a text renderer.
2162
2163         Reviewed by Antti Koivisto.
2164
2165 2013-10-25  Andreas Kling  <akling@apple.com>
2166
2167         RenderElement::styleWillChange() should pass newStyle as reference.
2168         <https://webkit.org/b/123332>
2169
2170         When styleWillChange() is called, there is always a new style getting
2171         set so there's no need to handle the null style case.
2172         This flushed out a couple of unnecessary checks.
2173
2174         Reviewed by Antti Koivisto.
2175
2176 2013-10-25  peavo@outlook.com  <peavo@outlook.com>
2177
2178         [WinCairo] Compile fixes.
2179         https://bugs.webkit.org/show_bug.cgi?id=123269
2180
2181         Reviewed by Csaba Osztrogon√°c.
2182
2183         * platform/graphics/win/ImageCairoWin.cpp: Added new parameter to BitmapImage::draw() calls.
2184         (WebCore::BitmapImage::getHBITMAPOfSize):
2185         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
2186
2187 2013-10-25  Sergio Villar Senin  <svillar@igalia.com>
2188
2189         Use a Vector instead of HashSet to computed the orderValues in RenderFlexibleBox
2190         https://bugs.webkit.org/show_bug.cgi?id=118620
2191
2192         Reviewed by Antti Koivisto.
2193
2194         Turns out that order is extremelly uncommon so using a Vector is
2195         much less expensive. This also special-cases the much common case
2196         of only having order of value 0 by using Vectors with just one
2197         preallocated member.
2198
2199         Also added the performance test that shows a ~1% win when using a
2200         vector instead of the HashSet.
2201
2202         * rendering/RenderFlexibleBox.cpp:
2203         (WebCore::RenderFlexibleBox::OrderIterator::setOrderValues):
2204         (WebCore::RenderFlexibleBox::layoutBlock):
2205         (WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
2206         * rendering/RenderFlexibleBox.h:
2207
2208 2013-10-25  Sergio Villar Senin  <svillar@igalia.com>
2209
2210         Non-SVG build broken after r157950
2211         https://bugs.webkit.org/show_bug.cgi?id=123328
2212
2213         Reviewed by Xan Lopez.
2214
2215         The isSVGInlineTest() check should be done only if SVG is enabled.
2216
2217         * rendering/SimpleLineLayout.cpp:
2218         (WebCore::SimpleLineLayout::canUseFor):
2219
2220 2013-10-24  Jer Noble  <jer.noble@apple.com>
2221
2222         [Mac] Add helper methods to convert CMTime <--> MediaTime
2223         https://bugs.webkit.org/show_bug.cgi?id=123285
2224
2225         Reviewed by Eric Carlson.
2226
2227         Add utility methods to convert between CMTime (a rational time class) and MediaTime.
2228         Once there, PlatformClockCM can now vend and accept MediaTimes for currentTime.
2229
2230         * platform/mac/MediaTimeMac.h:
2231         * platform/mac/MediaTimeMac.cpp:
2232         (WebCore::toMediaTime): Added conversion utility method.
2233         (WebCore::toCMTime): Ditto.
2234
2235         * platform/mac/PlatformClockCM.h:
2236         * platform/mac/PlatformClockCM.mm:
2237         (PlatformClockCM::setCurrentMediaTime): Added.
2238         (PlatformClockCM::currentMediaTime): Added.
2239
2240         * WebCore.xcodeproj/project.pbxproj: Add new files to project.
2241
2242 2013-10-24  Mark Rowe  <mrowe@apple.com>
2243
2244         Remove references to OS X 10.7 from Xcode configuration settings.
2245
2246         Now that we're not building for OS X 10.7 they're no longer needed.
2247
2248         Reviewed by Anders Carlsson.
2249
2250
2251         * Configurations/Base.xcconfig:
2252         * Configurations/DebugRelease.xcconfig:
2253         * Configurations/FeatureDefines.xcconfig:
2254         * Configurations/Version.xcconfig:
2255
2256 2013-10-24  Antti Koivisto  <antti@apple.com>
2257
2258         Cache line layout path
2259         https://bugs.webkit.org/show_bug.cgi?id=123298
2260
2261         Reviewed by Sam Weinig.
2262         
2263         Determining the path can be non-trivial. Avoid computing it repeatedly on relayouts.
2264
2265         * rendering/RenderBlock.cpp:
2266         (WebCore::RenderBlock::RenderBlock):
2267         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
2268         (WebCore::RenderBlock::invalidateLineLayoutPath):
2269         (WebCore::RenderBlock::removeChild):
2270         
2271             Invalidate the path when children change.
2272
2273         * rendering/RenderBlock.h:
2274         * rendering/RenderBlockFlow.cpp:
2275         (WebCore::RenderBlockFlow::layoutInlineChildren):
2276         (WebCore::RenderBlockFlow::styleDidChange):
2277         
2278             Invalidate the path when style changes.
2279
2280         (WebCore::RenderBlockFlow::deleteLineBoxesBeforeSimpleLineLayout):
2281         (WebCore::RenderBlockFlow::ensureLineBoxes):
2282         * rendering/RenderText.cpp:
2283         (WebCore::RenderText::setText):
2284         
2285             Invalidate the path when text changes.
2286
2287 2013-10-24  Mark Rowe  <mrowe@apple.com>
2288
2289         <rdar://problem/15312643> Prepare for the mysterious future.
2290
2291         Reviewed by David Kilzer.
2292
2293
2294         * Configurations/Base.xcconfig:
2295         * Configurations/DebugRelease.xcconfig:
2296         * Configurations/FeatureDefines.xcconfig:
2297         * Configurations/Version.xcconfig:
2298
2299 2013-10-24  Andreas Kling  <akling@apple.com>
2300
2301         DocumentLoader::cachedResourceLoader() should return a reference.
2302         <https://webkit.org/b/123303>
2303
2304         ..and while we're at it, make DocumentLoader::m_cachedResourceLoader
2305         a Ref, and have CachedResourceLoader::create return a PassRef.
2306
2307         Reviewed by Sam Weinig.
2308
2309 2013-10-24  Anders Carlsson  <andersca@apple.com>
2310
2311         Stop bringing in the std namespace
2312         https://bugs.webkit.org/show_bug.cgi?id=123273
2313
2314         Reviewed by Andreas Kling.
2315
2316         * Modules/webaudio/AudioBufferSourceNode.cpp:
2317         (WebCore::AudioBufferSourceNode::renderFromBuffer):
2318         (WebCore::AudioBufferSourceNode::startGrain):
2319         (WebCore::AudioBufferSourceNode::totalPitchRate):
2320         * Modules/webaudio/AudioNodeInput.cpp:
2321         (WebCore::AudioNodeInput::numberOfChannels):
2322         * Modules/webaudio/AudioParamTimeline.cpp:
2323         (WebCore::AudioParamTimeline::valuesForTimeRangeImpl):
2324         * Modules/webaudio/AudioScheduledSourceNode.cpp:
2325         (WebCore::AudioScheduledSourceNode::updateSchedulingInfo):
2326         (WebCore::AudioScheduledSourceNode::stop):
2327         * Modules/webaudio/AudioSummingJunction.cpp:
2328         * Modules/webaudio/DelayDSPKernel.cpp:
2329         (WebCore::DelayDSPKernel::process):
2330         * Modules/webaudio/OfflineAudioDestinationNode.cpp:
2331         (WebCore::OfflineAudioDestinationNode::offlineRender):
2332         * Modules/webaudio/OscillatorNode.cpp:
2333         * Modules/webaudio/PannerNode.cpp:
2334         (WebCore::PannerNode::dopplerRate):
2335         * Modules/webaudio/WaveShaperDSPKernel.cpp:
2336         (WebCore::WaveShaperDSPKernel::processCurve):
2337         * Modules/webdatabase/DatabaseTracker.cpp:
2338         (WebCore::DatabaseTracker::hasAdequateQuotaForOrigin):
2339         * Modules/websockets/WebSocket.cpp:
2340         (WebCore::saturateAdd):
2341         * Modules/websockets/WebSocketChannel.cpp:
2342         * Modules/websockets/WebSocketFrame.cpp:
2343         (WebCore::WebSocketFrame::parseFrame):
2344         * accessibility/AccessibilityARIAGrid.cpp:
2345         * accessibility/AccessibilityARIAGridCell.cpp:
2346         * accessibility/AccessibilityARIAGridRow.cpp:
2347         * accessibility/AccessibilityList.cpp:
2348         * accessibility/AccessibilityListBox.cpp:
2349         * accessibility/AccessibilityListBoxOption.cpp:
2350         * accessibility/AccessibilityNodeObject.cpp:
2351         * accessibility/AccessibilityObject.cpp:
2352         * accessibility/AccessibilityRenderObject.cpp:
2353         * accessibility/AccessibilityTable.cpp:
2354         (WebCore::AccessibilityTable::addChildren):
2355         * accessibility/AccessibilityTableCell.cpp:
2356         * accessibility/AccessibilityTableColumn.cpp:
2357         * accessibility/AccessibilityTableHeaderContainer.cpp:
2358         * accessibility/AccessibilityTableRow.cpp:
2359         * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
2360         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2361         (-[WebAccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
2362         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2363         (WebCore::JSCSSStyleDeclaration::getOwnPropertyNames):
2364         * bindings/js/JSGeolocationCustom.cpp:
2365         (WebCore::setTimeout):
2366         (WebCore::setMaximumAge):
2367         * bindings/js/ScriptController.cpp:
2368         * bindings/js/SerializedScriptValue.cpp:
2369         (WebCore::writeLittleEndian):
2370         (WebCore::CloneSerializer::write):
2371         (WebCore::CloneDeserializer::deserialize):
2372         (WebCore::CloneDeserializer::readString):
2373         * css/CSSComputedStyleDeclaration.cpp:
2374         (WebCore::ComputedStyleExtractor::propertyValue):
2375         * css/CSSFontSelector.cpp:
2376         (WebCore::CSSFontSelector::getFontFace):
2377         * css/CSSGradientValue.cpp:
2378         (WebCore::CSSRadialGradientValue::createGradient):
2379         * css/CSSParser.cpp:
2380         (WebCore::CSSParser::parseValue):
2381         (WebCore::CSSParser::parseColorParameters):
2382         (WebCore::CSSParser::parseHSLParameters):
2383         * css/CSSReflectValue.cpp:
2384         * css/DeprecatedStyleBuilder.cpp:
2385         (WebCore::ApplyPropertyFontSize::applyValue):
2386         * css/PropertySetCSSStyleDeclaration.cpp:
2387         * css/SVGCSSParser.cpp:
2388         * css/StylePropertySet.cpp:
2389         (WebCore::StylePropertySet::getLayeredShorthandValue):
2390         * css/StyleResolver.cpp:
2391         (WebCore::StyleResolver::viewportPercentageValue):
2392         * dom/CharacterData.cpp:
2393         (WebCore::CharacterData::parserAppendData):
2394         * dom/ContainerNode.cpp:
2395         * dom/Document.cpp:
2396         (WebCore::Document::minimumLayoutDelay):
2397         * dom/Node.cpp:
2398         (WebCore::Node::compareDocumentPosition):
2399         * dom/Range.cpp:
2400         (WebCore::Range::toString):
2401         (WebCore::Range::textRects):
2402         (WebCore::Range::textQuads):
2403         * dom/ScriptedAnimationController.cpp:
2404         (WebCore::ScriptedAnimationController::scheduleAnimation):
2405         * dom/StyledElement.cpp:
2406         (WebCore::StyledElement::makePresentationAttributeCacheKey):
2407         * dom/Text.cpp:
2408         * dom/ViewportArguments.cpp:
2409         (WebCore::clampLengthValue):
2410         (WebCore::clampScaleValue):
2411         (WebCore::ViewportArguments::resolve):
2412         (WebCore::computeMinimumScaleFactorForContentContained):
2413         (WebCore::restrictMinimumScaleFactorToViewportSize):
2414         * editing/AlternativeTextController.cpp:
2415         * editing/ApplyStyleCommand.cpp:
2416         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2417         * editing/CompositeEditCommand.cpp:
2418         (WebCore::CompositeEditCommand::deleteInsignificantText):
2419         * editing/Editor.cpp:
2420         (WebCore::Editor::setComposition):
2421         (WebCore::Editor::compositionRange):
2422         * editing/EditorCommand.cpp:
2423         (WebCore::verticalScrollDistance):
2424         * editing/TextIterator.cpp:
2425         (WebCore::TextIterator::handleTextNode):
2426         (WebCore::TextIterator::handleTextBox):
2427         (WebCore::CharacterIterator::string):
2428         (WebCore::SearchBuffer::SearchBuffer):
2429         (WebCore::SearchBuffer::append):
2430         (WebCore::SearchBuffer::prependContext):
2431         (WebCore::SearchBuffer::search):
2432         * editing/VisibleUnits.cpp:
2433         (WebCore::startOfParagraph):
2434         * editing/htmlediting.cpp:
2435         * editing/markup.cpp:
2436         * fileapi/FileReaderLoader.cpp:
2437         (WebCore::FileReaderLoader::didReceiveResponse):
2438         (WebCore::FileReaderLoader::didReceiveData):
2439         * history/BackForwardList.cpp:
2440         (WebCore::BackForwardList::backListWithLimit):
2441         (WebCore::BackForwardList::forwardListWithLimit):
2442         * history/PageCache.cpp:
2443         (WebCore::PageCache::setCapacity):
2444         * html/BaseDateAndTimeInputType.cpp:
2445         * html/FTPDirectoryDocument.cpp:
2446         * html/HTMLAreaElement.cpp:
2447         (WebCore::HTMLAreaElement::getRegion):
2448         * html/HTMLElement.cpp:
2449         (WebCore::HTMLElement::parseAttribute):
2450         (WebCore::parseColorStringWithCrazyLegacyRules):
2451         * html/HTMLFormControlElement.cpp:
2452         * html/HTMLFormElement.cpp:
2453         (WebCore::HTMLFormElement::getTextFieldValues):
2454         * html/HTMLImageElement.cpp:
2455         * html/HTMLInputElement.cpp:
2456         * html/HTMLMapElement.cpp:
2457         * html/HTMLMediaElement.cpp:
2458         (WebCore::HTMLMediaElement::HTMLMediaElement):
2459         (WebCore::HTMLMediaElement::updateActiveTextTrackCues):
2460         (WebCore::HTMLMediaElement::textTrackAddCue):
2461         (WebCore::HTMLMediaElement::textTrackRemoveCue):
2462         (WebCore::HTMLMediaElement::rewind):
2463         (WebCore::HTMLMediaElement::seek):
2464         (WebCore::HTMLMediaElement::duration):
2465         * html/HTMLSelectElement.cpp:
2466         (WebCore::HTMLSelectElement::parseAttribute):
2467         (WebCore::HTMLSelectElement::updateListBoxSelection):
2468         * html/HTMLSourceElement.cpp:
2469         * html/HTMLTableCellElement.cpp:
2470         (WebCore::HTMLTableCellElement::colSpan):
2471         (WebCore::HTMLTableCellElement::rowSpan):
2472         * html/HTMLTableElement.cpp:
2473         (WebCore::HTMLTableElement::parseAttribute):
2474         * html/HTMLTextFormControlElement.cpp:
2475         (WebCore::HTMLTextFormControlElement::setSelectionStart):
2476         (WebCore::HTMLTextFormControlElement::setSelectionEnd):
2477         (WebCore::HTMLTextFormControlElement::select):
2478         (WebCore::HTMLTextFormControlElement::setSelectionRange):
2479         * html/HTMLTrackElement.cpp:
2480         * html/ImageDocument.cpp:
2481         (WebCore::ImageDocument::scale):
2482         * html/InputType.cpp:
2483         (WebCore::InputType::valueAsDouble):
2484         * html/MediaController.cpp:
2485         (MediaController::duration):
2486         (MediaController::currentTime):
2487         (MediaController::setCurrentTime):
2488         (MediaController::updateReadyState):
2489         * html/NumberInputType.cpp:
2490         (WebCore::NumberInputType::setValueAsDouble):
2491         (WebCore::NumberInputType::setValueAsDecimal):
2492         (WebCore::NumberInputType::createStepRange):
2493         * html/RangeInputType.cpp:
2494         (WebCore::RangeInputType::handleKeydownEvent):
2495         * html/SearchInputType.cpp:
2496         (WebCore::SearchInputType::startSearchEventTimer):
2497         * html/StepRange.cpp:
2498         (WebCore::StepRange::clampValue):
2499         (WebCore::StepRange::parseStep):
2500         * html/TimeRanges.cpp:
2501         * html/ValidationMessage.cpp:
2502         (WebCore::ValidationMessage::setMessageDOMAndStartTimer):
2503         (WebCore::adjustBubblePosition):
2504         * html/canvas/CanvasRenderingContext2D.cpp:
2505         (WebCore::normalizeRect):
2506         * html/canvas/WebGLRenderingContext.cpp:
2507         (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
2508         (WebCore::WebGLRenderingContext::validateCompressedTexFuncData):
2509         * html/shadow/MediaControlElements.cpp:
2510         (WebCore::MediaControlRewindButtonElement::defaultEventHandler):
2511         * html/shadow/MediaControlsApple.cpp:
2512         * html/shadow/SliderThumbElement.cpp:
2513         (WebCore::SliderThumbElement::setPositionFromPoint):
2514         * inspector/ContentSearchUtils.cpp:
2515         * inspector/DOMEditor.cpp:
2516         * inspector/DOMPatchSupport.cpp:
2517         (WebCore::DOMPatchSupport::diff):
2518         * inspector/InjectedScriptHost.cpp:
2519         * loader/ProgressTracker.cpp:
2520         (WebCore::ProgressTracker::incrementProgress):
2521         * loader/cache/CachedImage.cpp:
2522         * page/DOMWindow.cpp:
2523         (WebCore::DOMWindow::adjustWindowRect):
2524         * page/EventHandler.cpp:
2525         (WebCore::MaximumDurationTracker::~MaximumDurationTracker):
2526         * page/FrameTree.cpp:
2527         * page/FrameView.cpp:
2528         (WebCore::FrameView::adjustedDeferredRepaintDelay):
2529         (WebCore::FrameView::autoSizeIfEnabled):
2530         * page/PrintContext.cpp:
2531         (WebCore::PrintContext::computeAutomaticScaleFactor):
2532         * page/SpatialNavigation.cpp:
2533         (WebCore::entryAndExitPointsForDirection):
2534         * page/animation/CSSPropertyAnimation.cpp:
2535         (WebCore::blendFilterOperations):
2536         (WebCore::PropertyWrapperShadow::blendMismatchedShadowLists):
2537         * platform/graphics/FloatRect.cpp:
2538         (WebCore::FloatRect::FloatRect):
2539         (WebCore::FloatRect::intersect):
2540         (WebCore::FloatRect::uniteEvenIfEmpty):
2541         (WebCore::FloatRect::extend):
2542         (WebCore::FloatRect::fitToPoints):
2543         * platform/graphics/GlyphPageTreeNode.cpp:
2544         (WebCore::GlyphPageTreeNode::initializePage):
2545         (WebCore::GlyphPageTreeNode::getChild):
2546         * platform/graphics/IntRect.cpp:
2547         (WebCore::IntRect::intersect):
2548         (WebCore::IntRect::unite):
2549         (WebCore::IntRect::uniteIfNonZero):
2550         * platform/graphics/LayoutRect.cpp:
2551         (WebCore::LayoutRect::intersect):
2552         (WebCore::LayoutRect::unite):
2553         (WebCore::LayoutRect::uniteIfNonZero):
2554         * platform/graphics/filters/FEMorphology.cpp:
2555         (WebCore::FEMorphology::platformApplyGeneric):
2556         (WebCore::FEMorphology::platformApplySoftware):
2557         * platform/mac/MemoryPressureHandlerMac.mm:
2558         (WebCore::MemoryPressureHandler::respondToMemoryPressure):
2559         * platform/text/TextCodecICU.cpp:
2560         * rendering/LineWidth.cpp:
2561         (WebCore::LineWidth::fitBelowFloats):
2562         (WebCore::LineWidth::computeAvailableWidthFromLeftAndRight):
2563         * rendering/RenderBlock.h:
2564         (WebCore::RenderBlock::availableLogicalWidthForLine):
2565         (WebCore::RenderBlock::availableLogicalWidthForContent):
2566         * rendering/RenderFieldset.cpp:
2567         (WebCore::RenderFieldset::computePreferredLogicalWidths):
2568         (WebCore::RenderFieldset::layoutSpecialExcludedChild):
2569         (WebCore::RenderFieldset::paintBoxDecorations):
2570         * rendering/RenderFlowThread.cpp:
2571         (WebCore::RenderFlowThread::updateLogicalWidth):
2572         (WebCore::RenderFlowThread::addForcedRegionBreak):
2573         * rendering/RenderFrameBase.cpp:
2574         (WebCore::RenderFrameBase::layoutWithFlattening):
2575         * rendering/RenderFrameSet.cpp:
2576         (WebCore::RenderFrameSet::layOutAxis):
2577         * rendering/RenderSlider.cpp:
2578         (WebCore::RenderSlider::computePreferredLogicalWidths):
2579         * rendering/RenderTableCell.h:
2580         * rendering/RenderTreeAsText.cpp:
2581         (WebCore::writeLayers):
2582         * rendering/RootInlineBox.h:
2583         (WebCore::RootInlineBox::selectionHeight):
2584         (WebCore::RootInlineBox::selectionHeightAdjustedForPrecedingBlock):
2585         * rendering/mathml/RenderMathMLRow.cpp:
2586         (WebCore::RenderMathMLRow::layout):
2587         * rendering/mathml/RenderMathMLScripts.cpp:
2588         (WebCore::RenderMathMLScripts::layout):
2589         * rendering/style/RenderStyle.h:
2590         * rendering/style/StyleGeneratedImage.cpp:
2591         (WebCore::StyleGeneratedImage::imageSize):
2592         * style/StyleFontSizeFunctions.cpp:
2593         (WebCore::Style::fontSizeForKeyword):
2594         * svg/SVGSVGElement.cpp:
2595         (WebCore::SVGSVGElement::setCurrentTime):
2596
2597 2013-10-24  Andreas Kling  <akling@apple.com>
2598
2599         Uncomplicate some of SVGTextRunRenderingContext.
2600         <https://webkit.org/b/123294>
2601
2602         This class was weird about a few things, so I've taken these steps
2603         to clear things up:
2604
2605         - FINAL and OVERRIDE all the things.
2606         - Constructor now takes a RenderObject&.
2607         - renderer() now returns a RenderObject&.
2608         - drawSVGGlyphs() no longer takes a TextRun.
2609         - glyphDataForCharacter() no longer takes a TextRun.
2610
2611         To expand on the last two, there was also some awkward hoop-jumping
2612         where we'd go through the TextRun passed by argument to find its
2613         rendering context, which was really just |this| all along.
2614
2615         Reviewed by Antti Koivisto.
2616
2617 2013-10-24  Roger Fong  <roger_fong@apple.com>
2618
2619         Add texture level dependent size checks to textureImage2D calls.
2620         https://bugs.webkit.org/show_bug.cgi?id=123290
2621         <rdar://problem/15201382>
2622
2623         Reviewed by Dean Jackson
2624
2625         Test covered by WebGL Conformance suite 1.0.2 test, textures/texture-size-limit.html.
2626
2627         There are different size limits when calling textureImage2D on different texture levels.
2628         We should be throwing an error if our texture size exceeds these limits.
2629
2630         * html/canvas/WebGLRenderingContext.cpp:
2631         (WebCore::WebGLRenderingContext::validateTexFuncParameters):
2632
2633 2013-10-24  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2634
2635         [MediaStream API] allow a stream source to be shared
2636         https://bugs.webkit.org/show_bug.cgi?id=121954
2637
2638         Reviewed by Eric Carlson.
2639
2640         Now, the MediaStreamSource don't know about the MediaStream that owns it,
2641         since there can be more than one MediaStream that has it as source for some track.
2642         MediaStreamTrack classes now have observers registered, in case there are more than
2643         one MediaStream owning that track
2644
2645         No new tests, no change in functionality.
2646
2647         * Modules/mediastream/MediaStream.cpp:
2648         (WebCore::MediaStream::MediaStream): Adding the MediaStream as an observer for each track it owns.
2649
2650         (WebCore::MediaStream::addTrack): Now adding the MediaStream as an observer the new added track
2651         and adding the source to the MediaStreamDescriptor.
2652
2653         (WebCore::MediaStream::removeTrack): Instead of removing the source right away, we first check if
2654         there isn't any other track using that source, if not we remove the source.
2655
2656         (WebCore::MediaStream::haveTrackWithSource):
2657         (WebCore::MediaStream::addRemoteSource): MediaStreamSource has no information about the MediaStream
2658         that uses it, so now we don't set the stream in the source anymore.
2659
2660         (WebCore::MediaStream::removeRemoteSource): There can be more than on track using the source. So we
2661         get each track that is using the source and then remove it and fire the ended event.
2662
2663         * Modules/mediastream/MediaStream.h:
2664         * Modules/mediastream/MediaStreamTrack.cpp:
2665         (WebCore::MediaStreamTrack::addObserver):
2666         (WebCore::MediaStreamTrack::removeObserver):
2667         (WebCore::MediaStreamTrack::trackDidEnd): Does not get the client from the MediaStreamDescriptor, it now
2668         notify each of its observers that the track ended.
2669
2670         * Modules/mediastream/MediaStreamTrack.h: Adding Observer class.
2671
2672         * platform/mediastream/MediaStreamDescriptor.cpp: Destructor now does nothing. Previously it was setting
2673         each MediaStreamSource's descriptor to null.
2674
2675         (WebCore::MediaStreamDescriptor::removeSource): Not setting the stream in source anymore.
2676
2677         (WebCore::MediaStreamDescriptor::MediaStreamDescriptor): Ditto.
2678
2679         (WebCore::MediaStreamDescriptor::setEnded): Not setting the state of the source to Ended
2680
2681         * platform/mediastream/MediaStreamDescriptor.h:
2682         (WebCore::MediaStreamDescriptor::~MediaStreamDescriptor):
2683         * platform/mediastream/MediaStreamSource.cpp: Removing references to MediaStream object
2684         (WebCore::MediaStreamSource::MediaStreamSource):
2685         (WebCore::MediaStreamSource::reset):
2686         * platform/mediastream/MediaStreamSource.h:
2687
2688 2013-10-24  Daniel Bates  <dabates@apple.com>
2689
2690         Crash in WebCore::NavigationScheduler::startTimer()
2691         https://bugs.webkit.org/show_bug.cgi?id=123288
2692         <rdar://problem/14055644>
2693
2694         Reviewed by Alexey Proskuryakov.
2695
2696         Currently NavigationScheduler::startTimer() synchronously notifies the client
2697         before the Web Inspector of a scheduled redirect. If a client cancels this
2698         redirect then NavigationScheduler::m_redirect will become null and we'll
2699         subsequently crash when informing the Web Inspector of this formerly scheduled
2700         redirect. Instead, NavigationScheduler::startTimer() should notify the Web
2701         Inspector before it notifies the client of a scheduled redirect.
2702
2703         As a side benefit of this change, the Web Inspector is notified of a scheduled
2704         redirect before being notified of it being canceled when a client chooses to cancel
2705         a scheduled redirect.
2706
2707         * loader/NavigationScheduler.cpp:
2708         (WebCore::NavigationScheduler::startTimer):
2709
2710 2013-10-24  Antti Koivisto  <antti@apple.com>
2711
2712         Try to fix build without CSS_SHAPES.
2713
2714         * rendering/SimpleLineLayout.cpp:
2715         (WebCore::SimpleLineLayout::canUseFor):
2716
2717 2013-10-24  Antti Koivisto  <antti@apple.com>
2718
2719         Simple line layout
2720         https://bugs.webkit.org/show_bug.cgi?id=122458
2721
2722         Reviewed by Darin Adler.
2723
2724         Line box based inline layout is powerful but also rather slow and memory intensive. Simple line layout
2725         is a compact alternative data structure and fast code path to cover common cases without requiring line
2726         boxes.
2727         
2728         This patch handles a case single left-aligned text renderer inside flow with no floats. Even this very basic
2729         case is sufficiently common to handle up to 25% of all text lines on some popular new sites. The decision
2730         which path to use is made per block flow (paragraph).
2731         
2732         Simple line layout aims to produce pixel-exact rendering result when compared to the line box layout.
2733         
2734         The goal is to handle everything that requires line level access in cases that allow use of simple lines.
2735         This is not quite the case yet. For example selections and outline painting are not supported. In these
2736         cases we seamlessly switch to the line boxes.
2737
2738         The simple line data structure currently uses 12 bytes per line. Lineboxes take ~160 bytes minimum per line.
2739         Laying out the lines is also several times faster as is iterating over them.
2740
2741         * CMakeLists.txt:
2742         * GNUmakefile.list.am:
2743         * WebCore.vcxproj/WebCore.vcxproj:
2744         * WebCore.xcodeproj/project.pbxproj:
2745         * dom/Position.cpp:
2746         (WebCore::Position::upstream):
2747         (WebCore::Position::downstream):
2748         (WebCore::Position::getInlineBoxAndOffset):
2749         
2750             Creating positions within a simple line flow causes switch to line boxes.
2751
2752         * editing/TextIterator.cpp:
2753         (WebCore::TextIterator::handleTextNode):
2754         
2755             TextIterator traverses line boxes if available. In case simple line case we need to replicate the
2756             same results (for compatibility but especially to avoid changing test results). This is done here
2757             by just traversing the string without actually using the layout.
2758
2759         * rendering/RenderBlock.cpp:
2760         (WebCore::RenderBlock::RenderBlock):
2761         (WebCore::RenderBlock::layoutShapeInsideInfo):
2762         * rendering/RenderBlock.h:
2763         * rendering/RenderBlockFlow.cpp:
2764         (WebCore::RenderBlockFlow::layoutInlineChildren):
2765         
2766             Select the layout path to use.
2767
2768         (WebCore::RenderBlockFlow::deleteLines):
2769         (WebCore::RenderBlockFlow::hitTestInlineChildren):
2770         (WebCore::RenderBlockFlow::adjustForBorderFit):
2771         (WebCore::RenderBlockFlow::firstLineBaseline):
2772         (WebCore::RenderBlockFlow::inlineBlockBaseline):
2773         (WebCore::RenderBlockFlow::inlineSelectionGaps):
2774         (WebCore::RenderBlockFlow::clearTruncation):
2775         (WebCore::RenderBlockFlow::positionForPointWithInlineChildren):
2776         (WebCore::RenderBlockFlow::addFocusRingRectsForInlineChildren):
2777         (WebCore::RenderBlockFlow::paintInlineChildren):
2778         (WebCore::RenderBlockFlow::hasLines):
2779         (WebCore::RenderBlockFlow::layoutSimpleLines):
2780         
2781             Do simple layout.
2782
2783         (WebCore::RenderBlockFlow::deleteLineBoxesBeforeSimpleLineLayout):
2784         (WebCore::RenderBlockFlow::ensureLineBoxes):
2785         
2786             This function switches from simple lines to line boxes. The switching can be done outside normal layout.
2787             This is used to cover some cases that are not yet supported by simple lines (like selections).
2788
2789         * rendering/RenderBlockFlow.h:
2790         (WebCore::RenderBlockFlow::simpleLines):
2791         * rendering/RenderBlockLineLayout.cpp:
2792         (WebCore::RenderBlockFlow::layoutLineBoxes):
2793         
2794             Rename the line box layout function.
2795
2796         (WebCore::RenderBlockFlow::addOverflowFromInlineChildren):
2797         * rendering/RenderText.cpp:
2798         (WebCore::RenderText::deleteLineBoxesBeforeSimpleLineLayout):
2799         (WebCore::RenderText::absoluteRects):
2800         (WebCore::RenderText::absoluteRectsForRange):
2801         (WebCore::RenderText::absoluteQuadsClippedToEllipsis):
2802         (WebCore::RenderText::absoluteQuads):
2803         (WebCore::RenderText::absoluteQuadsForRange):
2804         (WebCore::RenderText::positionForPoint):
2805         (WebCore::RenderText::knownToHaveNoOverflowAndNoFallbackFonts):
2806         (WebCore::RenderText::setSelectionState):
2807         (WebCore::RenderText::setTextWithOffset):
2808         (WebCore::RenderText::ensureLineBoxes):
2809         (WebCore::RenderText::simpleLines):
2810         (WebCore::RenderText::linesBoundingBox):
2811         (WebCore::RenderText::linesVisualOverflowBoundingBox):
2812         (WebCore::RenderText::selectionRectForRepaint):
2813         (WebCore::RenderText::caretMinOffset):
2814         (WebCore::RenderText::caretMaxOffset):
2815         (WebCore::RenderText::countRenderedCharacterOffsetsUntil):
2816         (WebCore::RenderText::containsRenderedCharacterOffset):
2817         (WebCore::RenderText::containsCaretOffset):
2818         (WebCore::RenderText::hasRenderedText):
2819         * rendering/RenderText.h:
2820         * rendering/RenderTreeAsText.cpp:
2821         (WebCore::RenderTreeAsText::writeRenderObject):
2822         (WebCore::writeSimpleLine):
2823         (WebCore::write):
2824         * rendering/SimpleLineLayout.cpp: Added.
2825         (WebCore::SimpleLineLayout::canUseFor):
2826         
2827             This check for the cases supported by the simple line layout path.
2828
2829         (WebCore::SimpleLineLayout::isWhitespace):
2830         (WebCore::SimpleLineLayout::skipWhitespaces):
2831         (WebCore::SimpleLineLayout::textWidth):
2832         (WebCore::SimpleLineLayout::createLines):
2833         
2834             The main layout functions that breaks text to lines. It only handles the cases allowed by 
2835             SimpleLineLayout::canUseFor. What it handles it aims to break exactly as line box layout does.
2836
2837         * rendering/SimpleLineLayout.h: Added.
2838         * rendering/SimpleLineLayoutFunctions.cpp: Added.
2839         (WebCore::SimpleLineLayout::paintFlow):
2840         (WebCore::SimpleLineLayout::hitTestFlow):
2841         (WebCore::SimpleLineLayout::collectFlowOverflow):
2842         (WebCore::SimpleLineLayout::computeTextBoundingBox):
2843         * rendering/SimpleLineLayoutFunctions.h: Added.
2844         (WebCore::SimpleLineLayout::computeFlowHeight):
2845         (WebCore::SimpleLineLayout::computeFlowFirstLineBaseline):
2846         (WebCore::SimpleLineLayout::computeFlowLastLineBaseline):
2847         (WebCore::SimpleLineLayout::findTextCaretMinimumOffset):
2848         (WebCore::SimpleLineLayout::findTextCaretMaximumOffset):
2849         (WebCore::SimpleLineLayout::containsTextCaretOffset):
2850         (WebCore::SimpleLineLayout::isTextRendered):
2851         (WebCore::SimpleLineLayout::lineHeightFromFlow):
2852         
2853             Support functions called from RenderBlockFlow and RenderText. They are equivalent to
2854             similar line box functions.
2855
2856         (WebCore::SimpleLineLayout::baselineFromFlow):
2857         * rendering/SimpleLineLayoutResolver.h: Added.
2858         (WebCore::SimpleLineLayout::Resolver::Line::Line):
2859         (WebCore::SimpleLineLayout::Resolver::Line::rect):
2860         (WebCore::SimpleLineLayout::Resolver::Line::baseline):
2861         (WebCore::SimpleLineLayout::Resolver::Line::text):
2862         (WebCore::SimpleLineLayout::Resolver::Iterator::Iterator):
2863         (WebCore::SimpleLineLayout::Resolver::Iterator::operator++):
2864         (WebCore::SimpleLineLayout::Resolver::Iterator::operator--):
2865         (WebCore::SimpleLineLayout::Resolver::Iterator::operator==):
2866         (WebCore::SimpleLineLayout::Resolver::Iterator::operator!=):
2867         (WebCore::SimpleLineLayout::Resolver::Iterator::operator*):
2868         
2869             Lazy iterator for deriving line metrics. This keeps the line data structure small as
2870             we don't need to keep easily derived values around.
2871
2872         (WebCore::SimpleLineLayout::Resolver::Resolver):
2873         (WebCore::SimpleLineLayout::Resolver::size):
2874         (WebCore::SimpleLineLayout::Resolver::begin):
2875         (WebCore::SimpleLineLayout::Resolver::end):
2876         (WebCore::SimpleLineLayout::Resolver::last):
2877         (WebCore::SimpleLineLayout::Resolver::operator[]):
2878
2879 2013-10-24  Myles C. Maxfield  <mmaxfield@apple.com>
2880
2881         Gaps between underlines in adjacent underlined text runs
2882         https://bugs.webkit.org/show_bug.cgi?id=123236
2883
2884         Reviewed by Simon Fraser and Darin Adler.
2885
2886         There are two pieces to this change. The first piece is in
2887         InlineTextBox::paint(). We were putting floating-point
2888         extents into a LayoutSize, which simply uses ints (for now),
2889         and then immediately converting this back to a FloatSize.
2890         Instead, we should be using floats throughout all of
2891         this code.
2892
2893         In addition, inside GraphicsContext::drawLineForText(), we are
2894         rounding the underline to pixel boundaries so that it appears
2895         very crisp on the screen. However, we should round once after
2896         performing computations, rather than rounding twice and then
2897         performing computations on the rounded numbers.
2898
2899         Test: fast/css3-text/css3-text-decoration/no-gap-between-two-rounded-textboxes.html
2900
2901         * platform/graphics/cg/GraphicsContextCG.cpp:
2902         (WebCore::GraphicsContext::drawLineForText): Change rounding mode
2903             to perform computations before rounding
2904         * rendering/InlineTextBox.cpp:
2905         (WebCore::InlineTextBox::paint): Don't convert to a LayoutSize
2906             just to convert to a FloatSize
2907
2908 2013-10-24  Andreas Kling  <akling@apple.com>
2909
2910         SVGRenderingContext should wrap a RenderElement.
2911         <https://webkit.org/b/123283>
2912
2913         The SVG rendering context class is never used with text renderers
2914         so we can have it wrap a RenderElement for tighter code.
2915
2916         Also renamed SVGRenderingContext::m_object to m_renderer.
2917
2918         Reviewed by Antti Koivisto.
2919
2920 2013-10-24  Santosh Mahto  <santosh.ma@samsung.com>
2921
2922         [contenteditable] Content after non-editable element disappears when merging lines using backspace
2923         https://bugs.webkit.org/show_bug.cgi?id=122748
2924
2925         Reviewed by Ryosuke Niwa.
2926
2927         In case of paragraph merging after deletion if second paragraph
2928         contains non-editable element, then content after the non-editable
2929         element(including non-editable element) will be removed while the
2930         content before the element will be merged with the first paragraph.
2931         This happens becasue endOfParagraphToMove calculation in merging function
2932         stop at editing boundary so endOfParagraphToMove becomes position just
2933         before non-editable content.
2934         With this patch now endOfParagraphToMove is calculated by skipping
2935         over the non-editable element.
2936
2937         Test: editing/deleting/merge-paragraph-contatining-noneditable.html
2938
2939         * editing/DeleteSelectionCommand.cpp:
2940         (WebCore::DeleteSelectionCommand::mergeParagraphs): use CanSkipOverEditingBoundary
2941         condition while calculating endOfParagraphToMove.
2942
2943 2013-10-24  Antoine Quint  <graouts@apple.com>
2944
2945         Web Inspector: Inspector doesn't show webkitTransitionEnd events in the timeline
2946         https://bugs.webkit.org/show_bug.cgi?id=123263
2947
2948         Reviewed by Timothy Hatcher.
2949
2950         A legacy event type is only set on an event in EventTarget::fireEventListeners(Event*)
2951         which is called after we used to call InspectorInstrumentation::willDispatchEvent(), the method
2952         that would ultimately yield the creation of a TimelineRecord for the event in the Web Inspector
2953         frontend, and as a result we would try to dispatch an event with an unprefixed event type to
2954         the frontend, which wouldn't even happen because most likely it wouldn't have listeners for this
2955         unprefixed type.
2956
2957         We now move the call to InspectorInstrumentation::willDispatchEvent() in
2958         EventTarget::fireEventListeners(Event*, EventTargetData*, EventListenerVector&) such that the
2959         correct event type and list of listeners is used to determine what event to dispatch to the frontend.
2960
2961         * dom/EventDispatcher.cpp:
2962         (WebCore::EventDispatcher::dispatchEvent):
2963         Remove calls to InspectorInstrumentation::willDispatchEvent() and InspectorInstrumentation::didDispatchEvent().
2964
2965         * dom/EventTarget.cpp:
2966         (WebCore::EventTarget::fireEventListeners):
2967         Add call to InspectorInstrumentation::willDispatchEvent() before we go through each listener and
2968         call InspectorInstrumentation::willHandleEvent(). Additionally, we refactor some code since we're
2969         getting references to the ScriptExecutionContext and Document upfront now.
2970
2971 2013-10-24  Andreas Kling  <akling@apple.com>
2972
2973         SVG: RenderElement-ize intersectRepaintRectWithResources().
2974         <https://webkit.org/b/123278>
2975
2976         SVGRenderSupport::intersectRepaintRectWithResources() is only ever
2977         called with non-text renderers so make it take RenderElement&.
2978
2979         Had to tweak RenderSVGResource::resourceBoundingBox() to take the
2980         renderer by reference.
2981
2982         Reviewed by Antti Koivisto.
2983
2984 2013-10-24  Joseph Pecoraro  <pecoraro@apple.com>
2985
2986         Web Inspector: Breakpoints in sourceURL named scripts do not work
2987         https://bugs.webkit.org/show_bug.cgi?id=123231
2988
2989         Reviewed by Timothy Hatcher.
2990
2991         Remember a Script's sourceURL and sourceMappingURL. When setting a
2992         breakpoint by URL, check it against the sourceURL or original URL.
2993         If a script had a sourceURL that would have been the only URL sent
2994         to the frontend, so that receives priority.
2995
2996         Test: inspector-protocol/debugger/setBreakpointByUrl-sourceURL.html
2997
2998         * inspector/InspectorDebuggerAgent.cpp:
2999         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
3000         (WebCore::InspectorDebuggerAgent::didParseSource):
3001         * inspector/InspectorDebuggerAgent.h:
3002         * inspector/ScriptDebugListener.h:
3003
3004 2013-10-23  Alexey Proskuryakov  <ap@apple.com>
3005
3006         Add CryptoKey base class and bindings
3007         https://bugs.webkit.org/show_bug.cgi?id=123216
3008
3009         Reviewed by Sam Weinig.
3010
3011         * crypto/CryptoKey.idl: Added.
3012
3013         * CMakeLists.txt:
3014         * DerivedSources.make:
3015         * GNUmakefile.list.am:
3016         Process the IDL.
3017
3018         * WebCore.xcodeproj/project.pbxproj: Added files.
3019
3020         * bindings/js/JSCryptoKeyCustom.cpp: Added.
3021         (WebCore::JSCryptoKey::algorithm): Use a visitor to build algorithm dictionary
3022         for the key.
3023
3024         * crypto/CryptoAlgorithmDescriptionBuilder.cpp: Added.
3025         * crypto/CryptoAlgorithmDescriptionBuilder.h: Added.
3026         An interface for a visitor we'll use to expose CrytoKey.algorithm in bindings,
3027         and possibly also for storage serialization. Not complete yet, we'll need support
3028         for a few more simple types, and less trivially, for nested algorithms.
3029
3030         * bindings/js/JSCryptoAlgorithmBuilder.cpp: Added.
3031         * bindings/js/JSCryptoAlgorithmBuilder.h: Added.
3032         An implementation that builds an algorithm description dictionary for JS bindings.
3033
3034         * crypto/CryptoKey.cpp: Added.
3035         (WebCore::CryptoKey::~CryptoKey):
3036         (WebCore::CryptoKey::buildAlgorithmDescription):
3037         * crypto/CryptoKey.h: Added.
3038         Added an almost empty implementation. Some of the functions that are currently
3039         marked as pure virtual will likely be implemented in this base class.
3040
3041 2013-10-24  Commit Queue  <commit-queue@webkit.org>
3042
3043         Unreviewed, rolling out r157916.
3044         http://trac.webkit.org/changeset/157916
3045         https://bugs.webkit.org/show_bug.cgi?id=123274
3046
3047         Broke Layout/flexbox-lots-of-data.html on perfbot (Requested
3048         by ap on #webkit).
3049
3050         * rendering/RenderFlexibleBox.cpp:
3051         (WebCore::RenderFlexibleBox::OrderHashTraits::emptyValue):
3052         (WebCore::RenderFlexibleBox::OrderHashTraits::constructDeletedValue):
3053         (WebCore::RenderFlexibleBox::OrderHashTraits::isDeletedValue):
3054         (WebCore::RenderFlexibleBox::OrderIterator::setOrderValues):
3055         (WebCore::RenderFlexibleBox::layoutBlock):
3056         (WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
3057         * rendering/RenderFlexibleBox.h:
3058
3059 2013-10-24  Zan Dobersek  <zdobersek@igalia.com>
3060
3061         Comment in ScopedEventQueue::dispatchEvent is unnecessarily verbose
3062         https://bugs.webkit.org/show_bug.cgi?id=123252
3063
3064         Reviewed by Darin Adler.
3065
3066         Shorten the comment about the crash avoidance in ScopedEventQueue::dispatchEvent due to
3067         the calling convention in C++ is left unspecified. The problem was already fixed in r157219
3068         and later adjusted in r157401, but the comment could have been shorter and simpler in both cases.
3069
3070         * dom/ScopedEventQueue.cpp:
3071         (WebCore::ScopedEventQueue::dispatchEvent):
3072
3073 2013-10-24  Alex Christensen  <achristensen@webkit.org>
3074
3075         Removed unused ThreadSafeCoordinatedSurface and CertificateInfoCurl files.
3076         https://bugs.webkit.org/show_bug.cgi?id=123246
3077
3078         Reviewed by Noam Rosenthal.
3079
3080         * WebCore.vcxproj/WebCore.vcxproj:
3081         * WebCore.vcxproj/WebCore.vcxproj.filters:
3082         Removed references to ThreadSafeCoordinatedSurface and CertificateInfoCurl.
3083         * platform/graphics/texmap/coordinated/ThreadSafeCoordinatedSurface.cpp: Removed.
3084         * platform/graphics/texmap/coordinated/ThreadSafeCoordinatedSurface.h: Removed.
3085         * platform/network/curl/CertificateInfoCurl.cpp: Removed.
3086
3087 2013-10-24  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
3088
3089         Removed Qt workaround.
3090         https://bugs.webkit.org/show_bug.cgi?id=123258
3091
3092         Reviewed by Csaba Osztrogon√°c.
3093
3094         No change of functionality, no new tests needed.
3095
3096         !$defines case can be removed, because Qt and Android aren't in WebKit trunk,
3097         all ports (Mac,EFL,GTK,Windows) call this script with --defines option now
3098
3099         * css/make-css-file-arrays.pl:
3100
3101 2013-10-24  Antti Koivisto  <antti@apple.com>
3102
3103         Remove a stray space.
3104         
3105         Not reviewed.
3106
3107         * accessibility/AccessibilityRenderObject.cpp:
3108         (WebCore::AccessibilityRenderObject::addImageMapChildren):
3109
3110 2013-10-24  Antti Koivisto  <antti@apple.com>
3111
3112         Element iterator functions should take reference
3113         https://bugs.webkit.org/show_bug.cgi?id=123267
3114
3115         Reviewed by Andreas Kling.
3116
3117         The argument has to be non-null.
3118
3119 2013-10-24  Ryuan Choi  <ryuan.choi@samsung.com>
3120
3121         [EFL] Build break with latest EFL 1.8 libraries.
3122         https://bugs.webkit.org/show_bug.cgi?id=123245
3123
3124         Reviewed by Gyuyoung Kim.
3125
3126         After fixed build break on EFL 1.8 at r138326, EFL libraries are changed
3127         Eo typedef and splitted header files which contain version macro.
3128
3129         * platform/Widget.h: Changed Eo typedef.
3130         * platform/efl/EflScreenUtilities.h: Ditto.
3131         * platform/graphics/Image.h: Ditto.
3132
3133 2013-10-24  Andreas Kling  <akling@apple.com>
3134
3135         RenderSVGResource: Pass RenderElement to fill/strokePaintingResource.
3136         <https://webkit.org/b/123242>
3137
3138         We never pass text renderers to these functions, so make them take
3139         RenderElement instead.
3140
3141         Reviewed by Anders Carlsson.
3142
3143 2013-10-24  Carlos Garcia Campos  <cgarcia@igalia.com>
3144
3145         [GObject bindings] Make EventTarget interface introspectable
3146         https://bugs.webkit.org/show_bug.cgi?id=77835
3147
3148         Reviewed by Gustavo Noronha Silva.
3149
3150         Add webkit_dom_event_target_add_event_listener_with_closure and
3151         webkit_dom_event_target_remove_event_listener_with_closure to be
3152         used by GObject instrospection bindings. Instead of receving a
3153         GCallback, which makes the function not introspectable, they
3154         receive a GClosure.
3155
3156         * bindings/gobject/GObjectEventListener.cpp:
3157         (WebCore::GObjectEventListener::GObjectEventListener):
3158         (WebCore::GObjectEventListener::~GObjectEventListener):
3159         (WebCore::GObjectEventListener::gobjectDestroyed):
3160         (WebCore::GObjectEventListener::handleEvent):
3161         (WebCore::GObjectEventListener::operator==):
3162         * bindings/gobject/GObjectEventListener.h:
3163         (WebCore::GObjectEventListener::addEventListener):
3164         (WebCore::GObjectEventListener::removeEventListener):
3165         * bindings/gobject/WebKitDOMEventTarget.cpp:
3166         (webkit_dom_event_target_dispatch_event):
3167         (webkit_dom_event_target_add_event_listener):
3168         (webkit_dom_event_target_remove_event_listener):
3169         (webkit_dom_event_target_add_event_listener_with_closure):
3170         (webkit_dom_event_target_remove_event_listener_with_closure):
3171         * bindings/gobject/WebKitDOMEventTarget.h:
3172         * bindings/scripts/CodeGeneratorGObject.pm:
3173         (GenerateEventTargetIface):
3174         * bindings/scripts/test/GObject/WebKitDOMTestEventTarget.cpp:
3175         (webkit_dom_test_event_target_dispatch_event):
3176         (webkit_dom_test_event_target_add_event_listener):
3177         (webkit_dom_test_event_target_remove_event_listener):
3178         * bindings/scripts/test/GObject/WebKitDOMTestNode.cpp:
3179         (webkit_dom_test_node_dispatch_event):
3180         (webkit_dom_test_node_add_event_listener):
3181         (webkit_dom_test_node_remove_event_listener):
3182
3183 2013-10-14  Sergio Villar Senin  <svillar@igalia.com>
3184
3185         Use a Vector instead of HashSet to computed the orderValues in RenderFlexibleBox
3186         https://bugs.webkit.org/show_bug.cgi?id=118620
3187
3188         Reviewed by Antti Koivisto.
3189
3190         Turns out that order is extremelly uncommon so using a Vector is
3191         much less expensive. This also special-cases the much common case
3192         of only having order of value 0 by using Vectors with just one
3193         preallocated member.
3194
3195         Also added the performance test that shows a ~1% win when using a
3196         vector instead of the HashSet.
3197
3198         * rendering/RenderFlexibleBox.cpp:
3199         (WebCore::RenderFlexibleBox::OrderIterator::setOrderValues):
3200         (WebCore::RenderFlexibleBox::layoutBlock):
3201         (WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
3202         * rendering/RenderFlexibleBox.h:
3203
3204 2013-10-23  ChangSeok Oh  <changseok.oh@collabora.com>
3205
3206         Unreviewed build fix since r157823.
3207         FilterOperation::getOperationType() is renamed FilterOperation::type().
3208
3209         * platform/graphics/texmap/TextureMapperGL.cpp:
3210         (WebCore::prepareFilterProgram):
3211         (WebCore::TextureMapperGL::drawTexture):
3212         (WebCore::TextureMapperGL::drawUsingCustomFilter):
3213         (WebCore::TextureMapperGL::drawFiltered):
3214         (WebCore::BitmapTextureGL::applyFilters):
3215         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
3216         (WebCore::CoordinatedGraphicsScene::injectCachedCustomFilterPrograms):
3217
3218 2013-10-23  Ryuan Choi  <ryuan.choi@samsung.com>
3219
3220         Unreviewed build fix on CMake based ports when CMAKE_BUILD_TYPE is not given.
3221
3222         When CMAKE_BUILD_TYPE is empty, FIND command will be failed.
3223
3224         * CMakeLists.txt:
3225
3226 2013-10-23  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3227
3228         Integrate css3-images image-orientation with existing EXIF support
3229         https://bugs.webkit.org/show_bug.cgi?id=91566
3230
3231         Reviewed by Beth Dakin.
3232
3233         Original patch by David Barr(davidbarr@chromium.org).
3234
3235         This patch passes an information of image orientation into existing EXIF support functions
3236         (draw() functions of image classes mainly). We need to let the functions to know the information
3237         in order to meet the image-orientation requirement.
3238
3239         Spec: http://dev.w3.org/csswg/css-images-3/#the-image-orientation
3240         The css3-images module specification is at last call.
3241
3242         Test: fast/css/image-orientation/image-orientation.html
3243         Image orientation test is to check if incorrect rotation value can be fixed with correct orientation.
3244
3245         * loader/cache/CachedImage.cpp:
3246         (WebCore::CachedImage::imageSizeForRenderer):
3247         * page/DragController.cpp:
3248         (WebCore::DragController::doImageDrag):
3249         * page/Frame.cpp:
3250         (WebCore::Frame::nodeImage):
3251         * platform/graphics/BitmapImage.cpp:
3252         (WebCore::BitmapImage::updateSize):
3253         (WebCore::BitmapImage::sizeRespectingOrientation):
3254         (WebCore::BitmapImage::drawPattern):
3255         * platform/graphics/BitmapImage.h:
3256         * platform/graphics/CrossfadeGeneratedImage.cpp:
3257         (WebCore::CrossfadeGeneratedImage::draw):
3258         * platform/graphics/CrossfadeGeneratedImage.h:
3259         * platform/graphics/GeneratedImage.h:
3260         * platform/graphics/GradientImage.cpp:
3261         (WebCore::GradientImage::draw):
3262         * platform/graphics/GradientImage.h:
3263         * platform/graphics/Image.cpp:
3264         (WebCore::Image::draw):
3265         (WebCore::Image::drawTiled):
3266         * platform/graphics/Image.h:
3267         * platform/graphics/blackberry/ImageBlackBerry.cpp:
3268         * platform/graphics/cairo/BitmapImageCairo.cpp:
3269         (WebCore::BitmapImage::draw):
3270         * platform/graphics/cg/BitmapImageCG.cpp:
3271         * platform/graphics/cg/PDFDocumentImage.cpp:
3272         (WebCore::PDFDocumentImage::draw):
3273         * platform/graphics/cg/PDFDocumentImage.h:
3274         * platform/graphics/win/ImageCGWin.cpp:
3275         (WebCore::BitmapImage::getHBITMAPOfSize):
3276         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
3277         * platform/graphics/wince/ImageBufferWinCE.cpp:
3278         (WebCore::BufferedImage::draw):
3279         * platform/graphics/wince/ImageWinCE.cpp:
3280         (WebCore::BitmapImage::draw):
3281         * platform/mac/DragImageMac.mm:
3282         (WebCore::createDragImageFromImage):
3283         * rendering/RenderEmbeddedObject.cpp:
3284         (WebCore::RenderEmbeddedObject::paintSnapshotImage):
3285         * rendering/RenderImage.cpp:
3286         (WebCore::RenderImage::styleDidChange):
3287         * rendering/RenderSnapshottedPlugIn.cpp:
3288         (WebCore::RenderSnapshottedPlugIn::paintSnapshot):
3289         * rendering/style/RenderStyle.cpp:
3290         (WebCore::RenderStyle::changeRequiresLayout):
3291         * svg/graphics/SVGImage.cpp:
3292         (WebCore::SVGImage::drawForContainer):
3293         (WebCore::SVGImage::nativeImageForCurrentFrame):
3294         (WebCore::SVGImage::draw):
3295         * svg/graphics/SVGImage.h:
3296         * svg/graphics/SVGImageForContainer.cpp:
3297         (WebCore::SVGImageForContainer::draw):
3298         * svg/graphics/SVGImageForContainer.h:
3299
3300 2013-10-23  Andreas Kling  <akling@apple.com>
3301
3302         Tighten typing in SVGInlineTextBox a bit.
3303         <https://webkit.org/b/123238>
3304
3305         Use RenderBoxModelObject& instead of generic RenderObject* in some
3306         places where it happens as a natural consequence of keeping the
3307         original return type from InlineBox::parent()->renderer().
3308
3309         Reviewed by Anders Carlsson.
3310
3311 2013-10-23  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3312
3313         Introduce RENDER_OBJECT_TYPE_CASTS to replace manual toFoo() in child render object
3314         https://bugs.webkit.org/show_bug.cgi?id=123150
3315
3316         Reviewed by Andreas Kling.
3317
3318         As a step to let toFoo use TYPE_CASTS_BASE, toRenderFoo() can use it for child render object.
3319         So, this patch introduces RENDER_OBJECT_TYPE_CASTS based on the TYPE_CASTS_BASE. This will
3320         generate plenty more helper functions for render object type cast.
3321
3322         Some unnecessary type casts are fixed by this change.
3323
3324         No new tests, no behavior changes.
3325
3326         * rendering/RenderBlock.h:
3327         * rendering/RenderBlockFlow.h:
3328         * rendering/RenderBox.h:
3329         * rendering/RenderBoxModelObject.h:
3330         * rendering/RenderButton.h:
3331         * rendering/RenderCounter.h:
3332         * rendering/RenderElement.h:
3333         (WebCore::RenderElement::generatingElement):
3334         * rendering/RenderEmbeddedObject.h:
3335         * rendering/RenderFieldset.h:
3336         * rendering/RenderFileUploadControl.h:
3337         * rendering/RenderFlexibleBox.h:
3338         * rendering/RenderFlowThread.h:
3339         * rendering/RenderFrame.h:
3340         * rendering/RenderFrameSet.h:
3341         * rendering/RenderFullScreen.h:
3342         * rendering/RenderHTMLCanvas.h:
3343         * rendering/RenderIFrame.h:
3344         * rendering/RenderImage.h:
3345         * rendering/RenderInline.h:
3346         * rendering/RenderLayerModelObject.h:
3347         * rendering/RenderLineBreak.h:
3348         * rendering/RenderListBox.h:
3349         * rendering/RenderListItem.h:
3350         * rendering/RenderMedia.h:
3351         * rendering/RenderMenuList.h:
3352         * rendering/RenderMeter.h:
3353         * rendering/RenderMultiColumnBlock.h:
3354         * rendering/RenderMultiColumnSet.h:
3355         * rendering/RenderNamedFlowFragment.h:
3356         * rendering/RenderNamedFlowThread.h:
3357         * rendering/RenderObject.h:
3358         * rendering/RenderProgress.h:
3359         * rendering/RenderQuote.h:
3360         * rendering/RenderRegion.h:
3361         * rendering/RenderReplaced.h:
3362         * rendering/RenderRubyRun.h:
3363         * rendering/RenderScrollbarPart.h:
3364         * rendering/RenderSearchField.h:
3365         * rendering/RenderSlider.h:
3366         * rendering/RenderSnapshottedPlugIn.h:
3367         * rendering/RenderTable.h:
3368         * rendering/RenderTableCaption.h:
3369         * rendering/RenderTableCell.h:
3370         * rendering/RenderTableCol.h:
3371         * rendering/RenderTableRow.h:
3372         * rendering/RenderTableSection.h:
3373         * rendering/RenderText.h:
3374         * rendering/RenderTextControl.h:
3375         * rendering/RenderTextControlMultiLine.h:
3376         * rendering/RenderTextControlSingleLine.h:
3377         * rendering/RenderWidget.h:
3378         * rendering/mathml/RenderMathMLBlock.h:
3379         * rendering/svg/RenderSVGContainer.h:
3380         * rendering/svg/RenderSVGGradientStop.h:
3381         * rendering/svg/RenderSVGImage.h:
3382         * rendering/svg/RenderSVGInlineText.h:
3383         * rendering/svg/RenderSVGPath.h:
3384         * rendering/svg/RenderSVGResourceFilter.h:
3385         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
3386         (WebCore::RenderSVGResourceFilterPrimitive::styleDidChange):
3387         * rendering/svg/RenderSVGRoot.h:
3388         * rendering/svg/RenderSVGShape.h:
3389         * rendering/svg/RenderSVGText.h:
3390         * rendering/svg/RenderSVGTextPath.h:
3391         * rendering/svg/RenderSVGViewportContainer.h:
3392         * rendering/svg/SVGInlineFlowBox.cpp:
3393         (WebCore::SVGInlineFlowBox::paint):
3394
3395 2013-10-23  Myles C. Maxfield  <mmaxfield@apple.com>
3396
3397         Include misspelling dot gap width when centering misspelling dots
3398         https://bugs.webkit.org/show_bug.cgi?id=122365
3399
3400         Reviewed by Simon Fraser.
3401
3402         When calculating where to place the misspelling dots, we find the
3403         maximum number of full dots that can fit under the misspelled word,
3404         and then center a run of that many dots. However, when we're
3405         centering the run, we are only considering the size of the extra
3406         fractional dot that we cut off. However, the dot image has a "gap"
3407         of transparent pixels (which visually provide tracking for the dots)
3408         which visually appears to be empty space. We should take this gap
3409         space into consideration when centering the run of dots. We also
3410         should make sure that our dots start on integral pixel boundaries
3411         because otherwise we can't set the phase of the dot run properly.
3412
3413         Test: editing/spelling/centering-misspelling-dots.html
3414
3415         * platform/graphics/mac/GraphicsContextMac.mm:
3416         (WebCore::GraphicsContext::drawLineForDocumentMarker):
3417
3418 2013-10-23  Andreas Kling  <akling@apple.com>
3419
3420         SVGFilterBuilder should not be ref-counted.
3421         <https://webkit.org/b/123222>
3422
3423         These objects are singly-owned and do not need ref counting.
3424
3425         Reviewed by Anders Carlsson.
3426
3427 2013-10-23  Brady Eidson  <beidson@apple.com>
3428
3429         Remove unused IDBBackingStoreLevelDB default constructor.
3430
3431         Rubberstamped by Anders Carlsson.
3432
3433         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
3434         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
3435
3436 2013-10-23  Alex Christensen  <achristensen@webkit.org>
3437
3438         Added Texture Mapper and Coordinated Graphics to Windows build for WinCairo.
3439         https://bugs.webkit.org/show_bug.cgi?id=123215
3440
3441         Reviewed by Brent Fulgham.
3442
3443         * WebCore.vcxproj/WebCore.vcxproj:
3444         * WebCore.vcxproj/WebCore.vcxproj.filters:
3445         Added source files for Texture Mapper to Windows build.
3446         * WebCore.vcxproj/WebCoreCairo.props:
3447         Added Texture Mapper include directories for WinCairo.
3448
3449 2013-10-23  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3450
3451         Adding mock class to test RTCDataChannelHandler
3452         https://bugs.webkit.org/show_bug.cgi?id=123205
3453
3454         Reviewed by Eric Carlson.
3455
3456         Now RTCPeerConnectionHandler-datachannel LayouTest can run properly.
3457         Also updated the expected file, removing the reliable property check (which was removed in the spec)
3458
3459         Existing tests updated.
3460
3461         * CMakeLists.txt:
3462         * platform/mediastream/RTCDataChannelHandlerClient.h:
3463         * platform/mock/RTCDataChannelHandlerMock.cpp: Added.
3464         * platform/mock/RTCDataChannelHandlerMock.h: Added.
3465         * platform/mock/RTCNotifiersMock.cpp:
3466         (WebCore::RemoteDataChannelNotifier::RemoteDataChannelNotifier):
3467         (WebCore::RemoteDataChannelNotifier::fire):
3468         (WebCore::DataChannelStateNotifier::DataChannelStateNotifier):
3469         (WebCore::DataChannelStateNotifier::fire):
3470         * platform/mock/RTCNotifiersMock.h:
3471         * platform/mock/RTCPeerConnectionHandlerMock.cpp:
3472         (WebCore::RTCPeerConnectionHandlerMock::createDataChannel):
3473
3474 2013-10-23  Andreas Kling  <akling@apple.com>
3475
3476         Clock should not be ref-counted.
3477         <https://webkit.org/b/123217>
3478
3479         The Clock object is only ever owned by the MediaController,
3480         so remove the ref counting and store it in a std::unique_ptr.
3481
3482         Also slapped the Clock subclasses with FINAL and OVERRIDE.
3483
3484         Reviewed by Anders Carlsson.
3485
3486 2013-10-23  Mark Lam  <mark.lam@apple.com>
3487
3488         Fix assertion in DatabaseManager::detailsForNameAndOrigin() to be iOS friendly.
3489         https://bugs.webkit.org/show_bug.cgi?id=123218.
3490
3491         Reviewed by Joseph Pecoraro.
3492
3493         No new tests.
3494
3495         * Modules/webdatabase/DatabaseManager.cpp:
3496         (WebCore::DatabaseManager::detailsForNameAndOrigin):
3497
3498 2013-10-23  Alex Christensen  <achristensen@webkit.org>
3499
3500         Separated USE(CA) from USE(ACCELERATED_COMPOSITING) to prepare WinCairo for accelerated compositing.
3501         https://bugs.webkit.org/show_bug.cgi?id=123214
3502
3503         Reviewed by Brent Fulgham.
3504
3505         * platform/graphics/PlatformLayer.h:
3506         Added TextureMapperPlatformLayer PlatformLayer declaration for WinCairo.
3507         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
3508         (WebCore::MediaPlayerPrivateFullscreenWindow::createWindow):
3509         (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc):
3510         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h:
3511         Added USE(CA) where necessary to compile WinCairo with accelerated compositing.
3512
3513 2013-10-23  Myles C. Maxfield  <mmaxfield@apple.com>
3514
3515         Antialias underlines if they're not axis-aligned
3516         https://bugs.webkit.org/show_bug.cgi?id=123004
3517
3518         Reviewed by Simon Fraser.
3519
3520         In order to make underlines crisp, GraphicsContext:drawLineForText
3521         modifies the bounds of the underline rect in order to make the rect
3522         device-pixel-aligned, and then turns off antialiasing when drawing
3523         the line. This makes sense when the underline is axis-aligned, but
3524         doesn't when the rect is rotated or skewed. Therefore, we should
3525         only opt-in to this behavior if the underline we're about to draw
3526         is axis-aligned. This requires figuring out whether or not the
3527         current transformation is axis-aligned every time
3528         GraphicsContext::drawLineForText is called, which will incur a small
3529         performance hit. However, this is justified by underlines looking
3530         much better (antialiased) when the context is rotated or skewed.
3531
3532         Tests: svg/custom/foreign-object-skew.html
3533                svg/zoom/page/zoom-foreignObject.html
3534                svg/zoom/text/zoom-foreignObject.html:
3535
3536         * platform/graphics/cg/GraphicsContextCG.cpp:
3537         (WebCore::GraphicsContext::drawLineForText):
3538
3539 2013-10-23  Mark Lam  <mark.lam@apple.com>
3540
3541         Re-instate ProposedDatabases needed by detailsForNameAndOrigin().
3542         https://bugs.webkit.org/show_bug.cgi?id=123131.
3543
3544         Reviewed by Geoffrey Garen.
3545
3546         Test: storage/websql/open-database-expand-quota.html
3547
3548         If a webpage tries to create a database that exceeds the database size
3549         quota for that security origin, the WebKit1 quota request mechanism
3550         uses detailsForNameAndOrigin() to get the requested size of the database
3551         (that the webpage is attempting to open) in order to determine whether
3552         to increase the quota or not.
3553
3554         Previously, detailsForNameAndOrigin() relies on the ProposedDatabase
3555         mechanism to provide this size information. This change re-instates the
3556         ProposedDatabase mechanism so that WebKit1 client code that relies on
3557         this behavior will continue to work.
3558
3559         * Modules/webdatabase/DatabaseManager.cpp:
3560         (WebCore::DatabaseManager::ProposedDatabase::ProposedDatabase):
3561         (WebCore::DatabaseManager::ProposedDatabase::~ProposedDatabase):
3562         (WebCore::DatabaseManager::DatabaseManager):
3563         (WebCore::DatabaseManager::openDatabaseBackend):
3564         (WebCore::DatabaseManager::fullPathForDatabase):
3565         (WebCore::DatabaseManager::detailsForNameAndOrigin):
3566         * Modules/webdatabase/DatabaseManager.h:
3567         (WebCore::DatabaseManager::ProposedDatabase::origin):
3568         (WebCore::DatabaseManager::ProposedDatabase::details):
3569
3570 2013-10-23  Tim Horton  <timothy_horton@apple.com>
3571
3572         [cg] Fix the capitalization of kCGImageSourceSkipMetaData (-> Metadata)
3573         https://bugs.webkit.org/show_bug.cgi?id=122918
3574
3575         Reviewed by Anders Carlsson.
3576
3577         * platform/graphics/cg/ImageSourceCG.cpp:
3578         (WebCore::imageSourceOptions):
3579         The capitalization of kCGImageSourceSkipMetaData changed to
3580         kCGImageSourceSkipMetadata in Mountain Lion.
3581
3582 2013-10-23  Brady Eidson  <beidson@apple.com>
3583
3584         Make IDBDatabaseBackendLevelDB.cpp be cross platform
3585         https://bugs.webkit.org/show_bug.cgi?id=123027
3586
3587         Attentively reviewed by Dean Jackson.
3588
3589         Move it out of the indexeddb/leveldb directory, and rename it to IDBDatabaseBackendImpl.
3590
3591         Project files:
3592         * CMakeLists.txt:
3593         * GNUmakefile.list.am:
3594         * WebCore.vcxproj/WebCore.vcxproj:
3595         * WebCore.vcxproj/WebCore.vcxproj.filters:
3596         * WebCore.xcodeproj/project.pbxproj:
3597
3598         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp.
3599         * Modules/indexeddb/IDBDatabaseBackendImpl.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h.
3600
3601         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
3602         (WebCore::IDBDatabaseBackendInterface::isIDBDatabaseBackendImpl): Add to support a required cast in LevelDB code.
3603
3604         * Modules/indexeddb/IDBFactoryBackendInterface.h:
3605
3606         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
3607         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
3608
3609         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
3610         (WebCore::IDBFactoryBackendLevelDB::deleteDatabase):
3611         (WebCore::IDBFactoryBackendLevelDB::open):
3612         (WebCore::IDBFactoryBackendLevelDB::maybeCreateTransactionBackend):
3613         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
3614
3615         * Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:
3616         * Modules/indexeddb/leveldb/IDBLevelDBCoding.h:
3617
3618         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
3619         (WebCore::IDBTransactionBackendLevelDB::create):
3620         (WebCore::IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB):
3621         (WebCore::IDBTransactionBackendLevelDB::scheduleVersionChangeOperation):
3622         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
3623
3624         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
3625         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
3626         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform):
3627         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:
3628
3629 2013-10-23  Daniel Bates  <dabates@apple.com>
3630
3631         [iOS] Upstream more ARMv7s bits
3632         https://bugs.webkit.org/show_bug.cgi?id=123052
3633
3634         Reviewed by Joseph Pecoraro.
3635
3636         Define exported symbol file for armv7s and arm64.
3637
3638         * Configurations/WebCore.xcconfig:
3639
3640 2013-10-23  Krzysztof Wolanski  <k.wolanski@samsung.com>
3641
3642         [GTK] accessibility/self-referencing-aria-labelledby.html is failing
3643         https://bugs.webkit.org/show_bug.cgi?id=121594
3644
3645         Reviewed by Mario Sanchez Prada.
3646
3647         According to http://www.w3.org/TR/REC-html40/struct/objects.html#edef-IMG
3648         description of image element should be determined by alt attribute, then
3649         if it is empty by title attributte.
3650
3651         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
3652         (webkitAccessibleGetDescription):
3653
3654 2013-10-15  Andreas Kling  <akling@apple.com>
3655
3656         Tighten animation-driven restyle to operate on Element only.
3657         <https://webkit.org/b/122820>
3658
3659         Text nodes are never directly animated, so we can tighten this code
3660         to work on Element only. This happens naturally since the code was
3661         already working with RenderElement everywhere.
3662
3663         Reviewed by Antti Koivisto.
3664
3665 2013-10-22  Andreas Kling  <akling@apple.com>
3666
3667         Even more PassRef<RenderStyle>!
3668         <https://webkit.org/b/123147>
3669
3670         Convert more of the WebCore code to use PassRef for RenderStyle
3671         in places where they are known to be non-null.
3672
3673         Re-landing this without region styling since that caused some
3674         assertions last time.
3675
3676         Reviewed by Antti Koivisto.
3677
3678 2013-10-22  Zoltan Horvath  <zoltan@webkit.org>
3679
3680         Refactor LineBreaker::nextSegmentBreak, add BreakingContext that holds all its state
3681         https://bugs.webkit.org/show_bug.cgi?id=123038
3682
3683         Reviewed by David Hyatt.
3684
3685         I followed Levi's logic on Blink's nextSegmentBreak refactoring (https://chromiumcodereview.appspot.com/25054004). 
3686         I mostly did the same changes, but the code is too diverged at this point to just apply that patch on our trunk. The patch
3687         introduces BreakingContext as a separate class. I added new methods for each condition, which were originally located in
3688         nextSegmentBreak. I also removed the goto-s from the code. All the new methods are inline in order to avoid introducing any
3689         performance regression. The change makes the code so much cleaner and understandable.
3690
3691         This change would be the first step of the nextSegmentBreak refactoring, I wanted to keep things in place in RenderBlockLineLayout.cpp
3692         for now, but I'm planning to separate BreakingContext into a new file and do additional changes to make things nicer. I'm tracking
3693         the entire progress under http://webkit.org/b/121261 meta bug.
3694
3695         No new tests, covered by existing tests.
3696         - I updated 1 expected result, because there was a 1 pixel difference on the result, which I believe comes from a rounding situation.
3697
3698         * rendering/RenderBlockFlow.h:
3699         * rendering/RenderBlockLineLayout.cpp:
3700         (WebCore::BreakingContext::BreakingContext):
3701         (WebCore::BreakingContext::currentObject):
3702         (WebCore::BreakingContext::lineBreak):
3703         (WebCore::BreakingContext::lineBreakRef):
3704         (WebCore::BreakingContext::lineWidth):
3705         (WebCore::BreakingContext::atEnd):
3706         (WebCore::BreakingContext::clearLineBreakIfFitsOnLine):
3707         (WebCore::BreakingContext::commitLineBreakAtCurrentWidth):
3708         (WebCore::BreakingContext::initializeForCurrentObject):
3709         (WebCore::BreakingContext::increment):
3710         (WebCore::BreakingContext::handleBR):
3711         (WebCore::BreakingContext::handleOutOfFlowPositioned):
3712         (WebCore::BreakingContext::handleFloat):
3713         (WebCore::BreakingContext::handleEmptyInline):
3714         (WebCore::BreakingContext::handleReplaced):
3715         (WebCore::nextCharacter):
3716         (WebCore::BreakingContext::handleText):
3717         (WebCore::textBeginsWithBreakablePosition):
3718         (WebCore::BreakingContext::canBreakAtThisPosition):
3719         (WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded):
3720         (WebCore::BreakingContext::handleEndOfLine):
3721         (WebCore::LineBreaker::nextSegmentBreak):
3722
3723 2013-10-22  Commit Queue  <commit-queue@webkit.org>
3724
3725         Unreviewed, rolling out r157826.
3726         http://trac.webkit.org/changeset/157826
3727         https://bugs.webkit.org/show_bug.cgi?id=123197
3728
3729         Caused some regions tests to assert (Requested by smfr on
3730         #webkit).
3731
3732         * dom/Document.cpp:
3733         (WebCore::Document::styleForElementIgnoringPendingStylesheets):
3734         * dom/Document.h:
3735         * dom/Element.cpp:
3736         (WebCore::Element::styleForRenderer):
3737         * dom/Element.h:
3738         * dom/ElementRareData.h:
3739         (WebCore::ElementRareData::setComputedStyle):
3740         (WebCore::ElementRareData::resetComputedStyle):
3741         * html/HTMLTitleElement.cpp:
3742         (WebCore::HTMLTitleElement::textWithDirection):
3743         * page/animation/AnimationController.cpp:
3744         (WebCore::AnimationController::updateAnimations):
3745         * page/animation/CompositeAnimation.cpp:
3746         (WebCore::CompositeAnimation::animate):
3747         * page/animation/CompositeAnimation.h:
3748         * rendering/RenderElement.cpp:
3749         (WebCore::RenderElement::createFor):
3750         * rendering/RenderElement.h:
3751         (WebCore::RenderElement::setStyleInternal):
3752         * rendering/RenderRegion.cpp:
3753         (WebCore::RenderRegion::setRegionObjectsRegionStyle):
3754         (WebCore::RenderRegion::restoreRegionObjectsOriginalStyle):
3755         (WebCore::RenderRegion::computeStyleInRegion):
3756         (WebCore::RenderRegion::computeChildrenStyleInRegion):
3757         (WebCore::RenderRegion::setObjectStyleInRegion):
3758         * rendering/RenderRegion.h:
3759         * style/StyleResolveTree.cpp:
3760         (WebCore::Style::resolveLocal):
3761
3762 2013-10-22  Ryuan Choi  <ryuan.choi@samsung.com>
3763
3764         [EFL] Remove HAVE_GLX macro
3765         https://bugs.webkit.org/show_bug.cgi?id=123191
3766
3767         Reviewed by Gyuyoung Kim.
3768
3769         Since r138313, HAVE(GLX) was replaced to USE(GLX) except in GraphicsSurfaceToken.h.
3770
3771         * platform/graphics/surfaces/GraphicsSurfaceToken.h:
3772         Replace HAVE(GLX) to USE(GLX)
3773
3774 2013-10-22  Mark Lam  <mark.lam@apple.com>
3775
3776         Gardening: fix broken build on Windows.
3777         https://bugs.webkit.org/show_bug.cgi?id=123174.
3778
3779         Not reviewed.
3780
3781         No new tests.
3782
3783         * WebCore.vcxproj/WebCore.vcxproj:
3784         * WebCore.vcxproj/WebCore.vcxproj.filters:
3785
3786 2013-10-22  Brady Eidson  <beidson@apple.com>
3787
3788         Get rid of IDBObjectStoreBackendLevelDB
3789         https://bugs.webkit.org/show_bug.cgi?id=123174
3790
3791         Reviewed by Tim Horton.
3792
3793         This file was kind of a dumping ground.
3794         Its contents can be merged into IDBBackingStoreInterface and a new IDBIndexWriter class.
3795
3796         Also took the opportunity to do a little bit of RefPtr<> and pointer-vs-reference cleanup.
3797
3798         * CMakeLists.txt:
3799         * GNUmakefile.list.am:
3800         * WebCore.xcodeproj/project.pbxproj:
3801
3802         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp: Removed.
3803         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h: Removed.
3804
3805         * Modules/indexeddb/IDBIndexWriter.cpp: Added.
3806         (WebCore::IDBIndexWriter::IDBIndexWriter):
3807         (WebCore::IDBIndexWriter::writeIndexKeys):
3808         (WebCore::IDBIndexWriter::verifyIndexKeys):
3809         (WebCore::IDBIndexWriter::addingKeyAllowed):
3810         * Modules/indexeddb/IDBIndexWriter.h: Added.
3811         (WebCore::IDBIndexWriter::create):
3812
3813         * Modules/indexeddb/IDBBackingStoreInterface.h:
3814         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
3815
3816         * Modules/indexeddb/IDBMetadata.h:
3817         * Modules/indexeddb/IDBTransactionBackendInterface.h:
3818
3819         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
3820         (WebCore::IDBBackingStoreLevelDB::makeIndexWriters):
3821         (WebCore::IDBBackingStoreLevelDB::generateKey):
3822         (WebCore::IDBBackingStoreLevelDB::updateKeyGenerator):
3823         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
3824
3825         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
3826         (WebCore::IDBDatabaseBackendLevelDB::setIndexKeys):
3827         (WebCore::IDBDatabaseBackendLevelDB::setIndexesReady):
3828         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h:
3829
3830         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
3831         (WebCore::IDBTransactionBackendLevelDB::schedulePutOperation):
3832         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
3833
3834         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
3835         (WebCore::PutOperation::perform):
3836         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:
3837         (WebCore::PutOperation::create):
3838         (WebCore::PutOperation::PutOperation):
3839
3840 2013-10-22  Dean Jackson  <dino@apple.com>
3841
3842         [WebGL] Implement a software rendering option on Mac
3843         https://bugs.webkit.org/show_bug.cgi?id=123177
3844
3845         Reviewed by Tim Horton.
3846
3847         Implement a way to force software OpenGL rendering
3848         for WebGL, via a Setting/Preference.
3849
3850         No new tests. We intentionally hide the capabilities of
3851         the renderer from the content, so you can't test for
3852         this setting. However, manual inspection is pretty
3853         obvious. Just go to a page with a complex shader
3854         such as https://www.shadertoy.com/view/lss3WS.
3855
3856         * html/canvas/WebGLRenderingContext.cpp:
3857         (WebCore::WebGLRenderingContext::create): If we're forcing software
3858         rendering, mark the context attributes as such.
3859         * page/Settings.in: New setting key.
3860         * platform/graphics/GraphicsContext3D.h: New flag in Attributes.
3861         (WebCore::GraphicsContext3D::Attributes::Attributes):
3862         * platform/graphics/mac/GraphicsContext3DMac.mm:
3863         (WebCore::GraphicsContext3D::GraphicsContext3D): Slight update to the
3864         algorithm that sets a pixel format. If we're forcing software rendering,
3865         obviously we never want to create an accelerated pixel format.
3866         * platform/graphics/filters/CustomFilterGlobalContext.cpp:
3867         (WebCore::CustomFilterGlobalContext::prepareContextIfNeeded): Set the attribute
3868         here before trying to create the context.
3869         * platform/graphics/filters/CustomFilterGlobalContext.h: Add a forceSoftwareRendering
3870         flag to prepareContextIfNeeded.
3871         * rendering/FilterEffectRenderer.cpp:
3872         (WebCore::createCustomFilterEffect): Check the Setting before creating a custom
3873         filter context.
3874
3875 2013-10-22  Anders Carlsson  <andersca@apple.com>
3876
3877         Revert r157445 since it broke certificates on Mac.
3878         <rdar://problem/15246926&15254017&15269117>
3879
3880         * GNUmakefile.list.am:
3881         * PlatformEfl.cmake:
3882         * WebCore.exp.in:
3883         * WebCore.vcxproj/WebCore.vcxproj:
3884         * WebCore.vcxproj/WebCore.vcxproj.filters:
3885         * WebCore.xcodeproj/project.pbxproj:
3886         * platform/network/ResourceErrorBase.h:
3887         * platform/network/ResourceResponseBase.h:
3888         * platform/network/cf/CertificateInfoCFNet.cpp: Removed.
3889         * platform/network/cf/ResourceResponse.h:
3890         * platform/network/mac/ResourceResponseMac.mm:
3891         (WebCore::ResourceResponse::setCertificateChain):
3892         (WebCore::ResourceResponse::certificateChain):
3893         * platform/network/soup/ResourceError.h:
3894         (WebCore::ResourceError::ResourceError):
3895         (WebCore::ResourceError::tlsErrors):
3896         (WebCore::ResourceError::setTLSErrors):
3897         (WebCore::ResourceError::certificate):
3898         (WebCore::ResourceError::setCertificate):
3899         * platform/network/soup/ResourceErrorSoup.cpp:
3900         (WebCore::ResourceError::tlsError):
3901         (WebCore::ResourceError::platformCopy):
3902         (WebCore::ResourceError::platformCompare):
3903         * platform/network/soup/ResourceResponse.h:
3904         (WebCore::ResourceResponse::ResourceResponse):
3905         (WebCore::ResourceResponse::soupMessageCertificate):
3906         (WebCore::ResourceResponse::setSoupMessageCertificate):
3907         (WebCore::ResourceResponse::soupMessageTLSErrors):
3908         (WebCore::ResourceResponse::setSoupMessageTLSErrors):
3909         * platform/network/soup/ResourceResponseSoup.cpp:
3910         (WebCore::ResourceResponse::toSoupMessage):
3911         (WebCore::ResourceResponse::updateFromSoupMessage):
3912
3913 2013-10-22  Jer Noble  <jer.noble@apple.com>
3914
3915         [Media] Refactor supportsType() factory method to take a parameters object.
3916         https://bugs.webkit.org/show_bug.cgi?id=122489
3917
3918         Reviewed by Eric Carlson.
3919
3920         In order to support adding new conditional properties with which to decide
3921         what MediaPlayerPrivate subclass to create, replace the two versions of the
3922         supportsType() factory method with a single one taking a parameters object.
3923
3924         At the same time, add a 'isMediaSource' parameter to that object, allowing
3925         MediaPlayerPrivate subclasses which support the same type and codecs but
3926         which do not both support MediaSource to be distinguised.
3927
3928         * platform/graphics/MediaPlayer.cpp:
3929         (WebCore::bestMediaEngineForSupportParameters): Renamed from
3930             bestMediaEngineForTypeAndCodecs.
3931         (WebCore::MediaPlayer::nextBestMediaEngine): Added convenience function.
3932         (WebCore::MediaPlayer::loadWithNextMediaEngine): Call nextBestMediaEngine()
3933         (WebCore::MediaPlayer::supportsType): Pass parameter object.
3934         (WebCore::MediaPlayer::networkStateChanged): Call nextBestMediaEngine().
3935         * platform/graphics/MediaPlayer.h:
3936         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
3937         (WebCore::MediaPlayerPrivateAVFoundationCF::supportsType): Handle parameter object.
3938         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
3939         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
3940         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3941         (WebCore::MediaPlayerPrivateAVFoundationObjC::registerMediaEngine): Remove extraneous
3942             extendedSupportsType method.
3943         (WebCore::MediaPlayerPrivateAVFoundationObjC::supportsType): Handle parameter object.
3944         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
3945         (WebCore::MediaPlayerPrivate::supportsType): Ditto.
3946         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
3947         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3948         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
3949         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
3950         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
3951         (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Remove extraneous
3952             extendedSupportsType method.
3953         (WebCore::MediaPlayerPrivateQTKit::supportsType): Handle parameter object.
3954         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
3955         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsType): Ditto.
3956         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
3957         * platform/graphics/wince/MediaPlayerPrivateWinCE.h:
3958
3959 2013-10-22  Andreas Kling  <akling@apple.com>
3960
3961         Merge SVGRenderBlock::styleWillChange() into styleDidChange().
3962         <https://webkit.org/b/123181>
3963
3964         I meant to do this one in r157787, but better late than never.
3965
3966         Reviewed by Geoffrey Garen.
3967
3968 2013-10-22  Sam Weinig  <sam@webkit.org>
3969
3970         CTTE: Modernize RenderBlock a bit
3971         https://bugs.webkit.org/show_bug.cgi?id=123162
3972
3973         Reviewed by Andreas Kling.
3974
3975         Start threading references through RenderBlock. While we 
3976         are here, do some selective modernization as well.
3977
3978 2013-10-22  Andreas Kling  <akling@apple.com>
3979
3980         Even more PassRef<RenderStyle>!
3981         <https://webkit.org/b/123147>
3982
3983         Convert the remaining WebCore code to use PassRef for RenderStyle
3984         wherever they are known to be non-null.
3985
3986         Reviewed by Antti Koivisto.
3987
3988 2013-10-22  Commit Queue  <commit-queue@webkit.org>
3989
3990         Unreviewed, rolling out r157819.
3991         http://trac.webkit.org/changeset/157819
3992         https://bugs.webkit.org/show_bug.cgi?id=123180
3993
3994         Broke 32-bit builds (Requested by smfr on #webkit).
3995
3996         * Configurations/WebCore.xcconfig:
3997
3998 2013-10-22  Antti Koivisto  <antti@apple.com>
3999
4000         Rename deleteLineBoxTree to deleteLines
4001         https://bugs.webkit.org/show_bug.cgi?id=123176
4002
4003         Reviewed by Andreas Kling.
4004
4005         RenderBlock::deleteLineBoxTree -> RenderBlock::deleteLines
4006         RenderInline::deleteLineBoxTree -> RenderInline::deleteLines
4007
4008 2013-10-22  Tim Horton  <timothy_horton@apple.com>
4009
4010         {ClipPathOperation, FilterOperation}::getOperationType() should not include 'get'
4011         https://bugs.webkit.org/show_bug.cgi?id=123172
4012
4013         Reviewed by Simon Fraser.
4014
4015         No new tests, just a rename.
4016
4017         "get" in WebCore tends to mean that the function has out arguments; these have no arguments.
4018         Rename FilterOperation::getOperationType() to FilterOperation::type().
4019         I noticed that ClipPathOperation had the same mistake, so I fixed it there too.
4020
4021         Removed long and useless list of files.
4022
4023 2013-10-22  Samuel White  <samuel_white@apple.com>
4024
4025         AX: Add paramAttrs to fetch start and end text markers in a given rect.
4026         https://bugs.webkit.org/show_bug.cgi?id=122164
4027
4028         Reviewed by Chris Fleizach.
4029
4030         Added ability to fetch end and start text markers inside a given bounds. This gives ScreenReaders
4031         like VoiceOver a way to retrieve the text markers for a specified column of page text.
4032
4033         Test: platform/mac/accessibility/text-marker-for-bounds.html
4034
4035         * accessibility/AccessibilityObject.cpp:
4036         (WebCore::AccessibilityObject::mainFrame):
4037         (WebCore::AccessibilityObject::topDocument):
4038         (WebCore::AccessibilityObject::visiblePositionForBounds):
4039         * accessibility/AccessibilityObject.h:
4040         * accessibility/AccessibilityRenderObject.cpp:
4041         * accessibility/AccessibilityRenderObject.h:
4042         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
4043         (-[WebAccessibilityObjectWrapper screenToContents:]):
4044         (-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
4045         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
4046
4047 2013-10-22  Zoltan Horvath  <zoltan@webkit.org>
4048
4049         [CSS Shapes] Match adjustLogicalLineTopAndLogicalHeightIfNeeded's implementation with Blink's
4050         https://bugs.webkit.org/show_bug.cgi?id=123033
4051
4052         Reviewed by David Hyatt.
4053
4054         In Blink I made this function in a bit different way. This change modifies it
4055         to be identical, which helps a lot in the future