4b35f19245bd8727e62cbf156d3c6b9b234c332c
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-10-23  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2
3         Integrate css3-images image-orientation with existing EXIF support
4         https://bugs.webkit.org/show_bug.cgi?id=91566
5
6         Reviewed by Beth Dakin.
7
8         Original patch by David Barr(davidbarr@chromium.org).
9
10         This patch passes an information of image orientation into existing EXIF support functions
11         (draw() functions of image classes mainly). We need to let the functions to know the information
12         in order to meet the image-orientation requirement.
13
14         Spec: http://dev.w3.org/csswg/css-images-3/#the-image-orientation
15         The css3-images module specification is at last call.
16
17         Test: fast/css/image-orientation/image-orientation.html
18         Image orientation test is to check if incorrect rotation value can be fixed with correct orientation.
19
20         * loader/cache/CachedImage.cpp:
21         (WebCore::CachedImage::imageSizeForRenderer):
22         * page/DragController.cpp:
23         (WebCore::DragController::doImageDrag):
24         * page/Frame.cpp:
25         (WebCore::Frame::nodeImage):
26         * platform/graphics/BitmapImage.cpp:
27         (WebCore::BitmapImage::updateSize):
28         (WebCore::BitmapImage::sizeRespectingOrientation):
29         (WebCore::BitmapImage::drawPattern):
30         * platform/graphics/BitmapImage.h:
31         * platform/graphics/CrossfadeGeneratedImage.cpp:
32         (WebCore::CrossfadeGeneratedImage::draw):
33         * platform/graphics/CrossfadeGeneratedImage.h:
34         * platform/graphics/GeneratedImage.h:
35         * platform/graphics/GradientImage.cpp:
36         (WebCore::GradientImage::draw):
37         * platform/graphics/GradientImage.h:
38         * platform/graphics/Image.cpp:
39         (WebCore::Image::draw):
40         (WebCore::Image::drawTiled):
41         * platform/graphics/Image.h:
42         * platform/graphics/blackberry/ImageBlackBerry.cpp:
43         * platform/graphics/cairo/BitmapImageCairo.cpp:
44         (WebCore::BitmapImage::draw):
45         * platform/graphics/cg/BitmapImageCG.cpp:
46         * platform/graphics/cg/PDFDocumentImage.cpp:
47         (WebCore::PDFDocumentImage::draw):
48         * platform/graphics/cg/PDFDocumentImage.h:
49         * platform/graphics/win/ImageCGWin.cpp:
50         (WebCore::BitmapImage::getHBITMAPOfSize):
51         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
52         * platform/graphics/wince/ImageBufferWinCE.cpp:
53         (WebCore::BufferedImage::draw):
54         * platform/graphics/wince/ImageWinCE.cpp:
55         (WebCore::BitmapImage::draw):
56         * platform/mac/DragImageMac.mm:
57         (WebCore::createDragImageFromImage):
58         * rendering/RenderEmbeddedObject.cpp:
59         (WebCore::RenderEmbeddedObject::paintSnapshotImage):
60         * rendering/RenderImage.cpp:
61         (WebCore::RenderImage::styleDidChange):
62         * rendering/RenderSnapshottedPlugIn.cpp:
63         (WebCore::RenderSnapshottedPlugIn::paintSnapshot):
64         * rendering/style/RenderStyle.cpp:
65         (WebCore::RenderStyle::changeRequiresLayout):
66         * svg/graphics/SVGImage.cpp:
67         (WebCore::SVGImage::drawForContainer):
68         (WebCore::SVGImage::nativeImageForCurrentFrame):
69         (WebCore::SVGImage::draw):
70         * svg/graphics/SVGImage.h:
71         * svg/graphics/SVGImageForContainer.cpp:
72         (WebCore::SVGImageForContainer::draw):
73         * svg/graphics/SVGImageForContainer.h:
74
75 2013-10-23  Andreas Kling  <akling@apple.com>
76
77         Tighten typing in SVGInlineTextBox a bit.
78         <https://webkit.org/b/123238>
79
80         Use RenderBoxModelObject& instead of generic RenderObject* in some
81         places where it happens as a natural consequence of keeping the
82         original return type from InlineBox::parent()->renderer().
83
84         Reviewed by Anders Carlsson.
85
86 2013-10-23  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
87
88         Introduce RENDER_OBJECT_TYPE_CASTS to replace manual toFoo() in child render object
89         https://bugs.webkit.org/show_bug.cgi?id=123150
90
91         Reviewed by Andreas Kling.
92
93         As a step to let toFoo use TYPE_CASTS_BASE, toRenderFoo() can use it for child render object.
94         So, this patch introduces RENDER_OBJECT_TYPE_CASTS based on the TYPE_CASTS_BASE. This will
95         generate plenty more helper functions for render object type cast.
96
97         Some unnecessary type casts are fixed by this change.
98
99         No new tests, no behavior changes.
100
101         * rendering/RenderBlock.h:
102         * rendering/RenderBlockFlow.h:
103         * rendering/RenderBox.h:
104         * rendering/RenderBoxModelObject.h:
105         * rendering/RenderButton.h:
106         * rendering/RenderCounter.h:
107         * rendering/RenderElement.h:
108         (WebCore::RenderElement::generatingElement):
109         * rendering/RenderEmbeddedObject.h:
110         * rendering/RenderFieldset.h:
111         * rendering/RenderFileUploadControl.h:
112         * rendering/RenderFlexibleBox.h:
113         * rendering/RenderFlowThread.h:
114         * rendering/RenderFrame.h:
115         * rendering/RenderFrameSet.h:
116         * rendering/RenderFullScreen.h:
117         * rendering/RenderHTMLCanvas.h:
118         * rendering/RenderIFrame.h:
119         * rendering/RenderImage.h:
120         * rendering/RenderInline.h:
121         * rendering/RenderLayerModelObject.h:
122         * rendering/RenderLineBreak.h:
123         * rendering/RenderListBox.h:
124         * rendering/RenderListItem.h:
125         * rendering/RenderMedia.h:
126         * rendering/RenderMenuList.h:
127         * rendering/RenderMeter.h:
128         * rendering/RenderMultiColumnBlock.h:
129         * rendering/RenderMultiColumnSet.h:
130         * rendering/RenderNamedFlowFragment.h:
131         * rendering/RenderNamedFlowThread.h:
132         * rendering/RenderObject.h:
133         * rendering/RenderProgress.h:
134         * rendering/RenderQuote.h:
135         * rendering/RenderRegion.h:
136         * rendering/RenderReplaced.h:
137         * rendering/RenderRubyRun.h:
138         * rendering/RenderScrollbarPart.h:
139         * rendering/RenderSearchField.h:
140         * rendering/RenderSlider.h:
141         * rendering/RenderSnapshottedPlugIn.h:
142         * rendering/RenderTable.h:
143         * rendering/RenderTableCaption.h:
144         * rendering/RenderTableCell.h:
145         * rendering/RenderTableCol.h:
146         * rendering/RenderTableRow.h:
147         * rendering/RenderTableSection.h:
148         * rendering/RenderText.h:
149         * rendering/RenderTextControl.h:
150         * rendering/RenderTextControlMultiLine.h:
151         * rendering/RenderTextControlSingleLine.h:
152         * rendering/RenderWidget.h:
153         * rendering/mathml/RenderMathMLBlock.h:
154         * rendering/svg/RenderSVGContainer.h:
155         * rendering/svg/RenderSVGGradientStop.h:
156         * rendering/svg/RenderSVGImage.h:
157         * rendering/svg/RenderSVGInlineText.h:
158         * rendering/svg/RenderSVGPath.h:
159         * rendering/svg/RenderSVGResourceFilter.h:
160         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
161         (WebCore::RenderSVGResourceFilterPrimitive::styleDidChange):
162         * rendering/svg/RenderSVGRoot.h:
163         * rendering/svg/RenderSVGShape.h:
164         * rendering/svg/RenderSVGText.h:
165         * rendering/svg/RenderSVGTextPath.h:
166         * rendering/svg/RenderSVGViewportContainer.h:
167         * rendering/svg/SVGInlineFlowBox.cpp:
168         (WebCore::SVGInlineFlowBox::paint):
169
170 2013-10-23  Myles C. Maxfield  <mmaxfield@apple.com>
171
172         Include misspelling dot gap width when centering misspelling dots
173         https://bugs.webkit.org/show_bug.cgi?id=122365
174
175         Reviewed by Simon Fraser.
176
177         When calculating where to place the misspelling dots, we find the
178         maximum number of full dots that can fit under the misspelled word,
179         and then center a run of that many dots. However, when we're
180         centering the run, we are only considering the size of the extra
181         fractional dot that we cut off. However, the dot image has a "gap"
182         of transparent pixels (which visually provide tracking for the dots)
183         which visually appears to be empty space. We should take this gap
184         space into consideration when centering the run of dots. We also
185         should make sure that our dots start on integral pixel boundaries
186         because otherwise we can't set the phase of the dot run properly.
187
188         Test: editing/spelling/centering-misspelling-dots.html
189
190         * platform/graphics/mac/GraphicsContextMac.mm:
191         (WebCore::GraphicsContext::drawLineForDocumentMarker):
192
193 2013-10-23  Andreas Kling  <akling@apple.com>
194
195         SVGFilterBuilder should not be ref-counted.
196         <https://webkit.org/b/123222>
197
198         These objects are singly-owned and do not need ref counting.
199
200         Reviewed by Anders Carlsson.
201
202 2013-10-23  Brady Eidson  <beidson@apple.com>
203
204         Remove unused IDBBackingStoreLevelDB default constructor.
205
206         Rubberstamped by Anders Carlsson.
207
208         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
209         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
210
211 2013-10-23  Alex Christensen  <achristensen@webkit.org>
212
213         Added Texture Mapper and Coordinated Graphics to Windows build for WinCairo.
214         https://bugs.webkit.org/show_bug.cgi?id=123215
215
216         Reviewed by Brent Fulgham.
217
218         * WebCore.vcxproj/WebCore.vcxproj:
219         * WebCore.vcxproj/WebCore.vcxproj.filters:
220         Added source files for Texture Mapper to Windows build.
221         * WebCore.vcxproj/WebCoreCairo.props:
222         Added Texture Mapper include directories for WinCairo.
223
224 2013-10-23  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
225
226         Adding mock class to test RTCDataChannelHandler
227         https://bugs.webkit.org/show_bug.cgi?id=123205
228
229         Reviewed by Eric Carlson.
230
231         Now RTCPeerConnectionHandler-datachannel LayouTest can run properly.
232         Also updated the expected file, removing the reliable property check (which was removed in the spec)
233
234         Existing tests updated.
235
236         * CMakeLists.txt:
237         * platform/mediastream/RTCDataChannelHandlerClient.h:
238         * platform/mock/RTCDataChannelHandlerMock.cpp: Added.
239         * platform/mock/RTCDataChannelHandlerMock.h: Added.
240         * platform/mock/RTCNotifiersMock.cpp:
241         (WebCore::RemoteDataChannelNotifier::RemoteDataChannelNotifier):
242         (WebCore::RemoteDataChannelNotifier::fire):
243         (WebCore::DataChannelStateNotifier::DataChannelStateNotifier):
244         (WebCore::DataChannelStateNotifier::fire):
245         * platform/mock/RTCNotifiersMock.h:
246         * platform/mock/RTCPeerConnectionHandlerMock.cpp:
247         (WebCore::RTCPeerConnectionHandlerMock::createDataChannel):
248
249 2013-10-23  Andreas Kling  <akling@apple.com>
250
251         Clock should not be ref-counted.
252         <https://webkit.org/b/123217>
253
254         The Clock object is only ever owned by the MediaController,
255         so remove the ref counting and store it in a std::unique_ptr.
256
257         Also slapped the Clock subclasses with FINAL and OVERRIDE.
258
259         Reviewed by Anders Carlsson.
260
261 2013-10-23  Mark Lam  <mark.lam@apple.com>
262
263         Fix assertion in DatabaseManager::detailsForNameAndOrigin() to be iOS friendly.
264         https://bugs.webkit.org/show_bug.cgi?id=123218.
265
266         Reviewed by Joseph Pecoraro.
267
268         No new tests.
269
270         * Modules/webdatabase/DatabaseManager.cpp:
271         (WebCore::DatabaseManager::detailsForNameAndOrigin):
272
273 2013-10-23  Alex Christensen  <achristensen@webkit.org>
274
275         Separated USE(CA) from USE(ACCELERATED_COMPOSITING) to prepare WinCairo for accelerated compositing.
276         https://bugs.webkit.org/show_bug.cgi?id=123214
277
278         Reviewed by Brent Fulgham.
279
280         * platform/graphics/PlatformLayer.h:
281         Added TextureMapperPlatformLayer PlatformLayer declaration for WinCairo.
282         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
283         (WebCore::MediaPlayerPrivateFullscreenWindow::createWindow):
284         (WebCore::MediaPlayerPrivateFullscreenWindow::wndProc):
285         * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h:
286         Added USE(CA) where necessary to compile WinCairo with accelerated compositing.
287
288 2013-10-23  Myles C. Maxfield  <mmaxfield@apple.com>
289
290         Antialias underlines if they're not axis-aligned
291         https://bugs.webkit.org/show_bug.cgi?id=123004
292
293         Reviewed by Simon Fraser.
294
295         In order to make underlines crisp, GraphicsContext:drawLineForText
296         modifies the bounds of the underline rect in order to make the rect
297         device-pixel-aligned, and then turns off antialiasing when drawing
298         the line. This makes sense when the underline is axis-aligned, but
299         doesn't when the rect is rotated or skewed. Therefore, we should
300         only opt-in to this behavior if the underline we're about to draw
301         is axis-aligned. This requires figuring out whether or not the
302         current transformation is axis-aligned every time
303         GraphicsContext::drawLineForText is called, which will incur a small
304         performance hit. However, this is justified by underlines looking
305         much better (antialiased) when the context is rotated or skewed.
306
307         Tests: svg/custom/foreign-object-skew.html
308                svg/zoom/page/zoom-foreignObject.html
309                svg/zoom/text/zoom-foreignObject.html:
310
311         * platform/graphics/cg/GraphicsContextCG.cpp:
312         (WebCore::GraphicsContext::drawLineForText):
313
314 2013-10-23  Mark Lam  <mark.lam@apple.com>
315
316         Re-instate ProposedDatabases needed by detailsForNameAndOrigin().
317         https://bugs.webkit.org/show_bug.cgi?id=123131.
318
319         Reviewed by Geoffrey Garen.
320
321         Test: storage/websql/open-database-expand-quota.html
322
323         If a webpage tries to create a database that exceeds the database size
324         quota for that security origin, the WebKit1 quota request mechanism
325         uses detailsForNameAndOrigin() to get the requested size of the database
326         (that the webpage is attempting to open) in order to determine whether
327         to increase the quota or not.
328
329         Previously, detailsForNameAndOrigin() relies on the ProposedDatabase
330         mechanism to provide this size information. This change re-instates the
331         ProposedDatabase mechanism so that WebKit1 client code that relies on
332         this behavior will continue to work.
333
334         * Modules/webdatabase/DatabaseManager.cpp:
335         (WebCore::DatabaseManager::ProposedDatabase::ProposedDatabase):
336         (WebCore::DatabaseManager::ProposedDatabase::~ProposedDatabase):
337         (WebCore::DatabaseManager::DatabaseManager):
338         (WebCore::DatabaseManager::openDatabaseBackend):
339         (WebCore::DatabaseManager::fullPathForDatabase):
340         (WebCore::DatabaseManager::detailsForNameAndOrigin):
341         * Modules/webdatabase/DatabaseManager.h:
342         (WebCore::DatabaseManager::ProposedDatabase::origin):
343         (WebCore::DatabaseManager::ProposedDatabase::details):
344
345 2013-10-23  Tim Horton  <timothy_horton@apple.com>
346
347         [cg] Fix the capitalization of kCGImageSourceSkipMetaData (-> Metadata)
348         https://bugs.webkit.org/show_bug.cgi?id=122918
349
350         Reviewed by Anders Carlsson.
351
352         * platform/graphics/cg/ImageSourceCG.cpp:
353         (WebCore::imageSourceOptions):
354         The capitalization of kCGImageSourceSkipMetaData changed to
355         kCGImageSourceSkipMetadata in Mountain Lion.
356
357 2013-10-23  Brady Eidson  <beidson@apple.com>
358
359         Make IDBDatabaseBackendLevelDB.cpp be cross platform
360         https://bugs.webkit.org/show_bug.cgi?id=123027
361
362         Attentively reviewed by Dean Jackson.
363
364         Move it out of the indexeddb/leveldb directory, and rename it to IDBDatabaseBackendImpl.
365
366         Project files:
367         * CMakeLists.txt:
368         * GNUmakefile.list.am:
369         * WebCore.vcxproj/WebCore.vcxproj:
370         * WebCore.vcxproj/WebCore.vcxproj.filters:
371         * WebCore.xcodeproj/project.pbxproj:
372
373         * Modules/indexeddb/IDBDatabaseBackendImpl.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp.
374         * Modules/indexeddb/IDBDatabaseBackendImpl.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h.
375
376         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
377         (WebCore::IDBDatabaseBackendInterface::isIDBDatabaseBackendImpl): Add to support a required cast in LevelDB code.
378
379         * Modules/indexeddb/IDBFactoryBackendInterface.h:
380
381         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
382         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
383
384         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
385         (WebCore::IDBFactoryBackendLevelDB::deleteDatabase):
386         (WebCore::IDBFactoryBackendLevelDB::open):
387         (WebCore::IDBFactoryBackendLevelDB::maybeCreateTransactionBackend):
388         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
389
390         * Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:
391         * Modules/indexeddb/leveldb/IDBLevelDBCoding.h:
392
393         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
394         (WebCore::IDBTransactionBackendLevelDB::create):
395         (WebCore::IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB):
396         (WebCore::IDBTransactionBackendLevelDB::scheduleVersionChangeOperation):
397         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
398
399         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
400         (WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
401         (WebCore::IDBDatabaseBackendImpl::VersionChangeAbortOperation::perform):
402         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:
403
404 2013-10-23  Daniel Bates  <dabates@apple.com>
405
406         [iOS] Upstream more ARMv7s bits
407         https://bugs.webkit.org/show_bug.cgi?id=123052
408
409         Reviewed by Joseph Pecoraro.
410
411         Define exported symbol file for armv7s and arm64.
412
413         * Configurations/WebCore.xcconfig:
414
415 2013-10-23  Krzysztof Wolanski  <k.wolanski@samsung.com>
416
417         [GTK] accessibility/self-referencing-aria-labelledby.html is failing
418         https://bugs.webkit.org/show_bug.cgi?id=121594
419
420         Reviewed by Mario Sanchez Prada.
421
422         According to http://www.w3.org/TR/REC-html40/struct/objects.html#edef-IMG
423         description of image element should be determined by alt attribute, then
424         if it is empty by title attributte.
425
426         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
427         (webkitAccessibleGetDescription):
428
429 2013-10-15  Andreas Kling  <akling@apple.com>
430
431         Tighten animation-driven restyle to operate on Element only.
432         <https://webkit.org/b/122820>
433
434         Text nodes are never directly animated, so we can tighten this code
435         to work on Element only. This happens naturally since the code was
436         already working with RenderElement everywhere.
437
438         Reviewed by Antti Koivisto.
439
440 2013-10-22  Andreas Kling  <akling@apple.com>
441
442         Even more PassRef<RenderStyle>!
443         <https://webkit.org/b/123147>
444
445         Convert more of the WebCore code to use PassRef for RenderStyle
446         in places where they are known to be non-null.
447
448         Re-landing this without region styling since that caused some
449         assertions last time.
450
451         Reviewed by Antti Koivisto.
452
453 2013-10-22  Zoltan Horvath  <zoltan@webkit.org>
454
455         Refactor LineBreaker::nextSegmentBreak, add BreakingContext that holds all its state
456         https://bugs.webkit.org/show_bug.cgi?id=123038
457
458         Reviewed by David Hyatt.
459
460         I followed Levi's logic on Blink's nextSegmentBreak refactoring (https://chromiumcodereview.appspot.com/25054004). 
461         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
462         introduces BreakingContext as a separate class. I added new methods for each condition, which were originally located in
463         nextSegmentBreak. I also removed the goto-s from the code. All the new methods are inline in order to avoid introducing any
464         performance regression. The change makes the code so much cleaner and understandable.
465
466         This change would be the first step of the nextSegmentBreak refactoring, I wanted to keep things in place in RenderBlockLineLayout.cpp
467         for now, but I'm planning to separate BreakingContext into a new file and do additional changes to make things nicer. I'm tracking
468         the entire progress under http://webkit.org/b/121261 meta bug.
469
470         No new tests, covered by existing tests.
471         - I updated 1 expected result, because there was a 1 pixel difference on the result, which I believe comes from a rounding situation.
472
473         * rendering/RenderBlockFlow.h:
474         * rendering/RenderBlockLineLayout.cpp:
475         (WebCore::BreakingContext::BreakingContext):
476         (WebCore::BreakingContext::currentObject):
477         (WebCore::BreakingContext::lineBreak):
478         (WebCore::BreakingContext::lineBreakRef):
479         (WebCore::BreakingContext::lineWidth):
480         (WebCore::BreakingContext::atEnd):
481         (WebCore::BreakingContext::clearLineBreakIfFitsOnLine):
482         (WebCore::BreakingContext::commitLineBreakAtCurrentWidth):
483         (WebCore::BreakingContext::initializeForCurrentObject):
484         (WebCore::BreakingContext::increment):
485         (WebCore::BreakingContext::handleBR):
486         (WebCore::BreakingContext::handleOutOfFlowPositioned):
487         (WebCore::BreakingContext::handleFloat):
488         (WebCore::BreakingContext::handleEmptyInline):
489         (WebCore::BreakingContext::handleReplaced):
490         (WebCore::nextCharacter):
491         (WebCore::BreakingContext::handleText):
492         (WebCore::textBeginsWithBreakablePosition):
493         (WebCore::BreakingContext::canBreakAtThisPosition):
494         (WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded):
495         (WebCore::BreakingContext::handleEndOfLine):
496         (WebCore::LineBreaker::nextSegmentBreak):
497
498 2013-10-22  Commit Queue  <commit-queue@webkit.org>
499
500         Unreviewed, rolling out r157826.
501         http://trac.webkit.org/changeset/157826
502         https://bugs.webkit.org/show_bug.cgi?id=123197
503
504         Caused some regions tests to assert (Requested by smfr on
505         #webkit).
506
507         * dom/Document.cpp:
508         (WebCore::Document::styleForElementIgnoringPendingStylesheets):
509         * dom/Document.h:
510         * dom/Element.cpp:
511         (WebCore::Element::styleForRenderer):
512         * dom/Element.h:
513         * dom/ElementRareData.h:
514         (WebCore::ElementRareData::setComputedStyle):
515         (WebCore::ElementRareData::resetComputedStyle):
516         * html/HTMLTitleElement.cpp:
517         (WebCore::HTMLTitleElement::textWithDirection):
518         * page/animation/AnimationController.cpp:
519         (WebCore::AnimationController::updateAnimations):
520         * page/animation/CompositeAnimation.cpp:
521         (WebCore::CompositeAnimation::animate):
522         * page/animation/CompositeAnimation.h:
523         * rendering/RenderElement.cpp:
524         (WebCore::RenderElement::createFor):
525         * rendering/RenderElement.h:
526         (WebCore::RenderElement::setStyleInternal):
527         * rendering/RenderRegion.cpp:
528         (WebCore::RenderRegion::setRegionObjectsRegionStyle):
529         (WebCore::RenderRegion::restoreRegionObjectsOriginalStyle):
530         (WebCore::RenderRegion::computeStyleInRegion):
531         (WebCore::RenderRegion::computeChildrenStyleInRegion):
532         (WebCore::RenderRegion::setObjectStyleInRegion):
533         * rendering/RenderRegion.h:
534         * style/StyleResolveTree.cpp:
535         (WebCore::Style::resolveLocal):
536
537 2013-10-22  Ryuan Choi  <ryuan.choi@samsung.com>
538
539         [EFL] Remove HAVE_GLX macro
540         https://bugs.webkit.org/show_bug.cgi?id=123191
541
542         Reviewed by Gyuyoung Kim.
543
544         Since r138313, HAVE(GLX) was replaced to USE(GLX) except in GraphicsSurfaceToken.h.
545
546         * platform/graphics/surfaces/GraphicsSurfaceToken.h:
547         Replace HAVE(GLX) to USE(GLX)
548
549 2013-10-22  Mark Lam  <mark.lam@apple.com>
550
551         Gardening: fix broken build on Windows.
552         https://bugs.webkit.org/show_bug.cgi?id=123174.
553
554         Not reviewed.
555
556         No new tests.
557
558         * WebCore.vcxproj/WebCore.vcxproj:
559         * WebCore.vcxproj/WebCore.vcxproj.filters:
560
561 2013-10-22  Brady Eidson  <beidson@apple.com>
562
563         Get rid of IDBObjectStoreBackendLevelDB
564         https://bugs.webkit.org/show_bug.cgi?id=123174
565
566         Reviewed by Tim Horton.
567
568         This file was kind of a dumping ground.
569         Its contents can be merged into IDBBackingStoreInterface and a new IDBIndexWriter class.
570
571         Also took the opportunity to do a little bit of RefPtr<> and pointer-vs-reference cleanup.
572
573         * CMakeLists.txt:
574         * GNUmakefile.list.am:
575         * WebCore.xcodeproj/project.pbxproj:
576
577         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp: Removed.
578         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h: Removed.
579
580         * Modules/indexeddb/IDBIndexWriter.cpp: Added.
581         (WebCore::IDBIndexWriter::IDBIndexWriter):
582         (WebCore::IDBIndexWriter::writeIndexKeys):
583         (WebCore::IDBIndexWriter::verifyIndexKeys):
584         (WebCore::IDBIndexWriter::addingKeyAllowed):
585         * Modules/indexeddb/IDBIndexWriter.h: Added.
586         (WebCore::IDBIndexWriter::create):
587
588         * Modules/indexeddb/IDBBackingStoreInterface.h:
589         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
590
591         * Modules/indexeddb/IDBMetadata.h:
592         * Modules/indexeddb/IDBTransactionBackendInterface.h:
593
594         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
595         (WebCore::IDBBackingStoreLevelDB::makeIndexWriters):
596         (WebCore::IDBBackingStoreLevelDB::generateKey):
597         (WebCore::IDBBackingStoreLevelDB::updateKeyGenerator):
598         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
599
600         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
601         (WebCore::IDBDatabaseBackendLevelDB::setIndexKeys):
602         (WebCore::IDBDatabaseBackendLevelDB::setIndexesReady):
603         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h:
604
605         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
606         (WebCore::IDBTransactionBackendLevelDB::schedulePutOperation):
607         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
608
609         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
610         (WebCore::PutOperation::perform):
611         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:
612         (WebCore::PutOperation::create):
613         (WebCore::PutOperation::PutOperation):
614
615 2013-10-22  Dean Jackson  <dino@apple.com>
616
617         [WebGL] Implement a software rendering option on Mac
618         https://bugs.webkit.org/show_bug.cgi?id=123177
619
620         Reviewed by Tim Horton.
621
622         Implement a way to force software OpenGL rendering
623         for WebGL, via a Setting/Preference.
624
625         No new tests. We intentionally hide the capabilities of
626         the renderer from the content, so you can't test for
627         this setting. However, manual inspection is pretty
628         obvious. Just go to a page with a complex shader
629         such as https://www.shadertoy.com/view/lss3WS.
630
631         * html/canvas/WebGLRenderingContext.cpp:
632         (WebCore::WebGLRenderingContext::create): If we're forcing software
633         rendering, mark the context attributes as such.
634         * page/Settings.in: New setting key.
635         * platform/graphics/GraphicsContext3D.h: New flag in Attributes.
636         (WebCore::GraphicsContext3D::Attributes::Attributes):
637         * platform/graphics/mac/GraphicsContext3DMac.mm:
638         (WebCore::GraphicsContext3D::GraphicsContext3D): Slight update to the
639         algorithm that sets a pixel format. If we're forcing software rendering,
640         obviously we never want to create an accelerated pixel format.
641         * platform/graphics/filters/CustomFilterGlobalContext.cpp:
642         (WebCore::CustomFilterGlobalContext::prepareContextIfNeeded): Set the attribute
643         here before trying to create the context.
644         * platform/graphics/filters/CustomFilterGlobalContext.h: Add a forceSoftwareRendering
645         flag to prepareContextIfNeeded.
646         * rendering/FilterEffectRenderer.cpp:
647         (WebCore::createCustomFilterEffect): Check the Setting before creating a custom
648         filter context.
649
650 2013-10-22  Anders Carlsson  <andersca@apple.com>
651
652         Revert r157445 since it broke certificates on Mac.
653         <rdar://problem/15246926&15254017&15269117>
654
655         * GNUmakefile.list.am:
656         * PlatformEfl.cmake:
657         * WebCore.exp.in:
658         * WebCore.vcxproj/WebCore.vcxproj:
659         * WebCore.vcxproj/WebCore.vcxproj.filters:
660         * WebCore.xcodeproj/project.pbxproj:
661         * platform/network/ResourceErrorBase.h:
662         * platform/network/ResourceResponseBase.h:
663         * platform/network/cf/CertificateInfoCFNet.cpp: Removed.
664         * platform/network/cf/ResourceResponse.h:
665         * platform/network/mac/ResourceResponseMac.mm:
666         (WebCore::ResourceResponse::setCertificateChain):
667         (WebCore::ResourceResponse::certificateChain):
668         * platform/network/soup/ResourceError.h:
669         (WebCore::ResourceError::ResourceError):
670         (WebCore::ResourceError::tlsErrors):
671         (WebCore::ResourceError::setTLSErrors):
672         (WebCore::ResourceError::certificate):
673         (WebCore::ResourceError::setCertificate):
674         * platform/network/soup/ResourceErrorSoup.cpp:
675         (WebCore::ResourceError::tlsError):
676         (WebCore::ResourceError::platformCopy):
677         (WebCore::ResourceError::platformCompare):
678         * platform/network/soup/ResourceResponse.h:
679         (WebCore::ResourceResponse::ResourceResponse):
680         (WebCore::ResourceResponse::soupMessageCertificate):
681         (WebCore::ResourceResponse::setSoupMessageCertificate):
682         (WebCore::ResourceResponse::soupMessageTLSErrors):
683         (WebCore::ResourceResponse::setSoupMessageTLSErrors):
684         * platform/network/soup/ResourceResponseSoup.cpp:
685         (WebCore::ResourceResponse::toSoupMessage):
686         (WebCore::ResourceResponse::updateFromSoupMessage):
687
688 2013-10-22  Jer Noble  <jer.noble@apple.com>
689
690         [Media] Refactor supportsType() factory method to take a parameters object.
691         https://bugs.webkit.org/show_bug.cgi?id=122489
692
693         Reviewed by Eric Carlson.
694
695         In order to support adding new conditional properties with which to decide
696         what MediaPlayerPrivate subclass to create, replace the two versions of the
697         supportsType() factory method with a single one taking a parameters object.
698
699         At the same time, add a 'isMediaSource' parameter to that object, allowing
700         MediaPlayerPrivate subclasses which support the same type and codecs but
701         which do not both support MediaSource to be distinguised.
702
703         * platform/graphics/MediaPlayer.cpp:
704         (WebCore::bestMediaEngineForSupportParameters): Renamed from
705             bestMediaEngineForTypeAndCodecs.
706         (WebCore::MediaPlayer::nextBestMediaEngine): Added convenience function.
707         (WebCore::MediaPlayer::loadWithNextMediaEngine): Call nextBestMediaEngine()
708         (WebCore::MediaPlayer::supportsType): Pass parameter object.
709         (WebCore::MediaPlayer::networkStateChanged): Call nextBestMediaEngine().
710         * platform/graphics/MediaPlayer.h:
711         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
712         (WebCore::MediaPlayerPrivateAVFoundationCF::supportsType): Handle parameter object.
713         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
714         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
715         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
716         (WebCore::MediaPlayerPrivateAVFoundationObjC::registerMediaEngine): Remove extraneous
717             extendedSupportsType method.
718         (WebCore::MediaPlayerPrivateAVFoundationObjC::supportsType): Handle parameter object.
719         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
720         (WebCore::MediaPlayerPrivate::supportsType): Ditto.
721         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.h:
722         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
723         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
724         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
725         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
726         (WebCore::MediaPlayerPrivateQTKit::registerMediaEngine): Remove extraneous
727             extendedSupportsType method.
728         (WebCore::MediaPlayerPrivateQTKit::supportsType): Handle parameter object.
729         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
730         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::supportsType): Ditto.
731         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.h:
732         * platform/graphics/wince/MediaPlayerPrivateWinCE.h:
733
734 2013-10-22  Andreas Kling  <akling@apple.com>
735
736         Merge SVGRenderBlock::styleWillChange() into styleDidChange().
737         <https://webkit.org/b/123181>
738
739         I meant to do this one in r157787, but better late than never.
740
741         Reviewed by Geoffrey Garen.
742
743 2013-10-22  Sam Weinig  <sam@webkit.org>
744
745         CTTE: Modernize RenderBlock a bit
746         https://bugs.webkit.org/show_bug.cgi?id=123162
747
748         Reviewed by Andreas Kling.
749
750         Start threading references through RenderBlock. While we 
751         are here, do some selective modernization as well.
752
753 2013-10-22  Andreas Kling  <akling@apple.com>
754
755         Even more PassRef<RenderStyle>!
756         <https://webkit.org/b/123147>
757
758         Convert the remaining WebCore code to use PassRef for RenderStyle
759         wherever they are known to be non-null.
760
761         Reviewed by Antti Koivisto.
762
763 2013-10-22  Commit Queue  <commit-queue@webkit.org>
764
765         Unreviewed, rolling out r157819.
766         http://trac.webkit.org/changeset/157819
767         https://bugs.webkit.org/show_bug.cgi?id=123180
768
769         Broke 32-bit builds (Requested by smfr on #webkit).
770
771         * Configurations/WebCore.xcconfig:
772
773 2013-10-22  Antti Koivisto  <antti@apple.com>
774
775         Rename deleteLineBoxTree to deleteLines
776         https://bugs.webkit.org/show_bug.cgi?id=123176
777
778         Reviewed by Andreas Kling.
779
780         RenderBlock::deleteLineBoxTree -> RenderBlock::deleteLines
781         RenderInline::deleteLineBoxTree -> RenderInline::deleteLines
782
783 2013-10-22  Tim Horton  <timothy_horton@apple.com>
784
785         {ClipPathOperation, FilterOperation}::getOperationType() should not include 'get'
786         https://bugs.webkit.org/show_bug.cgi?id=123172
787
788         Reviewed by Simon Fraser.
789
790         No new tests, just a rename.
791
792         "get" in WebCore tends to mean that the function has out arguments; these have no arguments.
793         Rename FilterOperation::getOperationType() to FilterOperation::type().
794         I noticed that ClipPathOperation had the same mistake, so I fixed it there too.
795
796         Removed long and useless list of files.
797
798 2013-10-22  Samuel White  <samuel_white@apple.com>
799
800         AX: Add paramAttrs to fetch start and end text markers in a given rect.
801         https://bugs.webkit.org/show_bug.cgi?id=122164
802
803         Reviewed by Chris Fleizach.
804
805         Added ability to fetch end and start text markers inside a given bounds. This gives ScreenReaders
806         like VoiceOver a way to retrieve the text markers for a specified column of page text.
807
808         Test: platform/mac/accessibility/text-marker-for-bounds.html
809
810         * accessibility/AccessibilityObject.cpp:
811         (WebCore::AccessibilityObject::mainFrame):
812         (WebCore::AccessibilityObject::topDocument):
813         (WebCore::AccessibilityObject::visiblePositionForBounds):
814         * accessibility/AccessibilityObject.h:
815         * accessibility/AccessibilityRenderObject.cpp:
816         * accessibility/AccessibilityRenderObject.h:
817         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
818         (-[WebAccessibilityObjectWrapper screenToContents:]):
819         (-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
820         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
821
822 2013-10-22  Zoltan Horvath  <zoltan@webkit.org>
823
824         [CSS Shapes] Match adjustLogicalLineTopAndLogicalHeightIfNeeded's implementation with Blink's
825         https://bugs.webkit.org/show_bug.cgi?id=123033
826
827         Reviewed by David Hyatt.
828
829         In Blink I made this function in a bit different way. This change modifies it
830         to be identical, which helps a lot in the future cross-merging patches.
831
832         No new tests, covered by existing texts.
833
834         * rendering/RenderBlockLineLayout.cpp:
835         (WebCore::RenderBlockFlow::adjustLogicalLineTopAndLogicalHeightIfNeeded):
836
837 2013-10-22  Daniel Bates  <dabates@apple.com>
838
839         [iOS] Upstream more ARMv7s bits
840         https://bugs.webkit.org/show_bug.cgi?id=123052
841
842         Reviewed by Joseph Pecoraro.
843
844         * Configurations/WebCore.xcconfig:
845
846 2013-10-22  Simon Fraser  <simon.fraser@apple.com>
847
848         Try to fix Mavericks build; use <> for framework include.
849
850         * page/CaptionUserPreferencesMediaAF.cpp:
851
852 2013-10-22  Tim Horton  <timothy_horton@apple.com>
853
854         GammaFilterOperation seems to be dead code
855         https://bugs.webkit.org/show_bug.cgi?id=123173
856
857         Reviewed by Simon Fraser.
858
859         * platform/graphics/filters/FilterOperation.cpp:
860         * platform/graphics/filters/FilterOperation.h:
861         Remove dead code.
862
863 2013-10-22  Antti Koivisto  <antti@apple.com>
864
865         Rename some line box functions to be just about lines
866         https://bugs.webkit.org/show_bug.cgi?id=123168
867
868         Reviewed by Dave Hyatt.
869
870         firstLineBoxBaseline -> firstLineBaseline
871         hasInlineBoxChildren -> hasLines
872         
873         Also use hasLines in a bunch of places where firstLineBox() was used.
874
875         * accessibility/AccessibilityRenderObject.cpp:
876         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
877         
878             Also use hasRenderedText() instead of firstTextBox()
879
880         * rendering/RenderFullScreen.cpp:
881         
882             Fix namespace.
883
884 2013-10-22  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
885
886         Adding Mock class to test RTCPeerConnection
887         https://bugs.webkit.org/show_bug.cgi?id=122848
888
889         Reviewed by Eric Carlson.
890
891         The following tests can be run:
892
893             RTCPeerConnection-createAnswer.html
894             RTCPeerConnection-createOffer.html
895             RTCPeerConnection-ice.html
896             RTCPeerConnection-localDescription.html
897             RTCPeerConnection-remoteDescription.html
898             RTCPeerConnection-state.html
899
900         Tests that require a MediaStream object, by invoking getUserMedia,
901         are not ready to run yet.
902
903         No new tests needed.
904
905         * CMakeLists.txt:
906         * platform/mediastream/RTCPeerConnectionHandler.cpp:
907         (WebCore::createHandler):
908         * platform/mediastream/RTCPeerConnectionHandler.h:
909         * platform/mediastream/RTCPeerConnectionHandlerClient.h:
910         * platform/mock/RTCNotifiersMock.cpp: Added.
911         * platform/mock/RTCNotifiersMock.h: Added.
912         * platform/mock/RTCPeerConnectionHandlerMock.cpp: Added.
913         * platform/mock/RTCPeerConnectionHandlerMock.h: Copied from Source/WebCore/platform/mediastream/RTCPeerConnectionHandler.h.
914         * platform/mock/TimerEventBasedMock.h: Added.
915         * testing/Internals.cpp:
916         (WebCore::Internals::Internals):
917         (WebCore::Internals::enableMockRTCPeerConnectionHandler):
918         * testing/Internals.h:
919
920 2013-10-22  Zan Dobersek  <zdobersek@igalia.com>
921
922         WebCore::fillWithEmptyClients adopts new empty clients before leaking their pointers
923         https://bugs.webkit.org/show_bug.cgi?id=122945
924
925         Reviewed by Anders Carlsson.
926
927         * loader/EmptyClients.cpp:
928         (WebCore::fillWithEmptyClients): Store the static empty clients as NeverDestroyed, rather than
929         adopting the pointer of each heap-allocated object and then immediately leaking that pointer.
930
931 2013-10-22  Zan Dobersek  <zdobersek@igalia.com>
932
933         Simplify HRTFDatabaseLoader's load map
934         https://bugs.webkit.org/show_bug.cgi?id=122944
935
936         Reviewed by Eric Carlson.
937
938         * platform/audio/HRTFDatabaseLoader.cpp:
939         (WebCore::loaderMap): Return a reference to a NeverDestroyed HashMap that maps sample rates to loaders.
940         (WebCore::HRTFDatabaseLoader::createAndLoadAsynchronouslyIfNecessary):
941         (WebCore::HRTFDatabaseLoader::~HRTFDatabaseLoader):
942         * platform/audio/HRTFDatabaseLoader.h: Remove the LoaderMap type definition, the private singleton of that type
943         and the singleton's unused getter.
944
945 2013-10-22  Tim Horton  <timothy_horton@apple.com>
946
947         Remote Layer Tree: Support hardware accelerated filters
948         https://bugs.webkit.org/show_bug.cgi?id=123139
949
950         Reviewed by Anders Carlsson.
951
952         * WebCore.exp.in:
953         Export a variety of filter-related things.
954
955         * platform/graphics/ca/PlatformCAFilters.h:
956         * platform/graphics/ca/mac/PlatformCAFiltersMac.mm:
957         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
958         (PlatformCALayerMac::setFilters):
959         * platform/graphics/ca/win/PlatformCAFiltersWin.cpp:
960         (PlatformCAFilters::setFiltersOnLayer):
961         setFiltersOnLayer should take a PlatformLayer instead of a PlatformCALayer
962         as its argument, because it doesn't need a PlatformCALayer, and this way
963         we can share code with the RemoteLayerTreeHost, which only has PlatformLayers
964         and not PlatformCALayers.
965
966 2013-10-22  Brendan Long  <b.long@cablelabs.com>
967
968         cue.text fails for some track element cues
969         https://bugs.webkit.org/show_bug.cgi?id=81123
970
971         Reviewed by Eric Carlson.
972
973         Test: media/track/track-long-captions-file.html
974
975         * html/track/WebVTTParser.cpp:
976         (WebCore::WebVTTParser::parseBytes): Use buffer when we don't have full lines.
977         (WebCore::WebVTTParser::fileFinished): Force file to finish parsing.
978         (WebCore::WebVTTParser::hasRequiredFileIdentifier): Simplify due to using String.
979         (WebCore::WebVTTParser::collectCueText): Don't automatically create cues when we run out of data.
980         (WebCore::WebVTTParser::collectNextLine): Use buffer.
981         * html/track/WebVTTParser.h: Add m_buffer and Finished state.
982         * loader/TextTrackLoader.cpp:
983         (WebCore::TextTrackLoader::notifyFinished): Call m_parser->fileFinished() when done.
984
985 2013-10-22  peavo@outlook.com  <peavo@outlook.com>
986
987         [WinCairo] Compile error.
988         https://bugs.webkit.org/show_bug.cgi?id=123161
989
990         Reviewed by Brent Fulgham.
991
992         * rendering/RenderFlowThread.h: Move USE(ACCELERATED_COMPOSITING) guard to expose needed type.
993
994 2013-10-21  Brady Eidson  <beidson@apple.com>
995
996         Add a cross-platform IDBRecordIdentifier
997         https://bugs.webkit.org/show_bug.cgi?id=123138
998
999         Reviewed by Andreas Kling.
1000
1001         Add the cross-platform header:
1002         * Modules/indexeddb/IDBRecordIdentifier.h: Added.
1003         (WebCore::IDBRecordIdentifier::create):
1004         (WebCore::IDBRecordIdentifier::encodedPrimaryKey):
1005         (WebCore::IDBRecordIdentifier::version):
1006         (WebCore::IDBRecordIdentifier::reset):
1007         (WebCore::IDBRecordIdentifier::IDBRecordIdentifier):
1008         * WebCore.xcodeproj/project.pbxproj:
1009         * GNUmakefile.list.am:
1010
1011         Remove the old abstract and LevelDB classes:
1012         * Modules/indexeddb/IDBBackingStoreInterface.h:
1013         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
1014
1015         Use the cross-platform one everywhere:
1016         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
1017         (WebCore::IDBBackingStoreLevelDB::putRecord):
1018         (WebCore::IDBBackingStoreLevelDB::deleteRecord):
1019         (WebCore::IDBBackingStoreLevelDB::keyExistsInObjectStore):
1020         (WebCore::IDBBackingStoreLevelDB::putIndexDataForRecord):
1021         (WebCore::ObjectStoreKeyCursorImpl::loadCurrentRow):
1022         (WebCore::ObjectStoreCursorImpl::loadCurrentRow):
1023
1024         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
1025         (WebCore::IDBDatabaseBackendLevelDB::setIndexKeys):
1026
1027         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp:
1028         (WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::writeIndexKeys):
1029
1030         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h:
1031         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
1032         (WebCore::PutOperation::perform):
1033
1034 2013-10-22  Andrei Bucur  <abucur@adobe.com>
1035
1036         [CSS Regions] Possible performance regression after r157567
1037         https://bugs.webkit.org/show_bug.cgi?id=123016
1038
1039         Reviewed by Andreas Kling.
1040
1041         The revision 157567 http://trac.webkit.org/changeset/157567 may have regressed
1042         Parser/html5-full-render by ~1.1% and Parser/html-parser by ~2%. These changes
1043         try to optimize the initial patch, based on Andreas Kling's review.
1044
1045         The patch also adds a couple of refactorings that should make the code easier to read:
1046         - the CSS Shapes functions are now wrapped in a single #if clause
1047         - the CSS Shapes and CSS Regions pre-layout preparations are wrapped in a helper function
1048
1049         The RenderFlowThread::logicalWidthChangedInRegionsForBlock function is optimized by passing
1050         it information about the state of the relayout children flag. If the flag is true already,
1051         some of the steps are skipped.
1052
1053         Tests: no new tests.
1054
1055         * dom/Element.cpp:
1056         (WebCore::Element::webkitGetRegionFlowRanges):
1057         * inspector/InspectorOverlay.cpp:
1058         (WebCore::buildObjectForElementInfo):
1059         * rendering/RenderBlock.cpp:
1060         (WebCore::shapeInfoRequiresRelayout):
1061         (WebCore::RenderBlock::updateShapesBeforeBlockLayout):
1062         (WebCore::RenderBlock::computeShapeSize):
1063         (WebCore::RenderBlock::prepareShapesAndPaginationBeforeBlockLayout):
1064         * rendering/RenderBlock.h:
1065         * rendering/RenderBlockFlow.cpp:
1066         (WebCore::RenderBlockFlow::layoutBlock):
1067         (WebCore::RenderBlockFlow::createRenderNamedFlowFragmentIfNeeded):
1068         (WebCore::RenderBlockFlow::setRenderNamedFlowFragment):
1069         (WebCore::RenderBlockFlow::ensureRareData):
1070         * rendering/RenderBlockFlow.h:
1071         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
1072         (WebCore::RenderElement::isRenderNamedFlowFragmentContainer):
1073         * rendering/RenderDeprecatedFlexibleBox.cpp:
1074         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
1075         * rendering/RenderElement.h:
1076         (WebCore::RenderElement::generatingElement):
1077         * rendering/RenderFlexibleBox.cpp:
1078         (WebCore::RenderFlexibleBox::layoutBlock):
1079         * rendering/RenderFlowThread.cpp:
1080         (WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock):
1081         * rendering/RenderFlowThread.h:
1082         * rendering/RenderGrid.cpp:
1083         (WebCore::RenderGrid::layoutBlock):
1084         * rendering/RenderNamedFlowFragment.h:
1085         * rendering/RenderObject.cpp:
1086         * rendering/RenderObject.h:
1087         * rendering/RenderTreeAsText.cpp:
1088         (WebCore::write):
1089         * style/StyleResolveTree.cpp:
1090         (WebCore::Style::elementInsideRegionNeedsRenderer):
1091
1092 2013-10-22  Andreas Kling  <akling@apple.com>
1093
1094         CSSStyleSheet constructor functions should return PassRef.
1095         <https://webkit.org/b/123156>
1096
1097         Make CSSStyleSheet::create*() return PassRef and tighten some call
1098         sites that were using them. Most callers didn't need any tweaks to
1099         take advantage of PassRef.
1100
1101         Reviewed by Antti Koivisto.
1102
1103 2013-10-22  Andreas Kling  <akling@apple.com>
1104
1105         CTTE: RenderMathMLFraction always has a MathMLInlineContainerElement.
1106         <https://webkit.org/b/123154>
1107
1108         This renderer is never anonymous and always has a corresponding
1109         MathMLInlineContainerElement. Overload element() with a tighter
1110         return type.
1111
1112         Also marked the class FINAL and made most member functions private.
1113
1114         Reviewed by Antti Koivisto.
1115
1116 2013-10-22  Andreas Kling  <akling@apple.com>
1117
1118         FontGlyphs constructor functions should return PassRef.
1119         <https://webkit.org/b/123159>
1120
1121         Made the two FontGlyphs creator functions return PassRef and tweaked
1122         the FontGlyphsCache in Font.cpp to make more efficient use of it.
1123
1124         Reviewed by Antti Koivisto.
1125
1126 2013-10-22  Andreas Kling  <akling@apple.com>
1127
1128         Fix some more code to use RenderElement instead of RenderObject.
1129         <https://webkit.org/b/123149>
1130
1131         Using RenderElement where possible lets us skip the isRenderElement()
1132         branch in RenderObject::style() and generates much tighter code.
1133
1134         Reviewed by Antti Koivisto.
1135
1136 2013-10-22  Andreas Kling  <akling@apple.com>
1137
1138         Merge SVG renderers' styleWillChange() into styleDidChange().
1139         <https://webkit.org/b/123108>
1140
1141         This work can just as well be done after setting the style.
1142         Three more styleWillChange() overloads gone.
1143
1144         Reviewed by Antti Koivisto.
1145
1146 2013-10-22  Andreas Kling  <akling@apple.com>
1147
1148         CSSValueList constructor functions should return PassRef.
1149         <https://webkit.org/b/123151>
1150
1151         These functions always return objects, and thus can return PassRef.
1152         Also made CSSValueList::createFromParserValueList() take a reference
1153         since that function is only ever called with a non-null value.
1154
1155         Reviewed by Antti Koivisto.
1156
1157 2013-10-22  Andreas Kling  <akling@apple.com>
1158
1159         Avoid parent style ref churn in createTextRendererIfNeeded().
1160         <https://webkit.org/b/123148>
1161
1162         There's no need to take a temporary ref on the parent's RenderStyle
1163         while creating a text renderer. It's not going away, and the text
1164         renderer is not going to participate in ownership afterwards.
1165
1166         Reviewed by Antti Koivisto.
1167
1168 2013-10-22  Andreas Kling  <akling@apple.com>
1169
1170         Remove some unnecessary null checks in RenderElement::setStyle().
1171         <https://webkit.org/b/123146>
1172
1173         After assigning the new style to RenderElement::m_style, we know that
1174         it'll be non-null, so remove all the checking for this.
1175
1176         Reviewed by Antti Koivisto.
1177
1178 2013-10-22  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1179
1180         Introduce ACCESSIBILITY_OBJECT_TYPE_CASTS to replace manual toFoo() in accessibility child class
1181         https://bugs.webkit.org/show_bug.cgi?id=123140
1182
1183         Reviewed by Andreas Kling.
1184
1185         As a step to let toFoo use TYPE_CASTS_BASE, DEFINE_TYPE_CASTS can be used for toFoo() in accessibility
1186         child class. The DEFINE_TYPE_CASTS will generate plenty more helper functions for accessibility type cast.
1187
1188         No new tests, no behavior changes.
1189
1190         * accessibility/AccessibilityList.h:
1191         * accessibility/AccessibilityMenuList.h:
1192         * accessibility/AccessibilityMockObject.h:
1193         * accessibility/AccessibilityNodeObject.h:
1194         * accessibility/AccessibilityObject.h:
1195         * accessibility/AccessibilityRenderObject.h:
1196         * accessibility/AccessibilitySVGRoot.h:
1197         * accessibility/AccessibilityScrollView.h:
1198         * accessibility/AccessibilitySpinButton.h:
1199         * accessibility/AccessibilityTable.h:
1200
1201 2013-10-22  Brian Holt  <brian.holt@samsung.com>
1202
1203         [GTK] Add WebKit2 API for TLS errors
1204         https://bugs.webkit.org/show_bug.cgi?id=120160
1205
1206         Reviewed by Carlos Garcia Campos.
1207
1208         Added a new constructor for CertificateInfo under Soup.
1209
1210         * platform/network/CertificateInfo.h:
1211         * platform/network/soup/CertificateInfoSoup.cpp:
1212         (WebCore::CertificateInfo::CertificateInfo): New constructor using
1213         GTlsCertificateFlags and GTlsCertificate.
1214
1215 2013-10-22  Mihnea Ovidenie  <mihnea@adobe.com>
1216
1217         [CSSRegions] Use RenderStyle::hasFlowFrom when needed
1218         https://bugs.webkit.org/show_bug.cgi?id=122543
1219
1220         Reviewed by David Hyatt.
1221
1222         Rename RenderStyle::hasStyleRegion -> RenderStyle::hasFlowFrom.
1223         Use RenderStyle::hasFlowFrom() helper function instead of directly
1224         checking the value of RenderStyle::regionThread().
1225
1226         No change of functionality, covered by existing tests.
1227
1228         * css/CSSComputedStyleDeclaration.cpp:
1229         (WebCore::contentToCSSValue):
1230         (WebCore::ComputedStyleExtractor::propertyValue):
1231         * css/StyleResolver.cpp:
1232         (WebCore::StyleResolver::adjustRenderStyle):
1233         * dom/PseudoElement.cpp:
1234         (WebCore::PseudoElement::didAttachRenderers):
1235         * dom/PseudoElement.h:
1236         (WebCore::pseudoElementRendererIsNeeded):
1237         * rendering/RenderBlockFlow.cpp:
1238         (WebCore::RenderBlockFlow::createRenderNamedFlowFragmentIfNeeded):
1239         * rendering/RenderLayer.cpp:
1240         (WebCore::RenderLayer::shouldBeNormalFlowOnly):
1241         * rendering/style/RenderStyle.h:
1242
1243 2013-10-21  Brent Fulgham  <bfulgham@apple.com>
1244
1245         [WIN] Properly support reverse animations without needing software fallback.
1246         https://bugs.webkit.org/show_bug.cgi?id=85121
1247
1248         Reviewed by Dean Jackson.
1249
1250         Testing is provided by existing animation tests.
1251
1252         * platform/animation/TimingFunction.h:
1253         (WebCore::CubicBezierTimingFunction::createReversed): Added.
1254         * platform/graphics/ca/GraphicsLayerCA.cpp:
1255         (WebCore::GraphicsLayerCA::addAnimation): The early return when performing a reverse or
1256         autoreverse animation is no longer needed.
1257         * platform/graphics/ca/PlatformCAAnimation.h:
1258         * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
1259         (toCAMediaTimingFunction): Use new reversed function.
1260         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
1261         (toCACFTimingFunction): Ditto.
1262         (PlatformCAAnimation::setTimingFunction): Pass 'reverse' flag.
1263         (PlatformCAAnimation::setTimingFunctions): Ditto.
1264
1265 2013-10-21  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1266
1267         Use TYPE_CASTS_BASE for CSS_VALUE_TYPE_CASTS
1268         https://bugs.webkit.org/show_bug.cgi?id=123126
1269
1270         Reviewed by Andreas Kling.
1271
1272         TYPE_CASTS_BASE was moved to common place to be used by all toFoo().
1273         CSS_VALUE_TYPE_CASTS starts to use it for CSS child value. This change
1274         generates plenty more helper functions for toCSSFooValue().
1275
1276         Additionally, this use support that toWebKitCSSFooValue, which couldn't
1277         use CSS_VALUE_TYPE_CASTS macro.
1278
1279         No new tests, no behavior change.
1280
1281         * css/CSSAspectRatioValue.h:
1282         * css/CSSBorderImageSliceValue.h:
1283         * css/CSSCalculationValue.h:
1284         * css/CSSCanvasValue.h:
1285         * css/CSSCrossfadeValue.h:
1286         * css/CSSCursorImageValue.h:
1287         * css/CSSFilterImageValue.h:
1288         * css/CSSFontFaceSrcValue.h:
1289         * css/CSSFontFeatureValue.h:
1290         * css/CSSFontValue.h:
1291         * css/CSSFunctionValue.h:
1292         * css/CSSGradientValue.h:
1293         * css/CSSGridTemplateValue.h:
1294         * css/CSSImageSetValue.h:
1295         * css/CSSImageValue.h:
1296         * css/CSSInheritedValue.h:
1297         * css/CSSInitialValue.h:
1298         * css/CSSLineBoxContainValue.h:
1299         * css/CSSPrimitiveValue.h:
1300         * css/CSSReflectValue.h:
1301         * css/CSSShadowValue.h:
1302         * css/CSSTimingFunctionValue.h:
1303         * css/CSSUnicodeRangeValue.h:
1304         * css/CSSValue.h:
1305         * css/CSSValueList.h:
1306         * css/CSSVariableValue.h:
1307         * css/WebKitCSSArrayFunctionValue.h:
1308         * css/WebKitCSSFilterValue.h:
1309         * css/WebKitCSSMatFunctionValue.h:
1310         * css/WebKitCSSMixFunctionValue.h:
1311         * css/WebKitCSSSVGDocumentValue.h:
1312         * css/WebKitCSSShaderValue.h:
1313
1314 2013-10-21  Joone Hur  <joone.hur@intel.com>
1315
1316         Bad cast with toRenderBoxModelObject in RenderBlock::updateFirstLetter()
1317         https://bugs.webkit.org/show_bug.cgi?id=123013
1318
1319         Reviewed by Andreas Kling.
1320
1321         No new tests because this was reported by Google ClusterFuzz.
1322         https://codereview.chromium.org/25713009/
1323
1324         There is a case that toRenderBoxModelObject causes a crash in RenderBlock::updateFirstLetter() 
1325         due to bad cast, so we need to check whether the RenderObject is a RenderBoxModelObject 
1326         by running isBoxModelObject() before calling toRenderBoxModelObject.  
1327
1328         * rendering/RenderBlock.cpp:
1329         (WebCore::RenderBlock::updateFirstLetter):
1330
1331 2013-10-21  Brady Eidson  <beidson@apple.com>
1332
1333         Make IDBTransactionCoordinatorLevelDB cross platform
1334         https://bugs.webkit.org/show_bug.cgi?id=123124
1335
1336         Enthusiastically reviewed by Tim Horton.
1337
1338         * CMakeLists.txt:
1339         * GNUmakefile.list.am:
1340         * WebCore.xcodeproj/project.pbxproj:
1341
1342         Make more methods pure virtual in the interface:
1343         * Modules/indexeddb/IDBTransactionBackendInterface.h:
1344         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
1345         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
1346
1347         Update the name of the class, and use IDBTransactionBackendInterface instead of IDBTransactionBackendLeveDB:
1348         * Modules/indexeddb/IDBTransactionCoordinator.cpp: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp.
1349         (WebCore::IDBTransactionCoordinator::create):
1350         (WebCore::IDBTransactionCoordinator::IDBTransactionCoordinator):
1351         (WebCore::IDBTransactionCoordinator::~IDBTransactionCoordinator):
1352         (WebCore::IDBTransactionCoordinator::didCreateTransaction):
1353         (WebCore::IDBTransactionCoordinator::didStartTransaction):
1354         (WebCore::IDBTransactionCoordinator::didFinishTransaction):
1355         (WebCore::IDBTransactionCoordinator::isActive):
1356         (WebCore::IDBTransactionCoordinator::processStartedTransactions):
1357         (WebCore::doScopesOverlap):
1358         (WebCore::IDBTransactionCoordinator::canRunTransaction):
1359         * Modules/indexeddb/IDBTransactionCoordinator.h: Renamed from Source/WebCore/Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.h.
1360
1361         Update the name of the class elsewhere:
1362         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
1363         (WebCore::IDBDatabaseBackendLevelDB::IDBDatabaseBackendLevelDB):
1364         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h:
1365         (WebCore::IDBDatabaseBackendLevelDB::transactionCoordinator):
1366         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1367
1368 2013-10-21  Daniel Bates  <dabates@apple.com>
1369
1370         [iOS] Upstream JSGlobalObject::shouldInterruptScriptBeforeTimeout()
1371         https://bugs.webkit.org/show_bug.cgi?id=123045
1372
1373         Reviewed by Joseph Pecoraro.
1374
1375         * bindings/js/JSDOMWindowBase.cpp:
1376         (WebCore::shouldInterruptScriptToPreventInfiniteRecursionWhenClosingPage): Added.
1377         (WebCore::JSDOMWindowBase::shouldInterruptScript): Extracted comment and assertion
1378         about null Page object into WebCore::shouldInterruptScriptToPreventInfiniteRecursionWhenClosingPage()
1379         so that it can be shared by both this function and JSDOMWindowBase::shouldInterruptScriptBeforeTimeout().
1380         (WebCore::JSDOMWindowBase::shouldInterruptScriptBeforeTimeout):
1381         * bindings/js/JSDOMWindowBase.h:
1382         * bindings/js/JSWorkerGlobalScopeBase.cpp:
1383         (WebCore::JSWorkerGlobalScopeBase::shouldInterruptScriptBeforeTimeout): Added.
1384         * bindings/js/JSWorkerGlobalScopeBase.h:
1385         * loader/EmptyClients.h: Added isStopping(). We'll land the iOS chrome client implementation
1386         in a subsequent patch.
1387         * page/ChromeClient.h: Added isStopping().
1388
1389 2013-10-21  Anders Carlsson  <andersca@apple.com>
1390
1391         Navigation policy callback not called when performing the same fragment navigation twice
1392         https://bugs.webkit.org/show_bug.cgi?id=123121
1393         <rdar://problem/15230466>
1394
1395         Reviewed by Beth Dakin.
1396
1397         There's code in PolicyChecker::checkNavigationPolicy that will call the decision function right away 
1398         if the requests are equal, without consulting any policy client. Because of this, make sure to empty out
1399         the last checked request of the document loader when doing a fragment navigation.
1400
1401         * loader/FrameLoader.cpp:
1402         (WebCore::FrameLoader::loadURL):
1403         (WebCore::FrameLoader::loadWithDocumentLoader):
1404
1405 2013-10-21  Jer Noble  <jer.noble@apple.com>
1406
1407         Unreviewed build fix; unprotect the declaration of updateSleepDisabling();
1408
1409         * html/HTMLMediaElement.h:
1410
1411 2013-10-20  Mark Lam  <mark.lam@apple.com>
1412
1413         Avoid JSC debugger overhead unless needed.
1414         https://bugs.webkit.org/show_bug.cgi?id=123084.
1415
1416         Reviewed by Geoffrey Garen.
1417
1418         No new tests.
1419
1420         - If no breakpoints are set, we now avoid calling the debug hook callbacks.
1421         - If no break on exception is set, we also avoid exception event debug callbacks.
1422         - When we return from the ScriptDebugServer to the JSC::Debugger, we may no
1423           longer call the debug hook callbacks if not needed. Hence, the m_currentCallFrame
1424           pointer in the ScriptDebugServer may become stale. To avoid this issue, before
1425           returning, the ScriptDebugServer will clear its m_currentCallFrame if
1426           needsOpDebugCallbacks() is false.
1427
1428         * bindings/js/ScriptDebugServer.cpp:
1429         (WebCore::ScriptDebugServer::setBreakpoint):
1430         (WebCore::ScriptDebugServer::removeBreakpoint):
1431         (WebCore::ScriptDebugServer::clearBreakpoints):
1432         (WebCore::ScriptDebugServer::setPauseOnExceptionsState):
1433         (WebCore::ScriptDebugServer::setPauseOnNextStatement):
1434         (WebCore::ScriptDebugServer::breakProgram):
1435         (WebCore::ScriptDebugServer::stepIntoStatement):
1436         (WebCore::ScriptDebugServer::dispatchDidContinue):
1437         (WebCore::ScriptDebugServer::exception):
1438         (WebCore::ScriptDebugServer::didReachBreakpoint):
1439         * inspector/InspectorDebuggerAgent.cpp:
1440         (WebCore::InspectorDebuggerAgent::reset):
1441
1442 2013-10-21  Myles C. Maxfield  <mmaxfield@apple.com>
1443
1444         Grammar markers are not updated when switching between 1x and 2x
1445         https://bugs.webkit.org/show_bug.cgi?id=122146
1446
1447         Reviewed by Dean Jackson.
1448
1449         When running editing/spelling/grammar-markers-hidpi.html, the 2x
1450         grammar/spelling dot resources are cached. If you then run
1451         editing/spelling/grammar-markers.html without tearing down WebKit,
1452         it re-uses the 2x dots. The difference between the two tests is a call
1453         to testRunner.setBackingScaleFactor().
1454
1455         We create a NSColor from an NSImage, and remember it in a static
1456         variable. However, NSColor inspects the current graphics context to
1457         determine which resolution to use, and then remembers that decision.
1458         Therefore, we want to recreate the NSColor whenever the device pixel
1459         ratio changes. This patch adds a new static function to GraphicsContext
1460         which recreates this NSColor every time the ratio changes.
1461
1462         Tests: editing/spelling/grammar-markers.html
1463                editing/spelling/inline_spelling_markers.html
1464
1465         * platform/graphics/mac/GraphicsContextMac.mm:
1466         (WebCore::makePattern):
1467         (WebCore::GraphicsContext::drawLineForDocumentMarker):
1468
1469 2013-10-21  Simon Fraser  <simon.fraser@apple.com>
1470
1471         Use pink layer borders for compositing layers with a contents layer
1472         https://bugs.webkit.org/show_bug.cgi?id=123118
1473
1474         Reviewed by Dean Jackson.
1475
1476         With the existing layer border colors, it's not possible to distinguish an empty
1477         layer from one with solid color, image or video contents. So use a pink color
1478         for those. This makes it easier to diagnose bugs like 122784.
1479
1480         * platform/graphics/GraphicsLayer.cpp:
1481         (WebCore::GraphicsLayer::getDebugBorderInfo):
1482
1483 2013-10-21  Jer Noble  <jer.noble@apple.com>
1484
1485         Limit use of display sleep assertion when <video> element is off-screen.
1486         https://bugs.webkit.org/show_bug.cgi?id=123041
1487
1488         Reviewed by Darin Adler.
1489
1490         Use page visibility changes to suspend and resume the use of sleep assertions in
1491         HTMLMediaElement.
1492
1493         Page will propogate the page visibility change notifications to its Documents, which
1494         will further propogate those notifications to registered elements.  Upon receiving
1495         these notifications, HTMLMediaElement will release or take a DisplaySleepDisabler
1496         token if necessary.
1497
1498         Also, rename HTMLMediaElement's updateDisableSleep() to updateSleepDisabling() and wrap
1499         the implementation in a PLATFORM(MAC) guard rather than at each call site.
1500
1501         * dom/Document.cpp:
1502         (WebCore::Document::registerForVisibilityStateCallbacks): Added registration method.
1503         (WebCore::Document::unregisterForVisibilityStateCallbacks): Added unregistration method.
1504         (WebCore::Document::visibilityStateChanged): Call all registered clients.
1505         * dom/Document.h:
1506         * dom/Element.h:
1507         (WebCore::Element::visibilityStateChanged): Added default virtual method to be overridden
1508             by subclasses.
1509         * html/HTMLMediaElement.cpp:
1510         (WebCore::HTMLMediaElement::HTMLMediaElement): Register for the notification, and check the
1511             current status of Document::hidden().
1512         (WebCore::HTMLMediaElement::~HTMLMediaElement): Unregister for the notification.
1513         (WebCore::HTMLMediaElement::visibilityStateChanged): Set m_displaySleepDisablingSuspended
1514             and call updateSleepDisabling().
1515         (WebCore::HTMLMediaElement::shouldDisableSleep): Add a check for m_displaySleepDisablingSuspended.
1516         * html/HTMLMediaElement.h:
1517         * page/Page.cpp:
1518         (WebCore::Page::setVisibilityState): Pass to every child document.
1519
1520         Rename updateDisableSleep() -> updateSleepDisabling():
1521         * html/HTMLMediaElement.cpp:
1522         (WebCore::HTMLMediaElement::HTMLMediaElement):
1523         (WebCore::HTMLMediaElement::~HTMLMediaElement):
1524         (WebCore::HTMLMediaElement::parseAttribute):
1525         (WebCore::HTMLMediaElement::mediaPlayerRateChanged):
1526         (WebCore::HTMLMediaElement::clearMediaPlayer):
1527         (WebCore::HTMLMediaElement::stop):
1528
1529 2013-10-21  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1530
1531         MediaStreamTrack now tracks its own state
1532         https://bugs.webkit.org/show_bug.cgi?id=123025
1533
1534         Reviewed by Jer Noble.
1535
1536         The spec says that a MediaStreamSource can be shared by different tracks,
1537         so a track must have its own state tracking, synchronizing with its MediaStreamSource when
1538         the underlying MediaStreamSource changes the readyState.
1539         In the old implementation if a user invoked the stop method, its readyState method was still
1540         returning the MediaStreamSource state, which was wrong.
1541         This also adds a setEnabled method, which can be used to set the state of a track when a
1542         remote peer ends it, for instance.
1543
1544         No new tests needed.
1545
1546         * Modules/mediastream/MediaStreamTrack.cpp:
1547         (WebCore::MediaStreamTrack::readyState):
1548         (WebCore::MediaStreamTrack::setState):
1549         (WebCore::MediaStreamTrack::stopProducingData):
1550         (WebCore::MediaStreamTrack::ended):
1551         (WebCore::MediaStreamTrack::sourceStateChanged):
1552         (WebCore::MediaStreamTrack::trackDidEnd):
1553         * Modules/mediastream/MediaStreamTrack.h:
1554
1555 2013-10-21  Tim Horton  <timothy_horton@apple.com>
1556
1557         Remote Layer Tree: Clean up transaction logging
1558         https://bugs.webkit.org/show_bug.cgi?id=123116
1559
1560         Reviewed by Anders Carlsson.
1561
1562         * WebCore.exp.in:
1563         Export some TextStream functions.
1564
1565 2013-10-21  Brady Eidson  <beidson@apple.com>
1566
1567         Transition most use of IDBBackingStoreLevelDB to IDBBackingStoreInterface
1568         https://bugs.webkit.org/show_bug.cgi?id=123105
1569
1570         Reviewed by Anders Carlsson.
1571
1572         Export more required headers:
1573         * WebCore.xcodeproj/project.pbxproj:
1574
1575         Flesh out many of the pure virtual methods on IDBBackingStoreInterface, as well as
1576         the RecordIdentifier and Cursor classes:
1577
1578         * Modules/indexeddb/IDBBackingStoreInterface.h:
1579         (WebCore::IDBBackingStoreInterface::RecordIdentifier::~RecordIdentifier):
1580         (WebCore::IDBBackingStoreInterface::Cursor::~Cursor):
1581
1582         Use IDBBackingStoreInterface, IDBBackingStoreInterface::RecordIdentifier, and
1583         IDBBackingStoreInterface::Cursor wherever possible:
1584
1585         * Modules/indexeddb/IDBFactoryBackendInterface.cpp:
1586         * Modules/indexeddb/IDBFactoryBackendInterface.h:
1587
1588         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
1589         (WebCore::IDBBackingStoreLevelDB::putRecord):
1590         (WebCore::IDBBackingStoreLevelDB::deleteRecord):
1591         (WebCore::IDBBackingStoreLevelDB::keyExistsInObjectStore):
1592         (WebCore::IDBBackingStoreLevelDB::putIndexDataForRecord):
1593         (WebCore::ObjectStoreKeyCursorImpl::clone):
1594         (WebCore::ObjectStoreCursorImpl::clone):
1595         (WebCore::IndexKeyCursorImpl::clone):
1596         (WebCore::IndexCursorImpl::clone):
1597         (WebCore::IDBBackingStoreLevelDB::openObjectStoreCursor):
1598         (WebCore::IDBBackingStoreLevelDB::openObjectStoreKeyCursor):
1599         (WebCore::IDBBackingStoreLevelDB::openIndexKeyCursor):
1600         (WebCore::IDBBackingStoreLevelDB::openIndexCursor):
1601         (WebCore::IDBBackingStoreLevelDB::Transaction::Transaction):
1602         (WebCore::IDBBackingStoreLevelDB::Transaction::begin):
1603         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
1604         (WebCore::IDBBackingStoreLevelDB::RecordIdentifier::RecordIdentifier):
1605
1606         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
1607         (WebCore::IDBCursorBackendLevelDB::IDBCursorBackendLevelDB):
1608         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
1609
1610         (WebCore::IDBCursorBackendLevelDB::create):
1611         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
1612         (WebCore::IDBDatabaseBackendLevelDB::create):
1613         (WebCore::IDBDatabaseBackendLevelDB::IDBDatabaseBackendLevelDB):
1614         (WebCore::IDBDatabaseBackendLevelDB::backingStore):
1615         (WebCore::IDBDatabaseBackendLevelDB::setIndexKeys):
1616         (WebCore::IDBDatabaseBackendLevelDB::createTransaction):
1617         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h:
1618
1619         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
1620         (WebCore::IDBFactoryBackendLevelDB::createTransactionBackend):
1621         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
1622
1623         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp:
1624         (WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::verifyIndexKeys):
1625         (WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::writeIndexKeys):
1626         (WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::addingKeyAllowed):
1627         (WebCore::IDBObjectStoreBackendLevelDB::makeIndexWriters):
1628         (WebCore::IDBObjectStoreBackendLevelDB::generateKey):
1629         (WebCore::IDBObjectStoreBackendLevelDB::updateKeyGenerator):
1630         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h:
1631
1632         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
1633         (WebCore::IDBTransactionBackendLevelDB::create):
1634         (WebCore::IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB):
1635         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
1636
1637         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
1638         (WebCore::GetOperation::perform):
1639         (WebCore::OpenCursorOperation::perform):
1640         (WebCore::CountOperation::perform):
1641         (WebCore::DeleteRangeOperation::perform):
1642         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:
1643         (WebCore::CreateObjectStoreOperation::create):
1644         (WebCore::CreateObjectStoreOperation::CreateObjectStoreOperation):
1645         (WebCore::DeleteObjectStoreOperation::create):
1646         (WebCore::DeleteObjectStoreOperation::DeleteObjectStoreOperation):
1647         (WebCore::CreateIndexOperation::create):
1648         (WebCore::CreateIndexOperation::CreateIndexOperation):
1649         (WebCore::DeleteIndexOperation::create):
1650         (WebCore::DeleteIndexOperation::DeleteIndexOperation):
1651         (WebCore::GetOperation::create):
1652         (WebCore::GetOperation::GetOperation):
1653         (WebCore::PutOperation::create):
1654         (WebCore::PutOperation::PutOperation):
1655         (WebCore::OpenCursorOperation::create):
1656         (WebCore::OpenCursorOperation::OpenCursorOperation):
1657         (WebCore::CountOperation::create):
1658         (WebCore::CountOperation::CountOperation):
1659         (WebCore::DeleteRangeOperation::create):
1660         (WebCore::DeleteRangeOperation::DeleteRangeOperation):
1661         (WebCore::ClearOperation::create):
1662         (WebCore::ClearOperation::ClearOperation):
1663
1664 2013-10-21  Zoltan Horvath  <zoltan@webkit.org>
1665
1666         [CSS Shapes][CSS Regions] Don't apply shape-inside when we have multiple auto-height regions and the height is not resolved
1667         https://bugs.webkit.org/show_bug.cgi?id=123103
1668
1669         Reviewed by David Hyatt.
1670
1671         When we have multiple regions with auto-height, the region's height is not resolved from other elements we can't apply the
1672         the shape on the region. This patch prevents to apply the shape and fixes the behavior for these cases.
1673
1674         Test: fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions.html
1675
1676         * rendering/RenderBlock.cpp:
1677         (WebCore::RenderBlock::layoutShapeInsideInfo):
1678         * rendering/RenderBlockLineLayout.cpp:
1679         (WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread):
1680
1681 2013-10-21  Tim Horton  <timothy_horton@apple.com>
1682
1683         Remote Layer Tree: Backing store should take contentsScale into account
1684         https://bugs.webkit.org/show_bug.cgi?id=123106
1685
1686         Reviewed by Simon Fraser.
1687
1688         * WebCore.exp.in:
1689         Export FloatRect::scale.
1690
1691 2013-10-21  Andreas Kling  <akling@apple.com>
1692
1693         RenderScrollbarPart doesn't need styleWillChange().
1694         <https://webkit.org/b/123113>
1695
1696         We will call setInline(false) in styleDidChange(), there's no need
1697         to override styleWillChange() just to do it twice.
1698
1699         Reviewed by Darin Adler.
1700
1701 2013-10-21  Mihai Maerean  <mmaerean@adobe.com>
1702
1703         [CSS Regions] The layers from the flow thread should be collected under the regions' layers.
1704         https://bugs.webkit.org/show_bug.cgi?id=120457
1705
1706         Reviewed by David Hyatt.
1707
1708         This patch is based on the work of Alexandru Chiculita at https://bugs.webkit.org/attachment.cgi?id=203872&action=review
1709
1710         The composited layers inside the named flow threads are collected as part of the regions (as children of the
1711         GraphicsLayer of the layer that corresponds to the region (which is attached to the parent renderer of
1712         RenderNameFlowFragment)).
1713         When a region displays a layer that needs accelerated compositing we activate the accelerated compositing for
1714         that region too (inside RenderLayerCompositor::computeRegionCompositingRequirements).
1715
1716         This patch has landed before (as http://trac.webkit.org/changeset/156451), but was reverted because
1717         fast/multicol/mixed-positioning-stacking-order.html failed. The fix is inside RenderLayerCompositor::canBeComposited
1718         that only enables compositing for layers inside flow threads that collect the graphics layers under the regions.
1719
1720         Another change from changeset #156451 is that now the region renderers are created as anonymous renderers under
1721         the element that has the flow-from property. When a composited layer is needed for the region, it sits in it's
1722         parent renderer, not in the region renderer (RenderNamedFlowFragment).
1723
1724         Tests: compositing/regions/crash-transform-inside-region.html
1725                compositing/regions/floated-region-with-transformed-child.html
1726                compositing/regions/move-layer-from-one-region-to-another.html
1727                compositing/regions/propagate-region-box-shadow-border-padding-for-video.html
1728                compositing/regions/propagate-region-box-shadow-border-padding.html
1729                compositing/regions/region-as-layer-in-another-flowthread.html
1730                compositing/regions/transform-transparent-positioned-video-inside-region.html
1731                compositing/regions/transformed-layer-inside-transformed-layer.html
1732                compositing/regions/z-index-update.html
1733                compositing/regions/z-index.html
1734
1735         * rendering/FlowThreadController.cpp:
1736         (WebCore::FlowThreadController::updateRenderFlowThreadLayersIfNeeded):
1737         * rendering/RenderElement.cpp:
1738         (WebCore::RenderElement::propagateStyleToAnonymousChildren): Not for RenderFlowThreads, as they are updated
1739         through the RenderView::styleDidChange function.
1740         * rendering/RenderFlowThread.cpp:
1741         (WebCore::RenderFlowThread::layout): When the layout of the flow thread is over (including the 2 phase layout),
1742         we update all the mappings between the layers inside the flow thread and the regions where those layers will be
1743         painted.
1744         (WebCore::RenderFlowThread::hasCompositingRegionDescendant): Whether any of the regions has a compositing descendant.
1745         (WebCore::RenderFlowThread::getLayerListForRegion):
1746         (WebCore::RenderFlowThread::regionForCompositedLayer):
1747         (WebCore::RenderFlowThread::cachedRegionForCompositedLayer):
1748         (WebCore::RenderFlowThread::collectsGraphicsLayersUnderRegions):
1749         (WebCore::RenderFlowThread::updateLayerToRegionMappings): Triggers an update of the layers if a layer has moved
1750         from a region to another since the last update.
1751         (WebCore::RenderFlowThread::updateAllLayerToRegionMappings):
1752         * rendering/RenderFlowThread.h:
1753         * rendering/RenderGeometryMap.cpp:
1754         (WebCore::RenderGeometryMap::pushRenderFlowThread):
1755         * rendering/RenderGeometryMap.h:
1756         * rendering/RenderLayer.cpp:
1757         (WebCore::RenderLayer::paintList):
1758         (WebCore::RenderLayer::enclosingFlowThreadAncestor):
1759         (WebCore::RenderLayer::isFlowThreadCollectingGraphicsLayersUnderRegions):
1760         (WebCore::RenderLayer::hitTestList):
1761         (WebCore::RenderLayer::calculateLayerBounds): When we calculate the bounds of the RenderView, we ignore those
1762         flow threads that collect the graphics layers under the regions.
1763         (WebCore::RenderLayer::dirtyZOrderLists):
1764         (WebCore::RenderLayer::dirtyNormalFlowList):
1765         * rendering/RenderLayer.h:
1766         * rendering/RenderLayerBacking.cpp:
1767         (WebCore::RenderLayerBacking::shouldClipCompositedBounds): Not if it's a flow thread that collects the graphics
1768         layers under the regions
1769         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Now adjusts the ancestorCompositingBounds for the FlowThread.
1770         (WebCore::RenderLayerBacking::adjustAncestorCompositingBoundsForFlowThread): Make sure that the region propagates
1771         its borders, paddings, outlines or box-shadows to layers inside it.
1772         (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
1773         * rendering/RenderLayerBacking.h:
1774         * rendering/RenderLayerCompositor.cpp:
1775         (WebCore::RenderLayerCompositor::computeCompositingRequirements): Now calls computeRegionCompositingRequirements.
1776         (WebCore::RenderLayerCompositor::computeRegionCompositingRequirements):
1777         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Do not iterate the RenderFlowThread directly if
1778         we are going to collect the composited layers as part of regions.
1779         (WebCore::RenderLayerCompositor::rebuildRegionCompositingLayerTree):
1780         (WebCore::RenderLayerCompositor::canBeComposited): CSS Regions flow threads do not need to be composited as we
1781         use composited RenderRegions to render the background of the RenderFlowThread.
1782         (WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason): If it's a container of a css region.
1783         * rendering/RenderLayerCompositor.h:
1784         * rendering/RenderMultiColumnSet.cpp:
1785         (WebCore::RenderMultiColumnSet::adjustRegionBoundsFromFlowThreadPortionRect):
1786         * rendering/RenderMultiColumnSet.h:
1787         * rendering/RenderNamedFlowFragment.h:
1788         (WebCore::RenderNamedFlowFragment::layerOwner): When the content inside the region requires the region to have a
1789         layer, the layer will be created on the region's parent renderer instead. This method returns that renderer
1790         holding the layer. The return value may be null.
1791         * rendering/RenderNamedFlowThread.cpp:
1792         (WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
1793         (WebCore::RenderNamedFlowThread::nextRendererForNode):
1794         (WebCore::RenderNamedFlowThread::previousRendererForNode):
1795         (WebCore::RenderNamedFlowThread::addFlowChild):
1796         (WebCore::RenderNamedFlowThread::removeFlowChild):
1797         (WebCore::RenderNamedFlowThread::collectsGraphicsLayersUnderRegions):
1798         * rendering/RenderNamedFlowThread.h: m_flowThreadChildList is now allocated through an OwnPtr to keep the render
1799         arena under the size limit.
1800         * rendering/RenderRegion.cpp:
1801         (WebCore::RenderRegion::adjustRegionBoundsFromFlowThreadPortionRect):
1802         * rendering/RenderRegion.h:
1803         (WebCore::toRenderRegion):
1804         * rendering/RenderTreeAsText.cpp:
1805         (WebCore::writeLayers):
1806         * WebCore.exp.in: WebCore::RenderLayer::isFlowThreadCollectingGraphicsLayersUnderRegions
1807
1808 2013-10-21  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1809
1810         Fixing mediastream debug build
1811         https://bugs.webkit.org/show_bug.cgi?id=123104
1812
1813         Reviewed by Andreas Kling.
1814
1815         No new tests needed.
1816
1817         * Modules/mediastream/RTCDTMFToneChangeEvent.cpp:
1818         (WebCore::RTCDTMFToneChangeEvent::create):
1819
1820 2013-10-21  Andreas Kling  <akling@apple.com>
1821
1822         Merge RenderListMarker::styleWillChange() into styleDidChange().
1823         <https://webkit.org/b/123098>
1824
1825         If the marker's list-style-type or list-style-position changed, we
1826         need to dirty the layout. Move this logic to styleDidChange() so we
1827         can get rid of one styleWillChange() overload.
1828
1829         Reviewed by Antti Koivisto.
1830
1831 2013-10-21  Mihai Maerean  <mmaerean@adobe.com>
1832
1833         [CSS Regions] Fix WHITESPACE issues in the CSS grammar.
1834         https://bugs.webkit.org/show_bug.cgi?id=123082
1835
1836         Reviewed by Andreas Kling.
1837
1838         This is a port of Rune Lillesveen's patch from https://codereview.chromium.org/25607005
1839
1840         Fix WHITESPACE issues in the CSS grammar.
1841
1842         A single WHITESPACE token consumes consecutive spaces, but does not consume
1843         spaces separated by comments. That means S* and S+ in CSS grammars need to
1844         accept multiple WHITESPACE tokens. Additionally, white spaces are not
1845         mandatory to separate an @-symbol and the rest of the prelude.
1846
1847         Use space non-terminal instead of WHITESPACE for S+ in calc expressions.
1848
1849         Use maybe_space non-terminal instead of WHITESPACE for S* after @-webkit-filter
1850         and @-webkit-region.
1851
1852         Tests: fast/css/calc-comments-allowed.html
1853                fast/regions/webkit-region-syntax-space.html
1854
1855         * css/CSSGrammar.y.in:
1856
1857 2013-10-21  Anton Obzhirov  <a.obzhirov@samsung.com>
1858
1859         [ATK] Use atk_object_notify_state_change instead of manually emitting signals
1860         https://bugs.webkit.org/show_bug.cgi?id=122968
1861
1862         Reviewed by Mario Sanchez Prada.
1863
1864         Refactor emitting "state-change" event to use atk_object_notify_state_change
1865         instead of using g_signal_emit_by_name.
1866
1867         * accessibility/atk/AXObjectCacheAtk.cpp:
1868         (WebCore::notifyChildrenSelectionChange):
1869         (WebCore::AXObjectCache::postPlatformNotification):
1870         (WebCore::AXObjectCache::frameLoadingEventPlatformNotification):
1871         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
1872         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
1873         (webkitAccessibleDetach):
1874         * editing/atk/FrameSelectionAtk.cpp:
1875         (WebCore::maybeEmitTextFocusChange):
1876
1877 2013-10-21  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1878
1879         Make TYPE_CASTS_BASE more flexible
1880         https://bugs.webkit.org/show_bug.cgi?id=122951
1881
1882         Reviewed by Andreas Kling.
1883
1884         TYPE_CASTS_BASE is being used by node|element type casts. However, it is difficult
1885         to be used by other type casts. For instance, CSSValue, Accessibility and so on.
1886         This patch modifies TYPE_CASTS_BASE which can support other type casts.
1887
1888         Besides TYPE_CASTS_BASE body is moved from node.h to Assertions.h.
1889
1890         No new tests, no behavior changes.
1891
1892         * dom/Document.h:
1893         * dom/Node.h:
1894
1895 2013-10-21  Santosh Mahto  <santosh.ma@samsung.com>
1896
1897         ASSERTION FAILED: !style->propertyIsImportant(propertyID) in WebCore::setTextDecorationProperty
1898         https://bugs.webkit.org/show_bug.cgi?id=122097
1899
1900         Reviewed by Ryosuke Niwa.
1901
1902         When remove format command is called we pushdown the ancestor style
1903         down to its children. Currently applying inline style to iframe
1904         while pushing down style which causes iframe to be reinserted in tree and
1905         triggres again subframe loading which repeats everytime and finally
1906         crash happens. So we should avoid applying inline style to iframe
1907         element as it doesnot reflect in its content while pushing down style
1908         on it.
1909
1910         And ASSERT call has been removed from setTextDecoration property as
1911         the scenario is perfectly valid case.
1912
1913         Test: editing/execCommand/remove-format-textdecoration-in-iframe.html
1914
1915         * editing/ApplyStyleCommand.cpp:
1916         (WebCore::ApplyStyleCommand::applyInlineStyleToPushDown): Return if
1917         element is iframe.
1918         * editing/EditingStyle.cpp:
1919         (WebCore::StyleChange::setTextDecorationProperty): Remove ASSERT.
1920
1921 2013-10-20  Sam Weinig  <sam@webkit.org>
1922
1923         Move m_lineBoxes from RenderBlock to RenderBlockFlow (Part 5)
1924         https://bugs.webkit.org/show_bug.cgi?id=122969
1925
1926         Reviewed by Antti Koivisto.
1927
1928         - Move m_lineBoxes to RenderBlockFlow.
1929
1930         * accessibility/AccessibilityRenderObject.cpp:
1931         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
1932         * rendering/HitTestResult.cpp:
1933         (WebCore::HitTestResult::innerTextIfTruncated):
1934         * rendering/RenderBlock.cpp:
1935         (WebCore::RenderBlock::RenderBlock):
1936         (WebCore::RenderBlock::willBeDestroyed):
1937         (WebCore::RenderBlock::deleteLineBoxTree):
1938         (WebCore::RenderBlock::isSelfCollapsingBlock):
1939         (WebCore::RenderBlock::removeFromDelayedUpdateScrollInfoSet):
1940         (WebCore::RenderBlock::paintContents):
1941         (WebCore::blockDirectionOffset):
1942         (WebCore::inlineDirectionOffset):
1943         (WebCore::RenderBlock::inlineSelectionGaps):
1944         (WebCore::RenderBlock::hitTestContents):
1945         (WebCore::positionForPointRespectingEditingBoundaries):
1946         (WebCore::RenderBlock::positionForPointWithInlineChildren):
1947         (WebCore::RenderBlock::firstLineBoxBaseline):
1948         (WebCore::RenderBlock::inlineBlockBaseline):
1949         (WebCore::RenderBlock::addFocusRingRectsForInlineChildren):
1950         (WebCore::RenderBlock::addFocusRingRects):
1951         (WebCore::RenderBlock::showLineTreeAndMark):
1952         * rendering/RenderBlock.h:
1953         (WebCore::RenderBlock::addOverflowFromInlineChildren):
1954         (WebCore::RenderBlock::hasInlineBoxChildren):
1955         (WebCore::RenderBlock::paintInlineChildren):
1956         (WebCore::RenderBlock::hitTestInlineChildren):
1957         * rendering/RenderBlockFlow.cpp:
1958         (WebCore::RenderBlockFlow::RenderBlockFlow):
1959         (WebCore::RenderBlockFlow::willBeDestroyed):
1960         (WebCore::RenderBlockFlow::deleteLineBoxTree):
1961         (WebCore::RenderBlockFlow::hitTestInlineChildren):
1962         (WebCore::RenderBlockFlow::adjustForBorderFit):
1963         (WebCore::RenderBlockFlow::fitBorderToLinesIfNeeded):
1964         (WebCore::RenderBlockFlow::markLinesDirtyInBlockRange):
1965         (WebCore::RenderBlockFlow::firstLineBoxBaseline):
1966         (WebCore::RenderBlockFlow::inlineBlockBaseline):
1967         (WebCore::RenderBlockFlow::inlineSelectionGaps):
1968         (WebCore::RenderBlockFlow::positionForBox):
1969         (WebCore::RenderBlockFlow::positionForPointWithInlineChildren):
1970         (WebCore::RenderBlockFlow::addFocusRingRectsForInlineChildren):
1971         (WebCore::RenderBlockFlow::paintInlineChildren):
1972         (WebCore::RenderBlockFlow::relayoutForPagination):
1973         (WebCore::RenderBlockFlow::showLineTreeAndMark):
1974         * rendering/RenderBlockFlow.h:
1975         (WebCore::RenderBlockFlow::lineBoxes):
1976         (WebCore::RenderBlockFlow::firstLineBox):
1977         (WebCore::RenderBlockFlow::lastLineBox):
1978         (WebCore::RenderBlockFlow::firstRootBox):
1979         (WebCore::RenderBlockFlow::lastRootBox):
1980         * rendering/RenderBlockLineLayout.cpp:
1981         (WebCore::RenderBlockFlow::addOverflowFromInlineChildren):
1982         * rendering/RootInlineBox.cpp:
1983         (WebCore::RootInlineBox::selectionTopAdjustedForPrecedingBlock):
1984
1985 2013-10-20  Andreas Kling  <akling@apple.com>
1986
1987         Avoid unnecessary vector copy in AnimationController event dispatch.
1988         <https://webkit.org/b/122994>
1989
1990         Use Vector's move constructor instead of making a copy of the pending
1991         events queue and then clearing it.
1992
1993         Reviewed by Simon Fraser.
1994
1995 2013-10-19  Brady Eidson  <beidson@apple.com>
1996
1997         Add abstract IDBBackingStoreInterface, use it to get IDBDatabaseBackendLevelDB closer to going cross-platform
1998         https://bugs.webkit.org/show_bug.cgi?id=123074
1999
2000         Reviewed by Andreas Kling.
2001
2002         * Modules/indexeddb/IDBBackingStoreInterface.h: Added.
2003         (WebCore::IDBBackingStoreInterface::~IDBBackingStoreInterface):
2004         (WebCore::IDBBackingStoreInterface::Transaction::~Transaction):
2005
2006         * Modules/indexeddb/IDBTransactionBackendInterface.h:
2007
2008         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
2009         (WebCore::IDBBackingStoreLevelDB::updateIDBDatabaseIntVersion):
2010         (WebCore::IDBBackingStoreLevelDB::createObjectStore):
2011         (WebCore::IDBBackingStoreLevelDB::deleteObjectStore):
2012         (WebCore::IDBBackingStoreLevelDB::getRecord):
2013         (WebCore::IDBBackingStoreLevelDB::putRecord):
2014         (WebCore::IDBBackingStoreLevelDB::clearObjectStore):
2015         (WebCore::IDBBackingStoreLevelDB::deleteRecord):
2016         (WebCore::IDBBackingStoreLevelDB::getKeyGeneratorCurrentNumber):
2017         (WebCore::IDBBackingStoreLevelDB::maybeUpdateKeyGeneratorCurrentNumber):
2018         (WebCore::IDBBackingStoreLevelDB::keyExistsInObjectStore):
2019         (WebCore::IDBBackingStoreLevelDB::createIndex):
2020         (WebCore::IDBBackingStoreLevelDB::deleteIndex):
2021         (WebCore::IDBBackingStoreLevelDB::putIndexDataForRecord):
2022         (WebCore::IDBBackingStoreLevelDB::findKeyInIndex):
2023         (WebCore::IDBBackingStoreLevelDB::getPrimaryKeyViaIndex):
2024         (WebCore::IDBBackingStoreLevelDB::keyExistsInIndex):
2025         (WebCore::IDBBackingStoreLevelDB::openObjectStoreCursor):
2026         (WebCore::IDBBackingStoreLevelDB::openObjectStoreKeyCursor):
2027         (WebCore::IDBBackingStoreLevelDB::openIndexKeyCursor):
2028         (WebCore::IDBBackingStoreLevelDB::openIndexCursor):
2029         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
2030         (WebCore::IDBBackingStoreLevelDB::Transaction::reset):
2031         (WebCore::IDBBackingStoreLevelDB::Transaction::levelDBTransactionFrom):
2032
2033         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
2034         (WebCore::IDBCursorBackendLevelDB::deleteFunction):
2035         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
2036
2037         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp:
2038         (WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::verifyIndexKeys):
2039         (WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::writeIndexKeys):
2040         (WebCore::IDBObjectStoreBackendLevelDB::IndexWriter::addingKeyAllowed):
2041         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h:
2042
2043         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
2044         (WebCore::IDBTransactionBackendLevelDB::backingStoreTransaction):
2045
2046         * WebCore.xcodeproj/project.pbxproj:
2047         * GNUmakefile.list.am:
2048
2049 2013-10-20  Andreas Kling  <akling@apple.com>
2050
2051         Use PassRef for StyleSheetContents.
2052         <https://webkit.org/b/123083>
2053
2054         Let functions that return newly-constructed StyleSheetContents
2055         objects vend PassRef<StyleSheetContents> instead of PassRefPtr.
2056
2057         Updated functions that take StyleSheetContents in arguments
2058         accordingly. And CSSStyleSheet now has a Ref internally. Woo!
2059
2060         Reviewed by Antti Koivisto.
2061
2062 2013-10-20  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2063
2064         Removing "unused parameter" compiling warnings from WebKit2 and WebCore
2065         https://bugs.webkit.org/show_bug.cgi?id=123075
2066
2067         Reviewed by Andreas Kling.
2068
2069         No new tests needed.
2070
2071         * Modules/mediastream/RTCDTMFToneChangeEvent.cpp:
2072         (WebCore::RTCDTMFToneChangeEvent::create):
2073         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
2074         (lineAtPositionForAtkBoundary):
2075         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2076         (WebCore::MediaPlayerPrivateGStreamer::processTableOfContentsEntry):
2077
2078 2013-10-19  Andreas Kling  <akling@apple.com>
2079
2080         Use PassRef for constructing StyleRules.
2081         <https://webkit.org/b/123072>
2082
2083         Let functions that return newly-constructed StyleRuleFoo objects
2084         vend PassRef<StyleRuleFoo> instead of PassRefPtr.
2085
2086         Since StyleRuleBase::copy() has to return something, we can't rely
2087         on ASSERT_NOT_REACHED() + return nullptr anymore, so I've replaced
2088         those with CRASH(). No call sites actually handled null anyway.
2089
2090         Reviewed by Sam Weinig.
2091
2092 2013-10-19  Jer Noble  <jer.noble@apple.com>
2093
2094         Unreviewed roll out of r157695; broke Mac builds.
2095
2096         * Configurations/FeatureDefines.xcconfig:
2097
2098 2013-10-07  Jer Noble  <jer.noble@apple.com>
2099
2100         [MSE] [Mac] Enable MediaSource on the Mac
2101         https://bugs.webkit.org/show_bug.cgi?id=122484
2102
2103         Reviewed by Darin Adler.
2104
2105         Enable ENABLE_MEDIA_SOURCE.
2106
2107         * Configurations/FeatureDefines.xcconfig:
2108
2109 2013-10-19  Sam Weinig  <sam@webkit.org>
2110
2111         CTTE: Tighten up type usage around InputType::innerTextElement()
2112         https://bugs.webkit.org/show_bug.cgi?id=123078
2113
2114         Reviewed by Anders Carlsson.
2115
2116         * editing/TextIterator.cpp:
2117         (WebCore::TextIterator::handleReplacedElement):
2118         * html/HTMLElement.h:
2119         (WebCore::HTMLElement::isTextControlInnerTextElement):
2120         * html/HTMLInputElement.cpp:
2121         (WebCore::HTMLInputElement::innerTextElement):
2122         * html/HTMLInputElement.h:
2123         * html/HTMLTextAreaElement.cpp:
2124         (WebCore::HTMLTextAreaElement::innerTextElement):
2125         * html/HTMLTextAreaElement.h:
2126         * html/HTMLTextFormControlElement.cpp:
2127         (WebCore::hasVisibleTextArea):
2128         (WebCore::HTMLTextFormControlElement::selection):
2129         (WebCore::HTMLTextFormControlElement::innerTextValue):
2130         (WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks):
2131         * html/HTMLTextFormControlElement.h:
2132         * html/InputType.h:
2133         (WebCore::InputType::innerTextElement):
2134         * html/TextFieldInputType.cpp:
2135         (WebCore::TextFieldInputType::forwardEvent):
2136         (WebCore::TextFieldInputType::innerTextElement):
2137         * html/TextFieldInputType.h:
2138         * html/shadow/TextControlInnerElements.cpp:
2139         (WebCore::TextControlInnerTextElement::renderer):
2140         * html/shadow/TextControlInnerElements.h:
2141         (WebCore::isTextControlInnerTextElement):
2142         * rendering/RenderObject.h:
2143         (WebCore::RenderObject::isTextControlInnerBlock):
2144         * rendering/RenderTextControl.cpp:
2145         (WebCore::RenderTextControl::innerTextElement):
2146         (WebCore::RenderTextControl::styleDidChange):
2147         (WebCore::RenderTextControl::textBlockLogicalWidth):
2148         (WebCore::RenderTextControl::updateFromElement):
2149         (WebCore::RenderTextControl::computeLogicalHeight):
2150         (WebCore::RenderTextControl::hitInnerTextElement):
2151         * rendering/RenderTextControl.h:
2152         * rendering/RenderTextControlSingleLine.cpp:
2153         (WebCore::RenderTextControlSingleLine::layout):
2154         (WebCore::RenderTextControlSingleLine::styleDidChange):
2155         (WebCore::RenderTextControlSingleLine::autoscroll):
2156         (WebCore::RenderTextControlSingleLine::scroll):
2157         (WebCore::RenderTextControlSingleLine::logicalScroll):
2158         * rendering/RenderTextControlSingleLine.h:
2159         (WebCore::toRenderTextControlInnerBlock):
2160
2161 2013-10-19  Sam Weinig  <sam@webkit.org>
2162
2163         Move m_lineBoxes from RenderBlock to RenderBlockFlow (Part 4)
2164         https://bugs.webkit.org/show_bug.cgi?id=122969
2165
2166         Reviewed by Andreas Kling.
2167
2168         - Fix classes derived from RenderBlockFlow that were still calling
2169           up to RenderBlock rather than RenderBlockFlow.
2170
2171         * rendering/RenderDetailsMarker.cpp:
2172         (WebCore::RenderDetailsMarker::paint):
2173         * rendering/RenderFieldset.cpp:
2174         (WebCore::RenderFieldset::computePreferredLogicalWidths):
2175         (WebCore::RenderFieldset::paintBoxDecorations):
2176         (WebCore::RenderFieldset::paintMask):
2177         * rendering/RenderFileUploadControl.cpp:
2178         (WebCore::RenderFileUploadControl::paintObject):
2179         * rendering/RenderFlowThread.cpp:
2180         (WebCore::RenderFlowThread::styleDidChange):
2181         (WebCore::RenderFlowThread::layout):
2182         (WebCore::RenderFlowThread::nodeAtPoint):
2183         * rendering/RenderFullScreen.cpp:
2184         (RenderFullScreenPlaceholder::willBeDestroyed):
2185         * rendering/RenderListItem.cpp:
2186         (WebCore::RenderListItem::styleDidChange):
2187         * rendering/RenderMultiColumnBlock.cpp:
2188         (WebCore::RenderMultiColumnBlock::styleDidChange):
2189         (WebCore::RenderMultiColumnBlock::updateLogicalWidthAndColumnWidth):
2190         (WebCore::RenderMultiColumnBlock::addChild):
2191         * rendering/RenderProgress.cpp:
2192         (WebCore::RenderProgress::updateFromElement):
2193         * rendering/RenderRuby.cpp:
2194         (WebCore::RenderRubyAsBlock::styleDidChange):
2195         (WebCore::RenderRubyAsBlock::addChild):
2196         (WebCore::RenderRubyAsBlock::removeChild):
2197         * rendering/RenderRubyRun.cpp:
2198         (WebCore::RenderRubyRun::rubyBaseSafe):
2199         (WebCore::RenderRubyRun::addChild):
2200         (WebCore::RenderRubyRun::removeChild):
2201         (WebCore::RenderRubyRun::layout):
2202         * rendering/RenderRubyText.cpp:
2203         (WebCore::RenderRubyText::textAlignmentForLine):
2204         (WebCore::RenderRubyText::adjustInlineDirectionLineBounds):
2205         * rendering/RenderTableCaption.cpp:
2206         (WebCore::RenderTableCaption::willBeRemovedFromTree):
2207         * rendering/RenderTableCell.cpp:
2208         (WebCore::RenderTableCell::willBeRemovedFromTree):
2209         (WebCore::RenderTableCell::computePreferredLogicalWidths):
2210         (WebCore::RenderTableCell::offsetFromContainer):
2211         (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
2212         (WebCore::RenderTableCell::computeRectForRepaint):
2213         (WebCore::RenderTableCell::styleDidChange):
2214         (WebCore::RenderTableCell::borderLeft):
2215         (WebCore::RenderTableCell::borderRight):
2216         (WebCore::RenderTableCell::borderTop):
2217         (WebCore::RenderTableCell::borderBottom):
2218         (WebCore::RenderTableCell::borderStart):
2219         (WebCore::RenderTableCell::borderEnd):
2220         (WebCore::RenderTableCell::borderBefore):
2221         (WebCore::RenderTableCell::borderAfter):
2222         (WebCore::RenderTableCell::paint):
2223         * rendering/RenderTextControl.cpp:
2224         (WebCore::RenderTextControl::styleDidChange):
2225         * rendering/RenderTextControlSingleLine.cpp:
2226         (WebCore::RenderTextControlSingleLine::scrollWidth):
2227         (WebCore::RenderTextControlSingleLine::scrollHeight):
2228         (WebCore::RenderTextControlSingleLine::scrollLeft):
2229         (WebCore::RenderTextControlSingleLine::scrollTop):
2230         (WebCore::RenderTextControlSingleLine::scroll):
2231         (WebCore::RenderTextControlSingleLine::logicalScroll):
2232         * rendering/RenderTextTrackCue.cpp:
2233         (WebCore::RenderTextTrackCue::layout):
2234         * rendering/RenderView.cpp:
2235         (WebCore::RenderView::layoutContent):
2236         (WebCore::RenderView::addChild):
2237         (WebCore::RenderView::visualOverflowRect):
2238         (WebCore::RenderView::styleDidChange):
2239         * rendering/svg/RenderSVGBlock.cpp:
2240         (WebCore::RenderSVGBlock::setStyle):
2241         (WebCore::RenderSVGBlock::updateFromStyle):
2242         (WebCore::RenderSVGBlock::willBeDestroyed):
2243         (WebCore::RenderSVGBlock::styleWillChange):
2244         (WebCore::RenderSVGBlock::styleDidChange):
2245         * rendering/svg/SVGTextQuery.cpp:
2246         (WebCore::flowBoxForRenderer):
2247
2248 2013-10-19  Sam Weinig  <sam@webkit.org>
2249
2250         Move m_lineBoxes from RenderBlock to RenderBlockFlow (Part 3)
2251         https://bugs.webkit.org/show_bug.cgi?id=122969
2252
2253         Reviewed by Andreas Kling.
2254
2255         - Move containsNonZeroBidiLevel to RenderBlockFlow.
2256
2257         * editing/Editor.cpp:
2258         (WebCore::Editor::hasBidiSelection):
2259         * rendering/RenderBlock.cpp:
2260         * rendering/RenderBlock.h:
2261         * rendering/RenderBlockFlow.cpp:
2262         (WebCore::RenderBlockFlow::containsNonZeroBidiLevel):
2263         * rendering/RenderBlockFlow.h:
2264
2265 2013-10-18  Sam Weinig  <sam@webkit.org>
2266
2267         Move m_lineBoxes from RenderBlock to RenderBlockFlow (Part 2)
2268         https://bugs.webkit.org/show_bug.cgi?id=122969
2269
2270         Reviewed by Antti Koivisto.
2271
2272         - Move truncation (e.g. line clamp and ellipse) support to RenderBlockFlow.
2273
2274         * rendering/EllipsisBox.cpp:
2275         (WebCore::EllipsisBox::EllipsisBox):
2276         (WebCore::EllipsisBox::paint):
2277         (WebCore::EllipsisBox::markupBox):
2278         (WebCore::EllipsisBox::selectionRect):
2279         (WebCore::EllipsisBox::paintSelection):
2280         (WebCore::EllipsisBox::nodeAtPoint):
2281         * rendering/EllipsisBox.h:
2282         * rendering/RenderBlock.cpp:
2283         * rendering/RenderBlock.h:
2284         * rendering/RenderBlockFlow.cpp:
2285         (WebCore::shouldCheckLines):
2286         (WebCore::RenderBlockFlow::lineAtIndex):
2287         (WebCore::RenderBlockFlow::lineCount):
2288         (WebCore::getHeightForLineCount):
2289         (WebCore::RenderBlockFlow::heightForLineCount):
2290         (WebCore::RenderBlockFlow::clearTruncation):
2291         * rendering/RenderBlockFlow.h:
2292         * rendering/RenderDeprecatedFlexibleBox.cpp:
2293         (WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):
2294         (WebCore::RenderDeprecatedFlexibleBox::clearLineClamp):
2295         * rendering/RootInlineBox.cpp:
2296         (WebCore::RootInlineBox::placeEllipsis):
2297
2298 2013-10-19  Andreas Kling  <akling@apple.com>
2299
2300         StyleResolver should deal in PassRef<RenderStyle> where possible.
2301         <https://webkit.org/b/123061>
2302
2303         Make StyleResolver functions that returned or took RenderStyles
2304         by PassRefPtr use PassRef instead where possible.
2305
2306         Reviewed by Anders Carlsson.
2307
2308 2013-10-19  Brady Eidson  <beidson@apple.com>
2309
2310         Global rename of the class "IDBBackingStore" to "IDBBackingStoreLevelDB"
2311
2312         Rubberstamped by Anders Carlsson (And Andreas Kling wanted to, but he wasn’t around)
2313
2314         * Modules/indexeddb/IDBTransactionBackendInterface.h:
2315         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
2316         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.h:
2317         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
2318         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.h:
2319         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
2320         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h:
2321         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
2322         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
2323         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp:
2324         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h:
2325         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
2326         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
2327         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp:
2328         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h:
2329
2330 2013-10-19  peavo@outlook.com  <peavo@outlook.com>
2331
2332         [WinCairo] Link fails.
2333         https://bugs.webkit.org/show_bug.cgi?id=123019
2334
2335         Reviewed by Darin Adler.
2336
2337         Added empty CertificateInfo implementation for Curl.
2338
2339         * WebCore.vcxproj/WebCore.vcxproj:
2340         * WebCore.vcxproj/WebCore.vcxproj.filters:
2341         * platform/network/curl/CertificateInfoCurl.cpp: Added.
2342         (WebCore::CertificateInfo::CertificateInfo):
2343         (WebCore::CertificateInfo::~CertificateInfo):
2344
2345 2013-10-19  Filip Pizlo  <fpizlo@apple.com>
2346
2347         libWebCoreTestSupport should have explicit exports
2348         https://bugs.webkit.org/show_bug.cgi?id=123053
2349
2350         Reviewed by Oliver Hunt.
2351
2352         No new tests because there is no change in behavior.
2353
2354         * Configurations/WebCoreTestSupport.xcconfig:
2355         * testing/js/WebCoreTestSupport.h:
2356
2357 2013-10-18  Andreas Kling  <akling@apple.com>
2358
2359         Start passing RenderStyle around with PassRef.
2360         <https://webkit.org/b/123051>
2361
2362         Made the RenderStyle::create methods return PassRef<RenderStyle>
2363         and RenderElement::setStyle take a PassRef<RenderStyle>.
2364
2365         Reviewed by Darin Adler.
2366
2367 2013-10-18  Sam Weinig  <sam@webkit.org>
2368
2369         Move m_lineBoxes from RenderBlock to RenderBlockFlow (Part 1)
2370         https://bugs.webkit.org/show_bug.cgi?id=122969
2371
2372         Reviewed by Dan Bernstein.
2373
2374         - Make the RootInlineBox constructor take a RenderBlockFlow.
2375         - Move createRootInlineBox, and createAndAppendRootInlineBox to RenderBlockFlow.
2376
2377         * editing/VisibleUnits.cpp:
2378         (WebCore::absoluteLineDirectionPointToLocalPointInBlock):
2379         * rendering/InlineBox.cpp:
2380         (WebCore::InlineBox::locationIncludingFlipping):
2381         (WebCore::InlineBox::flipForWritingMode):
2382         * rendering/InlineFlowBox.cpp:
2383         (WebCore::InlineFlowBox::placeBoxRangeInInlineDirection):
2384         * rendering/RenderBlock.cpp:
2385         * rendering/RenderBlock.h:
2386         * rendering/RenderBlockFlow.h:
2387         * rendering/RenderBlockLineLayout.cpp:
2388         (WebCore::RenderBlockFlow::createRootInlineBox):
2389         (WebCore::RenderBlockFlow::createAndAppendRootInlineBox):
2390         (WebCore::createInlineBoxForRenderer):
2391         (WebCore::RenderBlockFlow::createLineBoxes):
2392         * rendering/RenderBox.cpp:
2393         (WebCore::RenderBox::positionLineBox):
2394         * rendering/RenderListMarker.cpp:
2395         (WebCore::RenderListMarker::localSelectionRect):
2396         * rendering/RenderReplaced.cpp:
2397         (WebCore::RenderReplaced::localSelectionRect):
2398         * rendering/RootInlineBox.cpp:
2399         (WebCore::RootInlineBox::RootInlineBox):
2400         (WebCore::RootInlineBox::rendererLineBoxes):
2401         (WebCore::RootInlineBox::placeEllipsis):
2402         (WebCore::RootInlineBox::containingRegion):
2403         (WebCore::RootInlineBox::setContainingRegion):
2404         (WebCore::RootInlineBox::alignBoxesInBlockDirection):
2405         (WebCore::RootInlineBox::beforeAnnotationsAdjustment):
2406         (WebCore::RootInlineBox::lineSnapAdjustment):
2407         (WebCore::RootInlineBox::lineSelectionGap):
2408         (WebCore::RootInlineBox::computeCaretRect):
2409         (WebCore::RootInlineBox::selectionTop):
2410         (WebCore::RootInlineBox::selectionTopAdjustedForPrecedingBlock):
2411         (WebCore::RootInlineBox::selectionBottom):
2412         (WebCore::RootInlineBox::blockDirectionPointInLine):
2413         (WebCore::RootInlineBox::blockFlow):
2414         (WebCore::RootInlineBox::closestLeafChildForPoint):
2415         (WebCore::RootInlineBox::removeLineBoxFromRenderObject):
2416         (WebCore::RootInlineBox::extractLineBoxFromRenderObject):
2417         (WebCore::RootInlineBox::attachLineBoxToRenderObject):
2418         * rendering/RootInlineBox.h:
2419         * rendering/TrailingFloatsRootInlineBox.h:
2420         * rendering/svg/RenderSVGText.h:
2421         (WebCore::toRenderSVGText):
2422         * rendering/svg/SVGRootInlineBox.cpp:
2423         (WebCore::SVGRootInlineBox::SVGRootInlineBox):
2424         (WebCore::SVGRootInlineBox::renderSVGText):
2425         (WebCore::SVGRootInlineBox::paint):
2426         (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
2427         (WebCore::SVGRootInlineBox::layoutRootBox):
2428         * rendering/svg/SVGRootInlineBox.h:
2429
2430 2013-10-18  Tim Horton  <timothy_horton@apple.com>
2431
2432         Remote Layer Tree: Double-buffering and minimization of repaints
2433         https://bugs.webkit.org/show_bug.cgi?id=123043
2434
2435         Reviewed by Simon Fraser.
2436
2437         No new tests, not yet testable.
2438
2439         * WebCore.exp.in:
2440         Export one version of drawLayerContents and Region::contains.
2441
2442         * WebCore.xcodeproj/project.pbxproj:
2443         Expose WebLayer.h as a private header.
2444
2445         * platform/graphics/mac/WebLayer.h:
2446         Clean up this header, and add a new drawLayerContents that can operate without a CALayer.
2447
2448         * platform/graphics/mac/WebLayer.mm:
2449         (WebCore::drawLayerContents):
2450         Split drawLayerContents into one method that acquires properties CALayer,
2451         and one that just does the painting.
2452
2453 2013-10-18  Anders Carlsson  <andersca@apple.com>
2454
2455         Try to fix the Lion build.
2456
2457         * bindings/objc/ObjCNodeFilterCondition.h:
2458
2459 2013-10-18  Daniel Bates  <dabates@apple.com>
2460
2461         [iOS] Upstream WebSafe{GCActivityCallback, IncrementalSweeper}IOS
2462         https://bugs.webkit.org/show_bug.cgi?id=123049
2463
2464         Reviewed by Mark Hahnenberg.
2465
2466         * WebCore.xcodeproj/project.pbxproj:
2467         * platform/ios/WebSafeGCActivityCallbackIOS.h: Added.
2468         * platform/ios/WebSafeIncrementalSweeperIOS.h: Added.
2469
2470 2013-10-18  Anders Carlsson  <andersca@apple.com>
2471
2472         Remove spaces between template angle brackets
2473         https://bugs.webkit.org/show_bug.cgi?id=123040
2474
2475         Reviewed by Andreas Kling.
2476
2477         * Modules/encryptedmedia/MediaKeySession.h:
2478         * Modules/encryptedmedia/MediaKeys.h:
2479         * Modules/geolocation/Geolocation.h:
2480         * Modules/geolocation/GeolocationController.cpp:
2481         (WebCore::GeolocationController::positionChanged):
2482         (WebCore::GeolocationController::errorOccurred):
2483         * Modules/geolocation/GeolocationController.h:
2484         * Modules/indexeddb/IDBCallbacks.h:
2485         * Modules/indexeddb/IDBDatabase.h:
2486         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
2487         * Modules/indexeddb/IDBEventDispatcher.cpp:
2488         (WebCore::IDBEventDispatcher::dispatch):
2489         * Modules/indexeddb/IDBEventDispatcher.h:
2490         * Modules/indexeddb/IDBKey.h:
2491         * Modules/indexeddb/IDBObjectStore.h:
2492         * Modules/indexeddb/IDBPendingTransactionMonitor.cpp:
2493         * Modules/indexeddb/IDBRequest.cpp:
2494         (WebCore::IDBRequest::dispatchEvent):
2495         * Modules/indexeddb/IDBRequest.h:
2496         (WebCore::IDBRequest::onSuccessWithPrefetch):
2497         * Modules/indexeddb/IDBTransaction.cpp:
2498         (WebCore::IDBTransaction::dispatchEvent):
2499         * Modules/indexeddb/IDBTransaction.h:
2500         * Modules/mediacontrols/MediaControlsHost.cpp:
2501         (WebCore::MediaControlsHost::sortedTrackListForMenu):
2502         * Modules/mediacontrols/MediaControlsHost.h:
2503         * Modules/mediasource/MediaSource.cpp:
2504         (WebCore::MediaSource::activeRanges):
2505         * Modules/mediasource/MediaSource.h:
2506         * Modules/mediasource/MediaSourceBase.cpp:
2507         (WebCore::MediaSourceBase::buffered):
2508         * Modules/mediasource/MediaSourceBase.h:
2509         * Modules/mediasource/MediaSourceRegistry.cpp:
2510         (WebCore::MediaSourceRegistry::unregisterURL):
2511         * Modules/mediasource/MediaSourceRegistry.h:
2512         * Modules/mediasource/SourceBufferList.h:
2513         * Modules/mediasource/WebKitMediaSource.cpp:
2514         (WebCore::WebKitMediaSource::activeRanges):
2515         * Modules/mediasource/WebKitMediaSource.h:
2516         * Modules/mediasource/WebKitSourceBufferList.h:
2517         * Modules/mediastream/MediaStream.cpp:
2518         (WebCore::MediaStream::scheduledEventTimerFired):
2519         * Modules/mediastream/MediaStream.h:
2520         * Modules/mediastream/MediaStreamRegistry.h:
2521         * Modules/mediastream/MediaStreamTrack.h:
2522         * Modules/mediastream/RTCDTMFSender.cpp:
2523         (WebCore::RTCDTMFSender::scheduledEventTimerFired):
2524         * Modules/mediastream/RTCDTMFSender.h:
2525         * Modules/mediastream/RTCDataChannel.cpp:
2526         (WebCore::RTCDataChannel::scheduledEventTimerFired):
2527         * Modules/mediastream/RTCDataChannel.h:
2528         * Modules/mediastream/RTCPeerConnection.cpp:
2529         (WebCore::RTCPeerConnection::stop):
2530         (WebCore::RTCPeerConnection::scheduledEventTimerFired):
2531         * Modules/mediastream/RTCPeerConnection.h:
2532         * Modules/mediastream/RTCStatsResponse.h:
2533         (WebCore::RTCStatsResponse::result):
2534         * Modules/notifications/Notification.h:
2535         * Modules/notifications/NotificationCenter.h:
2536         * Modules/speech/SpeechSynthesis.cpp:
2537         (WebCore::SpeechSynthesis::getVoices):
2538         * Modules/speech/SpeechSynthesis.h:
2539         * Modules/webaudio/AudioBuffer.h:
2540         * Modules/webaudio/AudioNode.h:
2541         * Modules/webaudio/AudioNodeOutput.h:
2542         * Modules/webaudio/MediaStreamAudioSource.cpp:
2543         (WebCore::MediaStreamAudioSource::setAudioFormat):
2544         (WebCore::MediaStreamAudioSource::consumeAudio):
2545         * Modules/webaudio/PeriodicWave.h:
2546         * Modules/webaudio/ScriptProcessorNode.h:
2547         * Modules/webdatabase/AbstractDatabaseServer.h:
2548         * Modules/webdatabase/DatabaseBackend.h:
2549         * Modules/webdatabase/DatabaseManager.cpp:
2550         (WebCore::DatabaseManager::origins):
2551         * Modules/webdatabase/DatabaseManager.h:
2552         * Modules/webdatabase/DatabaseServer.cpp:
2553         (WebCore::DatabaseServer::origins):
2554         * Modules/webdatabase/DatabaseServer.h:
2555         * Modules/webdatabase/DatabaseThread.h:
2556         * Modules/webdatabase/DatabaseTracker.cpp:
2557         (WebCore::DatabaseTracker::interruptAllDatabasesForContext):
2558         (WebCore::DatabaseTracker::origins):
2559         (WebCore::DatabaseTracker::getOpenDatabases):
2560         (WebCore::DatabaseTracker::deleteAllDatabases):
2561         (WebCore::DatabaseTracker::deleteDatabaseFile):
2562         * Modules/webdatabase/DatabaseTracker.h:
2563         * Modules/webdatabase/SQLStatementBackend.cpp:
2564         * Modules/webdatabase/SQLTransactionBackend.cpp:
2565         * Modules/webdatabase/SQLTransactionBackend.h:
2566         * Modules/webdatabase/SQLTransactionCoordinator.cpp:
2567         (WebCore::SQLTransactionCoordinator::shutdown):
2568         * Modules/webdatabase/SQLTransactionCoordinator.h:
2569         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
2570         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryData):
2571         (WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasks):
2572         (WebCore::ThreadableWebSocketChannelClientWrapper::didReceiveBinaryDataCallback):
2573         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.h:
2574         * Modules/websockets/WebSocket.cpp:
2575         (WebCore::WebSocket::didReceiveBinaryData):
2576         * Modules/websockets/WebSocket.h:
2577         * Modules/websockets/WebSocketChannel.cpp:
2578         (WebCore::WebSocketChannel::processFrame):
2579         * Modules/websockets/WebSocketChannel.h:
2580         * Modules/websockets/WebSocketChannelClient.h:
2581         (WebCore::WebSocketChannelClient::didReceiveBinaryData):
2582         * Modules/websockets/WebSocketExtensionDispatcher.h:
2583         * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
2584         (WebCore::workerGlobalScopeDidReceiveBinaryData):
2585         (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveBinaryData):
2586         (WebCore::WorkerThreadableWebSocketChannel::mainThreadSendArrayBuffer):
2587         (WebCore::WorkerThreadableWebSocketChannel::Bridge::send):
2588         * Modules/websockets/WorkerThreadableWebSocketChannel.h:
2589         * accessibility/AXObjectCache.cpp:
2590         (WebCore::AXObjectCache::~AXObjectCache):
2591         * accessibility/AXObjectCache.h:
2592         * accessibility/AccessibilityNodeObject.cpp:
2593         (WebCore::AccessibilityNodeObject::ariaLabeledByText):
2594         * accessibility/AccessibilityObject.h:
2595         (WebCore::AccessibilityText::AccessibilityText):
2596         * bindings/js/DOMWrapperWorld.h:
2597         * bindings/js/JSDOMBinding.h:
2598         (WebCore::toRefPtrNativeArray):
2599         * bindings/js/JSDOMGlobalObject.h:
2600         * bindings/js/JSMutationCallback.cpp:
2601         (WebCore::JSMutationCallback::call):
2602         * bindings/js/JSMutationCallback.h:
2603         * bindings/js/JSWebGLRenderingContextCustom.cpp:
2604         (WebCore::JSWebGLRenderingContext::getAttachedShaders):
2605         * bindings/js/PageScriptDebugServer.h:
2606         * bindings/js/ScheduledAction.h:
2607         * bindings/js/ScriptController.cpp:
2608         (WebCore::ScriptController::collectIsolatedContexts):
2609         * bindings/js/ScriptController.h:
2610         * bindings/js/ScriptDebugServer.h:
2611         * bindings/js/ScriptProfile.cpp:
2612         (WebCore::buildInspectorObjectFor):
2613         * bindings/objc/ObjCNodeFilterCondition.h:
2614         * bridge/objc/objc_class.h:
2615         * bridge/runtime_root.cpp:
2616         (JSC::Bindings::RootObject::invalidate):
2617         * bridge/runtime_root.h:
2618         * css/BasicShapeFunctions.cpp:
2619         (WebCore::basicShapeForValue):
2620         * css/CSSBasicShapes.h:
2621         (WebCore::CSSBasicShapePolygon::values):
2622         * css/CSSComputedStyleDeclaration.cpp:
2623         (WebCore::ComputedStyleExtractor::valueForFilter):
2624         * css/CSSFontFace.h:
2625         * css/CSSFontFaceSource.h:
2626         * css/CSSFontSelector.cpp:
2627         (WebCore::CSSFontSelector::addFontFaceRule):
2628         (WebCore::CSSFontSelector::getFontFace):
2629         (WebCore::CSSFontSelector::beginLoadTimerFired):
2630         * css/CSSFontSelector.h:
2631         * css/CSSGroupingRule.h:
2632         * css/CSSImageGeneratorValue.h:
2633         * css/CSSParserValues.cpp:
2634         (WebCore::CSSParserSelector::adoptSelectorVector):
2635         * css/CSSParserValues.h:
2636         * css/CSSPropertySourceData.h:
2637         * css/CSSRuleList.h:
2638         (WebCore::StaticCSSRuleList::rules):
2639         * css/CSSSegmentedFontFace.cpp:
2640         (WebCore::CSSSegmentedFontFace::fontLoaded):
2641         * css/CSSSegmentedFontFace.h:
2642         * css/CSSSelectorList.cpp:
2643         (WebCore::CSSSelectorList::adoptSelectorVector):
2644         * css/CSSSelectorList.h:
2645         * css/CSSStyleSheet.h:
2646         * css/CSSValue.h:
2647         (WebCore::compareCSSValueVector):
2648         * css/CSSValuePool.h:
2649         * css/DocumentRuleSets.cpp:
2650         (WebCore::DocumentRuleSets::collectRulesFromUserStyleSheets):
2651         (WebCore::DocumentRuleSets::appendAuthorStyleSheets):
2652         * css/DocumentRuleSets.h:
2653         * css/ElementRuleCollector.cpp:
2654         (WebCore::ElementRuleCollector::matchedRuleList):
2655         * css/ElementRuleCollector.h:
2656         * css/FontLoader.h:
2657         * css/InspectorCSSOMWrappers.cpp:
2658         (WebCore::InspectorCSSOMWrappers::collectFromStyleSheetContents):
2659         (WebCore::InspectorCSSOMWrappers::collectFromStyleSheets):
2660         * css/InspectorCSSOMWrappers.h:
2661         * css/MediaList.cpp:
2662         (WebCore::MediaQuerySet::parse):
2663         (WebCore::MediaList::item):
2664         (WebCore::reportMediaQueryWarningIfNeeded):
2665         * css/MediaList.h:
2666         (WebCore::MediaQuerySet::queryVector):
2667         * css/MediaQueryEvaluator.cpp:
2668         (WebCore::MediaQueryEvaluator::eval):
2669         * css/MediaQueryMatcher.h:
2670         * css/PropertySetCSSStyleDeclaration.cpp:
2671         (WebCore::PropertySetCSSStyleDeclaration::cloneAndCacheForCSSOM):
2672         * css/PropertySetCSSStyleDeclaration.h:
2673         * css/RuleSet.cpp:
2674         (WebCore::RuleSet::addToRuleSet):
2675         (WebCore::RuleSet::addRegionRule):
2676         (WebCore::RuleSet::addChildRules):
2677         (WebCore::RuleSet::addRulesFromSheet):
2678         * css/RuleSet.h:
2679         * css/SelectorFilter.h:
2680         * css/StyleInvalidationAnalysis.cpp:
2681         (WebCore::StyleInvalidationAnalysis::analyzeStyleSheet):
2682         * css/StylePropertySet.cpp:
2683         (WebCore::StylePropertySet::getLayeredShorthandValue):
2684         * css/StyleResolver.cpp:
2685         (WebCore::StyleResolver::appendAuthorStyleSheets):
2686         (WebCore::StyleResolver::keyframeStylesForAnimation):
2687         (WebCore::StyleResolver::styleRulesForElement):
2688         (WebCore::StyleResolver::pseudoStyleRulesForElement):
2689         (WebCore::StyleResolver::resolveVariables):
2690         (WebCore::StyleResolver::applyProperty):
2691         (WebCore::StyleResolver::loadPendingSVGDocuments):
2692         (WebCore::StyleResolver::loadPendingShaders):
2693         * css/StyleResolver.h:
2694         * css/StyleRule.cpp:
2695         (WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorComponentCount):
2696         (WebCore::StyleRuleGroup::StyleRuleGroup):
2697         (WebCore::StyleRuleMedia::StyleRuleMedia):
2698         (WebCore::StyleRuleSupports::StyleRuleSupports):
2699         (WebCore::StyleRuleRegion::StyleRuleRegion):
2700         * css/StyleRule.h:
2701         (WebCore::StyleRule::parserAdoptSelectorVector):
2702         (WebCore::StyleRulePage::parserAdoptSelectorVector):
2703         (WebCore::StyleRuleGroup::childRules):
2704         (WebCore::StyleRuleMedia::create):
2705         (WebCore::StyleRuleSupports::create):
2706         (WebCore::StyleRuleRegion::create):
2707         (WebCore::StyleRuleHost::create):
2708         (WebCore::StyleRuleHost::StyleRuleHost):
2709         * css/StyleScopeResolver.h:
2710         * css/StyleSheetContents.cpp:
2711         (WebCore::StyleSheetContents::parserAppendRule):
2712         (WebCore::childRulesHaveFailedOrCanceledSubresources):
2713         * css/StyleSheetContents.h:
2714         (WebCore::StyleSheetContents::childRules):
2715         (WebCore::StyleSheetContents::importRules):
2716         * css/StyleSheetList.cpp:
2717         (WebCore::StyleSheetList::styleSheets):
2718         (WebCore::StyleSheetList::item):
2719         * css/StyleSheetList.h:
2720         * css/WebKitCSSKeyframesRule.h:
2721         (WebCore::StyleRuleKeyframes::keyframes):
2722         * dom/CheckedRadioButtons.h:
2723         * dom/ClientRectList.h:
2724         * dom/ContainerNode.h:
2725         (WebCore::ChildNodesLazySnapshot::nextNode):
2726         (WebCore::ChildNodesLazySnapshot::takeSnapshot):
2727         * dom/CrossThreadTask.h:
2728         * dom/Document.cpp:
2729         (WebCore::Document::webkitCancelFullScreen):
2730         (WebCore::Document::webkitExitFullscreen):
2731         (WebCore::Document::fullScreenChangeDelayTimerFired):
2732         (WebCore::Document::didAssociateFormControlsTimerFired):
2733         * dom/Document.h:
2734         * dom/DocumentMarkerController.cpp:
2735         (WebCore::DocumentMarkerController::removeMarkers):
2736         * dom/DocumentMarkerController.h:
2737         * dom/DocumentStyleSheetCollection.cpp:
2738         (WebCore::DocumentStyleSheetCollection::injectedUserStyleSheets):
2739         (WebCore::DocumentStyleSheetCollection::injectedAuthorStyleSheets):
2740         (WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
2741         (WebCore::DocumentStyleSheetCollection::analyzeStyleSheetChange):
2742         (WebCore::styleSheetsUseRemUnits):
2743         (WebCore::filterEnabledNonemptyCSSStyleSheets):
2744         (WebCore::collectActiveCSSStyleSheetsFromSeamlessParents):
2745         (WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):
2746         * dom/DocumentStyleSheetCollection.h:
2747         * dom/Element.cpp:
2748         (WebCore::Element::attrNodeList):
2749         (WebCore::Element::webkitGetRegionFlowRanges):
2750         * dom/Element.h:
2751         * dom/EventListenerMap.h:
2752         * dom/EventSender.h:
2753         (WebCore::EventSender::timerFired):
2754         * dom/IdTargetObserverRegistry.h:
2755         * dom/MutationCallback.h:
2756         * dom/MutationObserver.cpp:
2757         (WebCore::MutationObserver::takeRecords):
2758         (WebCore::MutationObserver::deliver):
2759         (WebCore::MutationObserver::deliverAllMutations):
2760         * dom/MutationObserver.h:
2761         * dom/MutationObserverRegistration.h:
2762         * dom/NamedFlowCollection.cpp:
2763         (WebCore::NamedFlowCollection::namedFlows):
2764         * dom/NamedFlowCollection.h:
2765         * dom/Node.cpp:
2766         (WebCore::Node::didMoveToNewDocument):
2767         (WebCore::Node::mutationObserverRegistry):
2768         (WebCore::Node::registerMutationObserver):
2769         (WebCore::Node::unregisterMutationObserver):
2770         (WebCore::Node::notifyMutationObserversNodeWillDetach):
2771         * dom/Node.h:
2772         * dom/NodeRareData.h:
2773         * dom/Range.cpp:
2774         (WebCore::Range::processContents):
2775         (WebCore::Range::processNodes):
2776         (WebCore::Range::processAncestorsAndTheirSiblings):
2777         * dom/Range.h:
2778         * dom/ScopedEventQueue.h:
2779         * dom/ScriptExecutionContext.cpp:
2780         (WebCore::ScriptExecutionContext::reportException):
2781         * dom/ScriptExecutionContext.h:
2782         * dom/ScriptedAnimationController.h:
2783         * editing/ApplyStyleCommand.cpp:
2784         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
2785         * editing/BreakBlockquoteCommand.cpp:
2786         (WebCore::BreakBlockquoteCommand::doApply):
2787         * editing/CompositeEditCommand.cpp:
2788         (WebCore::CompositeEditCommand::removeChildrenInRange):
2789         (WebCore::CompositeEditCommand::deleteInsignificantText):
2790         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
2791         * editing/CompositeEditCommand.h:
2792         * editing/EditingStyle.cpp:
2793         (WebCore::htmlElementEquivalents):
2794         (WebCore::EditingStyle::conflictsWithImplicitStyleOfElement):
2795         (WebCore::htmlAttributeEquivalents):
2796         (WebCore::EditingStyle::conflictsWithImplicitStyleOfAttributes):
2797         (WebCore::EditingStyle::extractConflictingImplicitStyleOfAttributes):
2798         (WebCore::EditingStyle::elementIsStyledSpanOrHTMLEquivalent):
2799         (WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement):
2800         (WebCore::styleFromMatchedRulesForElement):
2801         * editing/Editor.cpp:
2802         (WebCore::Editor::countMatchesForText):
2803         * editing/Editor.h:
2804         * editing/InsertParagraphSeparatorCommand.cpp:
2805         (WebCore::InsertParagraphSeparatorCommand::getAncestorsInsideBlock):
2806         (WebCore::InsertParagraphSeparatorCommand::cloneHierarchyUnderNewBlock):
2807         (WebCore::InsertParagraphSeparatorCommand::doApply):
2808         * editing/InsertParagraphSeparatorCommand.h:
2809         * editing/MergeIdenticalElementsCommand.cpp:
2810         (WebCore::MergeIdenticalElementsCommand::doApply):
2811         (WebCore::MergeIdenticalElementsCommand::doUnapply):
2812         * editing/RemoveNodePreservingChildrenCommand.cpp:
2813         (WebCore::RemoveNodePreservingChildrenCommand::doApply):
2814         * editing/ReplaceSelectionCommand.cpp:
2815         (WebCore::ReplacementFragment::removeUnrenderedNodes):
2816         * editing/SimplifyMarkupCommand.cpp:
2817         (WebCore::SimplifyMarkupCommand::doApply):
2818         (WebCore::SimplifyMarkupCommand::pruneSubsequentAncestorsToRemove):
2819         * editing/SimplifyMarkupCommand.h:
2820         * editing/SpellChecker.h:
2821         * editing/SplitElementCommand.cpp:
2822         (WebCore::SplitElementCommand::executeApply):
2823         (WebCore::SplitElementCommand::doUnapply):
2824         * editing/WrapContentsInDummySpanCommand.cpp:
2825         (WebCore::WrapContentsInDummySpanCommand::executeApply):
2826         (WebCore::WrapContentsInDummySpanCommand::doUnapply):
2827         * editing/mac/AlternativeTextUIController.h:
2828         * fileapi/FileList.h:
2829         * history/BackForwardList.h:
2830         * history/HistoryItem.cpp:
2831         (WebCore::HistoryItem::setRedirectURLs):
2832         * history/HistoryItem.h:
2833         * history/mac/HistoryItemMac.mm:
2834         (WebCore::HistoryItem::setTransientProperty):
2835         * html/FormController.h:
2836         * html/HTMLAnchorElement.cpp:
2837         * html/HTMLCollection.cpp:
2838         (WebCore::HTMLCollection::append):
2839         * html/HTMLCollection.h:
2840         * html/HTMLFormControlElement.cpp:
2841         (WebCore::HTMLFormControlElement::checkValidity):
2842         * html/HTMLFormControlElement.h:
2843         * html/HTMLFormElement.cpp:
2844         (WebCore::HTMLFormElement::validateInteractively):
2845         (WebCore::HTMLFormElement::checkValidity):
2846         (WebCore::HTMLFormElement::checkInvalidControlsAndCollectUnhandled):
2847         * html/HTMLFormElement.h:
2848         * html/HTMLMediaElement.cpp:
2849         (WebCore::HTMLMediaElement::updateActiveTextTrackCues):
2850         (WebCore::HTMLMediaElement::platformTextTracks):
2851         (WebCore::HTMLMediaElement::configureTextTrackGroup):
2852         * html/HTMLMediaElement.h:
2853         * html/HTMLPlugInImageElement.cpp:
2854         * html/HTMLSelectElement.cpp:
2855         (WebCore::HTMLSelectElement::setLength):
2856         * html/MediaController.cpp:
2857         (MediaController::asyncEventTimerFired):
2858         * html/MediaController.h:
2859         * html/MediaFragmentURIParser.h:
2860         * html/ValidationMessage.h:
2861         * html/canvas/WebGLFramebuffer.h:
2862         * html/canvas/WebGLRenderingContext.cpp:
2863         (WebCore::WebGLRenderingContext::getAttachedShaders):
2864         * html/canvas/WebGLRenderingContext.h:
2865         * html/canvas/WebGLTexture.h:
2866         * html/parser/BackgroundHTMLParser.cpp:
2867         (WebCore::BackgroundHTMLParser::BackgroundHTMLParser):
2868         * html/parser/BackgroundHTMLParser.h:
2869         (WebCore::BackgroundHTMLParser::create):
2870         * html/parser/HTMLDocumentParser.cpp:
2871         (WebCore::HTMLDocumentParser::startBackgroundParser):
2872         * html/parser/HTMLDocumentParser.h:
2873         * html/parser/HTMLMetaCharsetParser.h:
2874         * html/parser/HTMLPreloadScanner.cpp:
2875         (WebCore::TokenPreloadScanner::scan):
2876         (WebCore::TokenPreloadScanner::scanCommon):
2877         * html/parser/HTMLResourcePreloader.h:
2878         * html/parser/XSSAuditor.h:
2879         * html/shadow/ContentDistributor.cpp:
2880         (WebCore::ContentDistributor::ensureInsertionPointList):
2881         (WebCore::ContentDistributor::distribute):
2882         (WebCore::ContentDistributor::invalidate):
2883         * html/shadow/ContentDistributor.h:
2884         * html/shadow/MediaControlElements.cpp:
2885         (WebCore::MediaControlClosedCaptionsTrackListElement::rebuildTrackListMenu):
2886         (WebCore::MediaControlTextTrackContainerElement::updateDisplay):
2887         * html/shadow/MediaControlElements.h:
2888         * html/track/InbandGenericTextTrack.h:
2889         * html/track/InbandWebVTTTextTrack.cpp:
2890         (WebCore::InbandWebVTTTextTrack::newCuesParsed):
2891         * html/track/LoadableTextTrack.cpp:
2892         (WebCore::LoadableTextTrack::newCuesAvailable):
2893         (WebCore::LoadableTextTrack::newRegionsAvailable):
2894         * html/track/TextTrackCueList.h:
2895         * html/track/TextTrackList.cpp:
2896         (TextTrackList::invalidateTrackIndexesAfterTrack):
2897         (TextTrackList::remove):
2898         (TextTrackList::contains):
2899         * html/track/TextTrackList.h:
2900         * html/track/TrackListBase.cpp:
2901         (TrackListBase::asyncEventTimerFired):
2902         * html/track/TrackListBase.h:
2903         * html/track/WebVTTParser.cpp:
2904         (WebCore::WebVTTParser::getNewCues):
2905         (WebCore::WebVTTParser::getNewRegions):
2906         * html/track/WebVTTParser.h:
2907         * inspector/ConsoleMessage.cpp:
2908         (WebCore::ConsoleMessage::addToFrontend):
2909         * inspector/ContentSearchUtils.cpp:
2910         (WebCore::ContentSearchUtils::getRegularExpressionMatchesByLines):
2911         (WebCore::ContentSearchUtils::lineEndings):
2912         (WebCore::ContentSearchUtils::searchInTextByLines):
2913         * inspector/ContentSearchUtils.h:
2914         * inspector/DOMPatchSupport.cpp:
2915         (WebCore::DOMPatchSupport::patchNode):
2916         (WebCore::DOMPatchSupport::diff):
2917         (WebCore::DOMPatchSupport::innerPatchChildren):
2918         * inspector/DOMPatchSupport.h:
2919         * inspector/InjectedScript.cpp:
2920         (WebCore::InjectedScript::getProperties):
2921         (WebCore::InjectedScript::getInternalProperties):
2922         (WebCore::InjectedScript::wrapCallFrames):
2923         * inspector/InjectedScript.h:
2924         * inspector/InjectedScriptHost.h:
2925         * inspector/InspectorAgent.cpp:
2926         (WebCore::InspectorAgent::enable):
2927         * inspector/InspectorApplicationCacheAgent.cpp:
2928         (WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):
2929         (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
2930         * inspector/InspectorApplicationCacheAgent.h:
2931         * inspector/InspectorBaseAgent.h:
2932         * inspector/InspectorCSSAgent.cpp:
2933         (WebCore::SelectorProfile::toInspectorObject):
2934         (WebCore::UpdateRegionLayoutTask::onTimer):
2935         (WebCore::InspectorCSSAgent::getMatchedStylesForNode):
2936         (WebCore::InspectorCSSAgent::getComputedStyleForNode):
2937         (WebCore::InspectorCSSAgent::getAllStyleSheets):
2938         (WebCore::InspectorCSSAgent::getSupportedCSSProperties):
2939         (WebCore::InspectorCSSAgent::getNamedFlowCollection):
2940         (WebCore::InspectorCSSAgent::buildArrayForRuleList):
2941         (WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList):
2942         (WebCore::InspectorCSSAgent::buildArrayForRegions):
2943         (WebCore::InspectorCSSAgent::buildObjectForNamedFlow):
2944         * inspector/InspectorCSSAgent.h:
2945         * inspector/InspectorConsoleAgent.h:
2946         * inspector/InspectorDOMAgent.cpp:
2947         (WebCore::RevalidateStyleAttributeTask::onTimer):
2948         (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
2949         (WebCore::InspectorDOMAgent::pushNodePathToFrontend):
2950         (WebCore::InspectorDOMAgent::getEventListenersForNode):
2951         (WebCore::InspectorDOMAgent::performSearch):
2952         (WebCore::InspectorDOMAgent::getSearchResults):
2953         (WebCore::InspectorDOMAgent::getAttributes):
2954         (WebCore::InspectorDOMAgent::buildObjectForNode):
2955         (WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
2956         (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
2957         (WebCore::InspectorDOMAgent::styleAttributeInvalidated):
2958         * inspector/InspectorDOMAgent.h:
2959         * inspector/InspectorDOMStorageAgent.cpp:
2960         (WebCore::InspectorDOMStorageAgent::getDOMStorageItems):
2961         * inspector/InspectorDOMStorageAgent.h:
2962         * inspector/InspectorDatabaseAgent.cpp:
2963         (WebCore::InspectorDatabaseAgent::getDatabaseTableNames):
2964         * inspector/InspectorDatabaseAgent.h:
2965         * inspector/InspectorDebuggerAgent.cpp:
2966         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
2967         (WebCore::InspectorDebuggerAgent::searchInContent):
2968         (WebCore::InspectorDebuggerAgent::setScriptSource):
2969         (WebCore::InspectorDebuggerAgent::currentCallFrames):
2970         * inspector/InspectorDebuggerAgent.h:
2971         * inspector/InspectorHeapProfilerAgent.cpp:
2972         (WebCore::InspectorHeapProfilerAgent::getProfileHeaders):
2973         * inspector/InspectorHeapProfilerAgent.h:
2974         * inspector/InspectorHistory.h:
2975         * inspector/InspectorIndexedDBAgent.cpp:
2976         * inspector/InspectorLayerTreeAgent.cpp:
2977         (WebCore::InspectorLayerTreeAgent::layersForNode):
2978         (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderObjectHierarchy):
2979         (WebCore::InspectorLayerTreeAgent::gatherLayersUsingRenderLayerHierarchy):
2980         * inspector/InspectorLayerTreeAgent.h:
2981         * inspector/InspectorMemoryAgent.h:
2982         * inspector/InspectorPageAgent.cpp:
2983         (WebCore::buildArrayForCookies):
2984         (WebCore::InspectorPageAgent::getCookies):
2985         (WebCore::InspectorPageAgent::searchInResource):
2986         (WebCore::InspectorPageAgent::searchInResources):
2987         (WebCore::InspectorPageAgent::buildObjectForFrameTree):
2988         * inspector/InspectorPageAgent.h:
2989         * inspector/InspectorProfilerAgent.cpp:
2990         (WebCore::InspectorProfilerAgent::getProfileHeaders):
2991         * inspector/InspectorProfilerAgent.h:
2992         * inspector/InspectorResourceAgent.h:
2993         * inspector/InspectorRuntimeAgent.cpp:
2994         (WebCore::InspectorRuntimeAgent::getProperties):
2995         * inspector/InspectorRuntimeAgent.h:
2996         * inspector/InspectorState.h:
2997         * inspector/InspectorStyleSheet.cpp:
2998         (WebCore::asCSSRuleList):
2999         (WebCore::InspectorStyle::buildArrayForComputedStyle):
3000         (WebCore::InspectorStyle::styleWithProperties):
3001         (WebCore::selectorsFromSource):
3002         (WebCore::InspectorStyleSheet::buildObjectForSelectorList):
3003         (WebCore::InspectorStyleSheet::buildObjectForRule):
3004         (WebCore::InspectorStyleSheet::lineEndings):
3005         (WebCore::InspectorStyleSheet::buildArrayForRuleList):
3006         (WebCore::InspectorStyleSheetForInlineStyle::lineEndings):
3007         * inspector/InspectorStyleSheet.h:
3008         * inspector/InspectorValues.cpp:
3009         (WebCore::InspectorArrayBase::writeJSON):
3010         * inspector/InspectorValues.h:
3011         * inspector/PageRuntimeAgent.cpp:
3012         (WebCore::PageRuntimeAgent::reportExecutionContextCreation):
3013         * inspector/ScriptCallStack.cpp:
3014         (WebCore::ScriptCallStack::buildInspectorArray):
3015         * inspector/ScriptCallStack.h:
3016         * loader/CrossOriginPreflightResultCache.h:
3017         * loader/DocumentLoader.cpp:
3018         (WebCore::cancelAll):
3019         (WebCore::setAllDefersLoading):
3020         (WebCore::DocumentLoader::getSubresources):
3021         * loader/DocumentLoader.h:
3022         * loader/FormState.h:
3023         * loader/FormSubmission.cpp:
3024         (WebCore::FormSubmission::create):
3025         * loader/ProgressTracker.h:
3026         * loader/ResourceLoadScheduler.h:
3027         * loader/TextTrackLoader.cpp:
3028         (WebCore::TextTrackLoader::getNewCues):
3029         (WebCore::TextTrackLoader::getNewRegions):
3030         * loader/TextTrackLoader.h:
3031         * loader/WorkerThreadableLoader.cpp:
3032         (WebCore::workerGlobalScopeDidReceiveData):
3033         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
3034         * loader/appcache/ApplicationCache.cpp:
3035         (WebCore::ApplicationCache::removeResource):
3036         (WebCore::ApplicationCache::dump):
3037         * loader/appcache/ApplicationCache.h:
3038         * loader/appcache/ApplicationCacheStorage.cpp:
3039         (WebCore::ApplicationCacheStorage::getOriginsWithCache):
3040         * loader/archive/Archive.cpp:
3041         (WebCore::Archive::clearAllSubframeArchives):
3042         (WebCore::Archive::clearAllSubframeArchivesImpl):
3043         * loader/archive/Archive.h:
3044         (WebCore::Archive::subresources):
3045         (WebCore::Archive::subframeArchives):
3046         * loader/archive/ArchiveResourceCollection.cpp:
3047         (WebCore::ArchiveResourceCollection::addAllResources):
3048         * loader/archive/ArchiveResourceCollection.h:
3049         * loader/archive/cf/LegacyWebArchive.cpp:
3050         (WebCore::LegacyWebArchive::createPropertyListRepresentation):
3051         (WebCore::LegacyWebArchive::create):
3052         (WebCore::LegacyWebArchive::createFromSelection):
3053         * loader/archive/cf/LegacyWebArchive.h:
3054         * loader/archive/mhtml/MHTMLParser.h:
3055         * loader/cache/CachedResource.h:
3056         * loader/cache/CachedResourceLoader.h:
3057         * loader/cache/MemoryCache.h:
3058         * loader/icon/IconDatabase.cpp:
3059         (WebCore::IconDatabase::notifyPendingLoadDecisions):
3060         * loader/icon/IconDatabase.h:
3061         * page/CaptionUserPreferencesMediaAF.cpp:
3062         (WebCore::CaptionUserPreferencesMediaAF::sortedTrackListForMenu):
3063         * page/CaptionUserPreferencesMediaAF.h:
3064         * page/ChromeClient.h:
3065         (WebCore::ChromeClient::didAssociateFormControls):
3066         * page/Console.h:
3067         * page/ContentSecurityPolicy.h:
3068         * page/DOMWindow.cpp:
3069         (WebCore::DOMWindow::getMatchedCSSRules):
3070         * page/DeviceController.cpp:
3071         (WebCore::DeviceController::dispatchDeviceEvent):
3072         (WebCore::DeviceController::fireDeviceEvent):
3073         * page/DeviceController.h:
3074         * page/EditorClient.h:
3075         * page/EventHandler.cpp:
3076         (WebCore::EventHandler::handleTouchEvent):
3077         * page/EventHandler.h:
3078         * page/FrameView.cpp:
3079         (WebCore::FrameView::serviceScriptedAnimations):
3080         * page/Page.cpp:
3081         (WebCore::Page::findStringMatchingRanges):
3082         * page/Page.h:
3083         * page/PageGroup.h:
3084         * page/Performance.cpp:
3085         (WebCore::Performance::webkitGetEntriesByType):
3086         (WebCore::Performance::webkitGetEntriesByName):
3087         * page/Performance.h:
3088         * page/PerformanceEntryList.cpp:
3089         (WebCore::PerformanceEntryList::appendAll):
3090         * page/PerformanceEntryList.h:
3091         * page/SecurityOriginHash.h:
3092         * page/SecurityPolicy.cpp:
3093         * page/SpeechInputResult.h:
3094         * page/animation/AnimationController.cpp:
3095         (WebCore::AnimationControllerPrivate::fireEventsAndUpdateStyle):
3096         * page/animation/AnimationControllerPrivate.h:
3097         * page/animation/CSSPropertyAnimation.cpp:
3098         (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
3099         * page/animation/CompositeAnimation.h:
3100         * page/scrolling/ScrollingStateNode.cpp:
3101         (WebCore::ScrollingStateNode::appendChild):
3102         * page/scrolling/ScrollingStateNode.h:
3103         (WebCore::ScrollingStateNode::children):
3104         * page/scrolling/ScrollingThread.cpp:
3105         (WebCore::ScrollingThread::dispatchFunctionsFromScrollingThread):
3106         * page/scrolling/ScrollingThread.h:
3107         * page/scrolling/ScrollingTree.cpp:
3108         (WebCore::ScrollingTree::updateTreeFromStateNode):
3109         * page/scrolling/ScrollingTreeNode.cpp:
3110         (WebCore::ScrollingTreeNode::appendChild):
3111         * page/scrolling/ScrollingTreeNode.h:
3112         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
3113         (WebCore::ScrollingCoordinatorMac::syncChildPositions):
3114         * platform/CrossThreadCopier.cpp:
3115         * platform/CrossThreadCopier.h:
3116         * platform/DragData.h:
3117         * platform/MainThreadTask.h:
3118         * platform/PODFreeListArena.h:
3119         (WebCore::PODFreeListArena::freeObject):
3120         (WebCore::PODFreeListArena::allocate):
3121         * platform/PODIntervalTree.h:
3122         * platform/PODRedBlackTree.h:
3123         (WebCore::PODRedBlackTree::PODRedBlackTree):
3124         * platform/PlatformSpeechSynthesizer.cpp:
3125         (WebCore::PlatformSpeechSynthesizer::voiceList):
3126         * platform/PlatformSpeechSynthesizer.h:
3127         * platform/RunLoop.h:
3128         * platform/ScrollView.cpp:
3129         (WebCore::ScrollView::frameRectsChanged):
3130         (WebCore::ScrollView::clipRectChanged):
3131         (WebCore::ScrollView::setParentVisible):
3132         (WebCore::ScrollView::show):
3133         (WebCore::ScrollView::hide):
3134         * platform/ScrollView.h:
3135         * platform/SharedBuffer.h:
3136         * platform/Supplementable.h:
3137         (WebCore::Supplement::provideTo):
3138         (WebCore::Supplementable::provideSupplement):
3139         * platform/URL.cpp:
3140         (WebCore::findHostnamesInMailToURL):
3141         (WebCore::encodeHostnames):
3142         * platform/audio/AudioBus.h:
3143         * platform/audio/AudioDSPKernelProcessor.h:
3144         * platform/audio/AudioResampler.h:
3145         * platform/audio/DynamicsCompressor.h:
3146         * platform/audio/DynamicsCompressorKernel.h:
3147         * platform/audio/HRTFDatabase.h:
3148         * platform/audio/HRTFKernel.h:
3149         * platform/audio/MultiChannelResampler.h:
3150         * platform/audio/Reverb.h:
3151         * platform/audio/ReverbConvolver.h:
3152         * platform/cf/SharedBufferCF.cpp:
3153         (WebCore::SharedBuffer::copyBufferAndClear):
3154         (WebCore::SharedBuffer::copySomeDataFromDataArray):
3155         * platform/graphics/FloatPolygon.cpp:
3156         (WebCore::FloatPolygon::FloatPolygon):
3157         * platform/graphics/FloatPolygon.h:
3158         * platform/graphics/FontCache.cpp:
3159         (WebCore::FontCache::getCachedFontData):
3160         (WebCore::FontCache::purgeInactiveFontData):
3161         * platform/graphics/GlyphMetricsMap.h:
3162         (WebCore::::locatePageSlowCase):
3163         * platform/graphics/GlyphPageTreeNode.h:
3164         * platform/graphics/GraphicsContext3D.h:
3165         * platform/graphics/GraphicsLayer.cpp:
3166         * platform/graphics/GraphicsLayer.h:
3167         * platform/graphics/PlatformTextTrackMenu.h:
3168         * platform/graphics/SimpleFontData.h:
3169         * platform/graphics/WidthCache.h:
3170         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
3171         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
3172         (WebCore::MediaPlayerPrivateAVFoundation::processNewAndRemovedTextTracks):
3173         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
3174         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
3175         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3176         (WebCore::MediaPlayerPrivateAVFoundationObjC::processLegacyClosedCaptionsTracks):
3177         (WebCore::MediaPlayerPrivateAVFoundationObjC::processMediaSelectionOptions):
3178         * platform/graphics/ca/GraphicsLayerCA.cpp:
3179         (WebCore::GraphicsLayerCA::setFilterAnimationKeyframes):
3180         (WebCore::GraphicsLayerCA::fetchCloneLayers):
3181         * platform/graphics/ca/GraphicsLayerCA.h:
3182         * platform/graphics/ca/PlatformCAAnimation.h:
3183         * platform/graphics/ca/PlatformCALayer.h:
3184         * platform/graphics/ca/mac/LayerPool.h:
3185         * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
3186         (PlatformCAAnimation::setValues):
3187         * platform/graphics/ca/mac/TileController.h:
3188         * platform/graphics/cg/SubimageCacheWithTimer.h:
3189         * platform/graphics/filters/CustomFilterParameterList.h:
3190         * platform/graphics/filters/FilterEffect.h:
3191         * platform/graphics/filters/FilterOperations.h:
3192         (WebCore::FilterOperations::operations):
3193         * platform/graphics/gpu/Texture.cpp:
3194         (WebCore::Texture::Texture):
3195         (WebCore::Texture::create):
3196         * platform/graphics/gpu/Texture.h:
3197         * platform/graphics/mac/ComplexTextController.h:
3198         * platform/graphics/mac/SimpleFontDataCoreText.cpp:
3199         (WebCore::SimpleFontData::getCFStringAttributes):
3200         * platform/graphics/transforms/TransformOperations.h:
3201         (WebCore::TransformOperations::operations):
3202         * platform/ios/PasteboardIOS.mm:
3203         (WebCore::documentFragmentWithRTF):
3204         * platform/mac/PlatformSpeechSynthesizerMac.mm:
3205         (-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
3206         * platform/mediastream/MediaStreamDescriptor.h:
3207         * platform/mediastream/MediaStreamSource.h:
3208         * platform/mediastream/RTCConfiguration.h:
3209         * platform/network/BlobRegistryImpl.h:
3210         * platform/network/HTTPHeaderMap.h:
3211         * platform/network/ResourceResponseBase.cpp:
3212         (WebCore::ResourceResponseBase::parseCacheControlDirectives):
3213         (WebCore::parseCacheHeader):
3214         * platform/network/cf/ResourceHandleCFNet.cpp:
3215         (WebCore::clientCerts):
3216         (WebCore::ResourceHandle::createCFURLConnection):
3217         * platform/text/cf/HyphenationCF.cpp:
3218         (WebCore::::createValueForNullKey):
3219         (WebCore::::createValueForKey):
3220         (WebCore::cfLocaleCache):
3221         * plugins/PluginMainThreadScheduler.h:
3222         * rendering/HitTestResult.h:
3223         * rendering/InlineFlowBox.h:
3224         * rendering/RenderBlock.cpp:
3225         (WebCore::RenderBlock::paintContinuationOutlines):
3226         (WebCore::RenderBlock::removeFromTrackedRendererMaps):
3227         * rendering/RenderBlock.h:
3228         * rendering/RenderButton.h:
3229         * rendering/RenderCounter.cpp:
3230         * rendering/RenderGrid.cpp:
3231         (WebCore::RenderGrid::GridIterator::GridIterator):
3232         * rendering/RenderGrid.h:
3233         * rendering/RenderLayer.cpp:
3234         (WebCore::RenderLayer::updateDescendantsAreContiguousInStackingOrder):
3235         (WebCore::RenderLayer::rebuildZOrderLists):
3236         (WebCore::RenderLayer::collectLayers):
3237         * rendering/RenderLayer.h:
3238         * rendering/RenderNamedFlowThread.cpp:
3239         (WebCore::RenderNamedFlowThread::getRanges):
3240         * rendering/RenderNamedFlowThread.h:
3241         * rendering/RenderRegion.cpp:
3242         (WebCore::RenderRegion::getRanges):
3243         * rendering/RenderRegion.h:
3244         * rendering/RenderView.cpp:
3245         (WebCore::RenderView::selectionBounds):
3246         (WebCore::RenderView::setSelection):
3247         * rendering/RootInlineBox.h:
3248         * rendering/shapes/PolygonShape.cpp:
3249         (WebCore::computeShapePaddingBounds):
3250         (WebCore::computeShapeMarginBounds):
3251         * rendering/shapes/PolygonShape.h:
3252         (WebCore::PolygonShape::PolygonShape):
3253         * rendering/shapes/Shape.cpp:
3254         (WebCore::createPolygonShape):
3255         (WebCore::Shape::createShape):
3256         * rendering/shapes/ShapeInfo.h:
3257         * rendering/shapes/ShapeInterval.h:
3258         * rendering/style/QuotesData.cpp:
3259         (WebCore::QuotesData::create):
3260         (WebCore::QuotesData::QuotesData):
3261         * rendering/style/QuotesData.h:
3262         * rendering/style/RenderStyle.cpp:
3263         (WebCore::requireTransformOrigin):
3264         (WebCore::RenderStyle::applyTransform):
3265         * rendering/style/StyleGridData.h:
3266         * rendering/svg/RenderSVGResourceGradient.h:
3267         * rendering/svg/RenderSVGResourcePattern.h:
3268         * rendering/svg/SVGResourcesCache.h:
3269         * storage/StorageEventDispatcher.cpp:
3270         (WebCore::StorageEventDispatcher::dispatchSessionStorageEvents):
3271         (WebCore::StorageEventDispatcher::dispatchLocalStorageEvents):
3272         (WebCore::StorageEventDispatcher::dispatchSessionStorageEventsToFrames):
3273         (WebCore::StorageEventDispatcher::dispatchLocalStorageEventsToFrames):
3274         * storage/StorageEventDispatcher.h:
3275         * storage/StorageNamespaceImpl.h:
3276         * storage/StorageThread.h:
3277         * storage/StorageTracker.cpp:
3278         (WebCore::StorageTracker::origins):
3279         * storage/StorageTracker.h:
3280         * svg/SVGAnimatedPath.cpp:
3281         (WebCore::SVGAnimatedPathAnimator::startAnimValAnimation):
3282         * svg/SVGAnimatedTypeAnimator.cpp:
3283         (WebCore::SVGElementAnimatedProperties::SVGElementAnimatedProperties):
3284         (WebCore::SVGAnimatedTypeAnimator::findAnimatedPropertiesForAttributeName):
3285         * svg/SVGAnimatedTypeAnimator.h:
3286         * svg/SVGDocumentExtensions.cpp:
3287         (WebCore::SVGDocumentExtensions::startAnimations):
3288         (WebCore::SVGDocumentExtensions::dispatchSVGLoadEventToOutermostSVGElements):
3289         (WebCore::SVGDocumentExtensions::addPendingResource):
3290         (WebCore::SVGDocumentExtensions::isElementPendingResources):
3291         (WebCore::SVGDocumentExtensions::removeElementFromPendingResources):
3292         (WebCore::SVGDocumentExtensions::setOfElementsReferencingTarget):
3293         (WebCore::SVGDocumentExtensions::addElementReferencingTarget):
3294         (WebCore::SVGDocumentExtensions::rebuildAllElementReferencesForTarget):
3295         * svg/SVGDocumentExtensions.h:
3296         * svg/SVGFontElement.h:
3297         * svg/SVGGlyphMap.h:
3298         * svg/SVGMarkerElement.cpp:
3299         (WebCore::SVGMarkerElement::orientTypeAnimated):
3300         * svg/SVGMarkerElement.h:
3301         * svg/SVGPathSegList.h:
3302         * svg/animation/SMILTimeContainer.h:
3303         * svg/graphics/SVGImageCache.h:
3304         * svg/graphics/filters/SVGFilterBuilder.h:
3305         (WebCore::SVGFilterBuilder::addBuiltinEffects):
3306         * svg/properties/SVGAnimatedEnumerationPropertyTearOff.h:
3307         (WebCore::SVGAnimatedEnumerationPropertyTearOff::create):
3308         * svg/properties/SVGAnimatedListPropertyTearOff.h:
3309         (WebCore::SVGAnimatedListPropertyTearOff::create):
3310         * svg/properties/SVGAnimatedPropertyTearOff.h:
3311         (WebCore::SVGAnimatedPropertyTearOff::create):
3312         * svg/properties/SVGAnimatedStaticPropertyTearOff.h:
3313         (WebCore::SVGAnimatedStaticPropertyTearOff::create):
3314         * svg/properties/SVGAttributeToPropertyMap.cpp:
3315         (WebCore::SVGAttributeToPropertyMap::animatedPropertiesForAttribute):
3316         * svg/properties/SVGAttributeToPropertyMap.h:
3317         * svg/properties/SVGStaticListPropertyTearOff.h:
3318         (WebCore::SVGStaticListPropertyTearOff::create):
3319         * svg/properties/SVGTransformListPropertyTearOff.h:
3320         (WebCore::SVGTransformListPropertyTearOff::create):
3321         (WebCore::SVGTransformListPropertyTearOff::createSVGTransformFromMatrix):
3322         (WebCore::SVGTransformListPropertyTearOff::consolidate):
3323         * workers/DefaultSharedWorkerRepository.h:
3324         * workers/WorkerMessagingProxy.h:
3325         * xml/XMLHttpRequestProgressEventThrottle.cpp:
3326         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchDeferredEvents):
3327         * xml/XMLHttpRequestProgressEventThrottle.h:
3328         * xml/XPathNodeSet.cpp:
3329         (WebCore::XPath::NodeSet::sort):
3330         (WebCore::XPath::NodeSet::traversalSort):
3331         * xml/XSLStyleSheet.h:
3332         * xml/parser/XMLDocumentParserLibxml2.cpp:
3333
3334 2013-10-18  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3335
3336         Cleaning warning messages from StyleResolveTree
3337         https://bugs.webkit.org/show_bug.cgi?id=123030
3338
3339         Reviewed by Andreas Kling.
3340
3341         No new tests needed.
3342
3343         * style/StyleResolveTree.cpp:
3344         (WebCore::Style::elementInsideRegionNeedsRenderer):
3345         (WebCore::Style::createRendererIfNeeded):
3346
3347 2013-10-18  Brady Eidson  <beidson@apple.com>
3348
3349         Get rid of IDBFactoryBackendLevelDB and IDBTransactionBackendLevelDB in IDBDatabaseBackendLevelDB.
3350         https://bugs.webkit.org/show_bug.cgi?id=123039
3351
3352         Reviewed by Anders Carlsson.
3353
3354         Add a few concepts to the interfaces to make this work:
3355         * Modules/indexeddb/IDBFactoryBackendInterface.h:
3356         * Modules/indexeddb/IDBTransactionBackendInterface.h:
3357         (WebCore::IDBTransactionBackendInterface::id):
3358         (WebCore::IDBTransactionBackendInterface::IDBTransactionBackendInterface):
3359
3360         Adapt to using Interface ptr’s instead of LevelDB ptr’s:
3361         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
3362         (WebCore::IDBDatabaseBackendLevelDB::create):
3363         (WebCore::IDBDatabaseBackendLevelDB::IDBDatabaseBackendLevelDB):
3364         (WebCore::IDBDatabaseBackendLevelDB::createObjectStore):
3365         (WebCore::IDBDatabaseBackendLevelDB::deleteObjectStore):
3366         (WebCore::IDBDatabaseBackendLevelDB::createIndex):
3367         (WebCore::IDBDatabaseBackendLevelDB::deleteIndex):
3368         (WebCore::IDBDatabaseBackendLevelDB::get):
3369         (WebCore::IDBDatabaseBackendLevelDB::put):
3370         (WebCore::IDBDatabaseBackendLevelDB::setIndexKeys):
3371         (WebCore::IDBDatabaseBackendLevelDB::setIndexesReady):
3372         (WebCore::IDBDatabaseBackendLevelDB::openCursor):
3373         (WebCore::IDBDatabaseBackendLevelDB::count):
3374         (WebCore::IDBDatabaseBackendLevelDB::deleteRange):
3375         (WebCore::IDBDatabaseBackendLevelDB::clear):
3376         (WebCore::IDBDatabaseBackendLevelDB::transactionStarted):
3377         (WebCore::IDBDatabaseBackendLevelDB::transactionFinished):
3378         (WebCore::IDBDatabaseBackendLevelDB::transactionFinishedAndAbortFired):
3379         (WebCore::IDBDatabaseBackendLevelDB::transactionFinishedAndCompleteFired):
3380         (WebCore::IDBDatabaseBackendLevelDB::runIntVersionChangeTransaction):
3381         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h:
3382
3383         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.h:
3384
3385         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp:
3386         (WebCore::IDBObjectStoreBackendLevelDB::makeIndexWriters):
3387         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.h:
3388
3389         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
3390         (WebCore::IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB):
3391         (WebCore::IDBTransactionBackendLevelDB::abort):
3392         (WebCore::IDBTransactionBackendLevelDB::commit):
3393         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
3394
3395 2013-10-18  Dean Jackson  <dino@apple.com>
3396
3397         Unable to upload <img src="foo.svg"> as WebGL texture
3398         https://bugs.webkit.org/show_bug.cgi?id=123035
3399
3400         Reviewed by Tim Horton.
3401
3402         If the HTMLImageElement passed to texture2D is an SVG
3403         image, paint it first into a bitmap buffer and upload that.
3404         Note that the SVG image still needs to have an intrinsic
3405         or explicit size - see how the test case must set width and
3406         height.
3407
3408         I also renamed the cache of ImageBuffers since it is
3409         no longer only being used for video frames.
3410
3411         Test: fast/canvas/webgl/tex-image-and-sub-image-2d-with-svg-image.html
3412
3413         * html/canvas/WebGLRenderingContext.cpp:
3414         (WebCore::WebGLRenderingContext::WebGLRenderingContext): Rename m_videoCache to m_generatedImageCache.
3415         (WebCore::WebGLRenderingContext::drawImageIntoBuffer): New method that creates an ImageBuffer
3416         of the appropriate size and renders into that.
3417         (WebCore::WebGLRenderingContext::texImage2D): If we see an SVG image, render it first.
3418         (WebCore::WebGLRenderingContext::videoFrameToImage): Renamed m_generatedImageCache.
3419         (WebCore::WebGLRenderingContext::texSubImage2D): If we see an SVG image, render it first.
3420         * html/canvas/WebGLRenderingContext.h: Renaming.
3421
3422 2013-10-18  Brady Eidson  <beidson@apple.com>
3423
3424         Move IDBTransactionBackend operations to the IDBTransactionBackend itself..
3425         https://bugs.webkit.org/show_bug.cgi?id=123028
3426
3427         Reviewed by Alexey Proskuryakov.
3428
3429         This gets rid of a big blob of LevelDB specific code from IDBDatabaseBackendLevelDB.cpp,
3430         bringing us much closer to having it be cross platform.
3431
3432         * CMakeLists.txt:
3433         * GNUmakefile.list.am:
3434
3435         * Modules/indexeddb/IDBTransactionBackendInterface.h: Added.
3436         (WebCore::IDBTransactionBackendInterface::~IDBTransactionBackendInterface):
3437
3438         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
3439         (WebCore::IDBCursorBackendLevelDB::CursorAdvanceOperation::perform): Update for new method signature.
3440         (WebCore::IDBCursorBackendLevelDB::CursorIterationOperation::perform): Ditto.
3441         (WebCore::IDBCursorBackendLevelDB::CursorPrefetchIterationOperation::perform): Ditto.
3442
3443         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp: Move all operations into
3444           IDBTransactionBackendLevelDBOperations, then start scheduling them using the new
3445           IDBTransactionBackendInterface scheduling methods.
3446         (WebCore::IDBDatabaseBackendLevelDB::createObjectStore):
3447         (WebCore::IDBDatabaseBackendLevelDB::deleteObjectStore):
3448         (WebCore::IDBDatabaseBackendLevelDB::createIndex):
3449         (WebCore::IDBDatabaseBackendLevelDB::deleteIndex):
3450         (WebCore::IDBDatabaseBackendLevelDB::get):
3451         (WebCore::IDBDatabaseBackendLevelDB::put):
3452         (WebCore::IDBDatabaseBackendLevelDB::setIndexesReady):
3453         (WebCore::IDBDatabaseBackendLevelDB::openCursor):
3454         (WebCore::IDBDatabaseBackendLevelDB::count):
3455         (WebCore::IDBDatabaseBackendLevelDB::deleteRange):
3456         (WebCore::IDBDatabaseBackendLevelDB::clear):
3457         (WebCore::IDBDatabaseBackendLevelDB::createTransaction):
3458         (WebCore::IDBDatabaseBackendLevelDB::runIntVersionChangeTransaction):
3459         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.h: Move definitions of PendingOpenCall and
3460           PendingDeleteCall to the header.
3461         (WebCore::IDBDatabaseBackendLevelDB::PendingOpenCall::create):
3462         (WebCore::IDBDatabaseBackendLevelDB::PendingOpenCall::callbacks):
3463         (WebCore::IDBDatabaseBackendLevelDB::PendingOpenCall::databaseCallbacks):
3464         (WebCore::IDBDatabaseBackendLevelDB::PendingOpenCall::version):
3465         (WebCore::IDBDatabaseBackendLevelDB::PendingOpenCall::transactionId):
3466         (WebCore::IDBDatabaseBackendLevelDB::PendingOpenCall::PendingOpenCall):
3467         (WebCore::IDBDatabaseBackendLevelDB::PendingDeleteCall::create):
3468         (WebCore::IDBDatabaseBackendLevelDB::PendingDeleteCall::callbacks):
3469         (WebCore::IDBDatabaseBackendLevelDB::PendingDeleteCall::PendingDeleteCall):
3470
3471         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp: Add a newly required include.
3472         * Modules/indexeddb/leveldb/IDBTransactionCoordinatorLevelDB.cpp: Ditto.
3473
3474         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp: Implement the new interface to
3475           handle scheduling of operations in a cross platform manner, then rely on the new
3476           IDBTransactionBackendLevelDBOperations classes for the actual operations.
3477         (WebCore::IDBTransactionBackendLevelDB::create):
3478         (WebCore::IDBTransactionBackendLevelDB::IDBTransactionBackendLevelDB):
3479         (WebCore::IDBTransactionBackendLevelDB::abort):
3480         (WebCore::IDBTransactionBackendLevelDB::taskTimerFired):
3481         (WebCore::IDBTransactionBackendLevelDB::scheduleCreateObjectStoreOperation):
3482         (WebCore::IDBTransactionBackendLevelDB::scheduleDeleteObjectStoreOperation):
3483         (WebCore::IDBTransactionBackendLevelDB::scheduleVersionChangeOperation):
3484         (WebCore::IDBTransactionBackendLevelDB::scheduleCreateIndexOperation):
3485         (WebCore::IDBTransactionBackendLevelDB::scheduleDeleteIndexOperation):
3486         (WebCore::IDBTransactionBackendLevelDB::scheduleGetOperation):
3487         (WebCore::IDBTransactionBackendLevelDB::schedulePutOperation):
3488         (WebCore::IDBTransactionBackendLevelDB::scheduleSetIndexesReadyOperation):
3489         (WebCore::IDBTransactionBackendLevelDB::scheduleOpenCursorOperation):
3490         (WebCore::IDBTransactionBackendLevelDB::scheduleCountOperation):
3491         (WebCore::IDBTransactionBackendLevelDB::scheduleDeleteRangeOperation):
3492         (WebCore::IDBTransactionBackendLevelDB::scheduleClearOperation):
3493         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.h:
3494
3495         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.cpp: Added.
3496           Move all the LevelDB transaction operations from IDBDatabaseBackendLevelDB to here.
3497         (WebCore::CreateObjectStoreOperation::perform):
3498         (WebCore::CreateIndexOperation::perform):
3499         (WebCore::CreateIndexAbortOperation::perform):
3500         (WebCore::DeleteIndexOperation::perform):
3501         (WebCore::DeleteIndexAbortOperation::perform):
3502         (WebCore::GetOperation::perform):
3503         (WebCore::PutOperation::perform):
3504         (WebCore::SetIndexesReadyOperation::perform):
3505         (WebCore::OpenCursorOperation::perform):
3506         (WebCore::CountOperation::perform):
3507         (WebCore::DeleteRangeOperation::perform):
3508         (WebCore::ClearOperation::perform):
3509         (WebCore::DeleteObjectStoreOperation::perform):
3510         (WebCore::IDBDatabaseBackendLevelDB::VersionChangeOperation::perform):
3511         (WebCore::CreateObjectStoreAbortOperation::perform):
3512         (WebCore::DeleteObjectStoreAbortOperation::perform):
3513         (WebCore::IDBDatabaseBackendLevelDB::VersionChangeAbortOperation::perform):
3514         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDBOperations.h: Added.
3515         (WebCore::CreateObjectStoreOperation::create):
3516         (WebCore::CreateObjectStoreOperation::CreateObjectStoreOperation):
3517         (WebCore::DeleteObjectStoreOperation::create):
3518         (WebCore::DeleteObjectStoreOperation::DeleteObjectStoreOperation):
3519         (WebCore::IDBDatabaseBackendLevelDB::VersionChangeOperation::create):
3520         (WebCore::IDBDatabaseBackendLevelDB::VersionChangeOperation::VersionChangeOperation):
3521         (WebCore::CreateObjectStoreAbortOperation::create):
3522         (WebCore::CreateObjectStoreAbortOperation::CreateObjectStoreAbortOperation):
3523         (WebCore::DeleteObjectStoreAbortOperation::create):
3524         (WebCore::DeleteObjectStoreAbortOperation::DeleteObjectStoreAbortOperation):
3525         (WebCore::IDBDatabaseBackendLevelDB::VersionChangeAbortOperation::create):
3526         (WebCore::IDBDatabaseBackendLevelDB::VersionChangeAbortOperation::VersionChangeAbortOperation):
3527         (WebCore::CreateIndexOperation::create):
3528         (WebCore::CreateIndexOperation::CreateIndexOperation):
3529         (WebCore::CreateIndexAbortOperation::create):
3530         (WebCore::CreateIndexAbortOperation::CreateIndexAbortOperation):
3531         (WebCore::DeleteIndexOperation::create):
3532         (WebCore::DeleteIndexOperation::DeleteIndexOperation):
3533         (WebCore::DeleteIndexAbortOperation::create):
3534         (WebCore::DeleteIndexAbortOperation::DeleteIndexAbortOperation):
3535         (WebCore::GetOperation::create):
3536         (WebCore::GetOperation::GetOperation):
3537         (WebCore::PutOperation::create):
3538         (WebCore::PutOperation::PutOperation):
3539         (WebCore::SetIndexesReadyOperation::create):
3540         (WebCore::SetIndexesReadyOperation::SetIndexesReadyOperation):
3541         (WebCore::OpenCursorOperation::create):
3542         (WebCore::OpenCursorOperation::OpenCursorOperation):
3543         (WebCore::CountOperation::create):
3544         (WebCore::CountOperation::CountOperation):
3545         (WebCore::DeleteRangeOperation::create):
3546         (WebCore::DeleteRangeOperation::DeleteRangeOperation):
3547         (WebCore::ClearOperation::create):
3548         (WebCore::ClearOperation::ClearOperation):
3549
3550 2013-10-18  Beth Dakin  <bdakin@apple.com>
3551
3552         Rubber-banding is often not smooth on infinitely scrolling websites
3553         https://bugs.webkit.org/show_bug.cgi?id=122985
3554
3555         Reviewed by Simon Fraser.
3556
3557         totalContentsSize is an important part of the calculation for 
3558         maximumScrollPosition(). This function is called repeatedly throughout the curve 
3559         of a rubber-band to determine the stretch amount. To keep the rubber-band 
3560         animation smooth, it should be allowed to finish its animation using the old 
3561         totalContentsSize. This patch does that by adding a new variable, 
3562         m_totalContentsSizeForRubberBand. This value should almost always be equivalent to 
3563         m_totalContentsSize. It will only vary if m_totalContentsSize has changed in the 
3564         middle of a rubber-band, and in that case, it will stay equivalent to the old 
3565         totalContentSize value until the rubber band animation finishes.
3566
3567         * page/scrolling/ScrollingTreeScrollingNode.cpp:
3568         (WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
3569         * page/scrolling/ScrollingTreeScrollingNode.h:
3570         (WebCore::ScrollingTreeScrollingNode::totalContentsSizeForRubberBand):
3571         (WebCore::ScrollingTreeScrollingNode::setTotalContentsSizeForRubberBand):
3572         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
3573         (WebCore::ScrollingTreeScrollingNodeMac::stopSnapRubberbandTimer):
3574         (WebCore::ScrollingTreeScrollingNodeMac::maximumScrollPosition):
3575
3576 2013-10-18  ChangSeok Oh  <changseok.oh@collabora.com>
3577
3578         Unreviewed build fix for --no-svg option.
3579         m_svgStyle of RenderStyle is guarded with the ENABLE_SVG flag.
3580
3581         * rendering/style/RenderStyle.cpp:
3582         (WebCore::RenderStyle::RenderStyle):
3583
3584 2013-10-17  Brady Eidson  <beidson@apple.com>
3585
3586         Cleanup the Modules group in the WebCore.xcodeproj
3587         https://bugs.webkit.org/show_bug.cgi?id=123009
3588
3589         Rubberstamped by Antti Koivisto.
3590
3591         * WebCore.xcodeproj/project.pbxproj:
3592
3593 2013-10-18  Denis Nomiyama  <d.nomiyama@samsung.com>
3594
3595         [ATK] Fix invalid signal to set objects to an unknown state "layout-complete"
3596         https://bugs.webkit.org/show_bug.cgi?id=122970
3597
3598         Reviewed by Mario Sanchez Prada.
3599
3600         Removed an invalid signal to set objects to an unknown state
3601         layout-complete. This signal was originally generated to notify DRT
3602         and WKTR in case of page load complete.
3603         It was replaced by ATK:AtkDocument:load-complete, which is already sent
3604         by AXObjectCache::frameLoadingEventPlatformNotification().
3605
3606         There is no new test since the changes are covered by existing ones
3607         (e.g. accessibility/loading-iframe-sends-notification.html).
3608
3609         * accessibility/atk/AXObjectCacheAtk.cpp:
3610         (WebCore::AXObjectCache::postPlatformNotification): Removed an invalid
3611         signal to set objects to an unknown state layout-complete.
3612
3613 2013-10-18  Carlos Garcia Campos  <cgarcia@igalia.com>
3614
3615         [GTK] Generate API documentation for GObject DOM bindings
3616         https://bugs.webkit.org/show_bug.cgi?id=121538
3617
3618         Reviewed by Gustavo Noronha Silva.
3619
3620         * bindings/gobject/GNUmakefile.am: Add a explicit rule for all
3621         .symbols file making them depend on the corresponding header file,
3622         since the .symbols file is generated by the bindings generator.
3623
3624 2013-10-18  Mario Sanchez Prada  <mario.prada@samsung.com>
3625
3626         [ATK] Simplify implementation of atk_text_get_text
3627         https://bugs.webkit.org/show_bug.cgi?id=122644
3628
3629         Reviewed by Chris Fleizach.
3630
3631         Simplified code so we only call textUnderElement() directly once
3632         and only when needed. Also, moved the specific code for ColorWell
3633         objects up to the beginning of that function, so we don't do any
3634         additional efforts like computing text ranges in those cases.
3635
3636         No new tests are needed, just to make sure that the current layout
3637         and unit tests are still passing, which they are.
3638
3639         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
3640         (textForObject): Fixed a issue that got detected while working on
3641         this patch, which was causing a '\n' to be artificially appended
3642         at the end of text controls all the time.
3643         (webkitAccessibleTextGetText): Simplified function.
3644
3645         * accessibility/AccessibilityRenderObject.cpp:
3646         (WebCore::AccessibilityRenderObject::doAXStringForRange): Removed
3647         the check that prevents from pass ranges exceeding the limits of
3648         the element's text, since those will be checked anyway when
3649         calling String::substring().
3650
3651 2013-10-18  Brendan Long  <b.long@cablelabs.com>
3652
3653         [GStreamer][GTK] Add GRefPtr::outPtr()
3654         https://bugs.webkit.org/show_bug.cgi?id=122996
3655
3656         Reviewed by Philippe Normand.
3657
3658         No new tests because this is just simplifying existing code.
3659
3660         * platform/graphics/gstreamer/GRefPtrGStreamer.cpp: Add GRefPtr specialization for GstToc.
3661         * platform/graphics/gstreamer/GRefPtrGStreamer.h: Same.
3662         * platform/graphics/gstreamer/GStreamerGWorld.cpp: Use GRefPtr::outPtr() to simplify code.
3663         (WebCore::GStreamerGWorld::enterFullscreen):
3664         (WebCore::GStreamerGWorld::exitFullscreen):
3665         (WebCore::GStreamerGWorld::removePlatformVideoSink):
3666         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp: Same.
3667         (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfText):
3668         (WebCore::MediaPlayerPrivateGStreamer::newTextSample):
3669         (WebCore::MediaPlayerPrivateGStreamer::processTableOfContents):
3670         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp: Same.
3671         (WebCore::MediaPlayerPrivateGStreamerBase::currentVideoSinkCaps):
3672         * platform/network/soup/ResourceHandleSoup.cpp: Same.
3673         (WebCore::HostTLSCertificateSet::computeCertificateHash):
3674
3675 2013-10-17  Alexey Proskuryakov  <ap@apple.com>
3676
3677         Don't add an include for return type of a [Custom] function in generated bindings code
3678         https://bugs.webkit.org/show_bug.cgi?id=122972
3679
3680         Reviewed by Sam Weinig.
3681
3682         * bindings/scripts/CodeGeneratorJS.pm: (GenerateImplementation): Don't.
3683
3684 2013-10-17  Andreas Kling  <akling@apple.com>
3685
3686         CTTE: RenderMathMLSpace always has a MathMLTextElement.
3687         <https://webkit.org/b/122992>
3688
3689         The renderer is never anonymous and always has a corresponding
3690         MathMLTextElement. Overload element() with a tighter return type.
3691
3692         Also marked the class FINAL and made most methods private.
3693
3694         Reviewed by Antti Koivisto.
3695
3696         * rendering/mathml/RenderMathMLSpace.cpp:
3697         (WebCore::RenderMathMLSpace::RenderMathMLSpace):
3698         (WebCore::RenderMathMLSpace::updateFromElement):
3699         * rendering/mathml/RenderMathMLSpace.h:
3700
3701 2013-10-17  Tim Horton  <timothy_horton@apple.com>
3702
3703         PlatformCALayer constructor should take layer type as an argument
3704         https://bugs.webkit.org/show_bug.cgi?id=122915
3705
3706         Reviewed by Anders Carlsson.
3707
3708         No new tests, just restoring old code.
3709
3710         Un-do part of the patch for bug 122915; we can't early-return
3711         in the constructor, there's still more work to do.
3712
3713         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
3714         (PlatformCALayerMac::PlatformCALayerMac):
3715
3716 2013-10-17  Alexandru Chiculita  <achicu@adobe.com>
3717
3718         Web Inspector: [CSS Regions] Crash when highlighting a node of a flow with no regions
3719         https://bugs.webkit.org/show_bug.cgi?id=122993
3720
3721         Reviewed by Joseph Pecoraro.
3722
3723         Test: inspector-protocol/dom/highlight-flow-with-no-region.html
3724
3725         Even if a named flow has no regions the content of the flow will still have renderer objects created.
3726         Removed the assumption that all renderers inside a RenderFlowThread will always have an enclosing RenderRegion.
3727
3728         * inspector/InspectorOverlay.cpp:
3729         (WebCore::buildObjectForRendererFragments):
3730         (WebCore::InspectorOverlay::buildObjectForHighlightedNode):
3731
3732 2013-10-17  Andreas Kling  <akling@apple.com>
3733
3734         CTTE: RenderMathMLOperator always has a MathMLElement.
3735         <https://webkit.org/b/122988>
3736
3737         Reviewed by Antti Koivisto.
3738
3739         The renderer is never anonymous and always has a corresponding
3740         MathMLElement. Overload element() with a tighter return type.
3741
3742         Also marked the class FINAL and made most methods private.
3743
3744 2013-10-17  Nico Weber  <thakis@chromium.org>
3745
3746         Fix three bugs in the equals() implementations for css gradients.
3747         https://bugs.webkit.org/show_bug.cgi?id=122987
3748
3749         Reviewed by Andreas Kling.
3750
3751         1. Linear gradients were considered equal if the first gradient has no x and y
3752            position and the second has no x but does have y.
3753         2. Same as 1, for radial gradients. (This doesn't happen in practice as
3754            CSSParser::parseRadialGradient rejects such input, so no test for this case.)
3755         3. Radial gradients without x and y position weren't considered equal even if
3756            they were.
3757
3758         * css/CSSGradientValue.cpp:
3759         (WebCore::CSSLinearGradientValue::equals):
3760         (WebCore::CSSRadialGradientValue::equals):
3761
3762 2013-10-17  Antoine Quint  <graouts@apple.com>
3763
3764         Web Inspector: allow front-end to trigger the system beep sound to signal an error
3765         https://bugs.webkit.org/show_bug.cgi?id=122955
3766
3767         Reviewed by Timothy Hatcher.
3768
3769         New beep() method exposed on InspectorFrontendHost calling into WebCore's systemBeep().
3770
3771         * inspector/InspectorFrontendHost.cpp:
3772         (WebCore::InspectorFrontendHost::beep):
3773         * inspector/InspectorFrontendHost.h:
3774         * inspector/InspectorFrontendHost.idl:
3775
3776 2013-10-17  Anders Carlsson  <andersca@apple.com>
3777
3778         Remove PlatformCAAnimation::supportsValueFunction()
3779         https://bugs.webkit.org/show_bug.cgi?id=122990
3780
3781         Reviewed by Tim Horton.
3782
3783         PlatformCAAnimation::supportsValueFunction always returns true now, so there's no need for it to exist anymore.
3784
3785         * platform/graphics/ca/GraphicsLayerCA.cpp:
3786         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
3787         * platform/graphics/ca/PlatformCAAnimation.h:
3788         * platform/graphics/ca/mac/PlatformCAAnimationMac.mm:
3789         * platform/graphics/ca/win/PlatformCAAnimationWin.cpp:
3790
3791 2013-10-17  Andreas Kling  <akling@apple.com>
3792
3793         CTTE: RenderMathMLFenced always has a MathMLInlineContainerElement.
3794         <https://webkit.org/b/122986>
3795
3796         This renderer is never anonymous and always has a corresponding
3797         MathMLInlineContainerElement. Overload element() with a tighter
3798         return type.
3799
3800         Also marked the class FINAL and made most methods private.
3801
3802         Reviewed by Anders Carlsson.
3803
3804 2013-10-17  Myles C. Maxfield  <mmaxfield@apple.com>
3805
3806         Comment AffineTransform::xScale() and yScale() to make their meanings clearer
3807         https://bugs.webkit.org/show_bug.cgi?id=122981
3808
3809         Reviewed by Simon Fraser.
3810
3811         * platform/graphics/transforms/AffineTransform.h:
3812
3813 2013-10-17  Vivek Galatage  <vivek.vg@samsung.com>
3814
3815         Remove unnecessary check for RenderLayer and rename ensureLayer to createLayer in RenderLayerModelObject.
3816         https://bugs.webkit.org/show_bug.cgi?id=122928
3817
3818         Reviewed by Darin Adler.
3819
3820         No new tests due to code refactoring.
3821
3822         RenderLayerModelObject::styleDidChange invokes the ensureLayer() only in case of !layer().
3823         Again checking for layer existence would be deemed redundant in ensureLayer.
3824         Replacing it with an ASSERT(!m_layer) and also renaming it to createLayer.
3825
3826         Blink review URL: https://codereview.chromium.org/27246003/
3827
3828         * rendering/RenderLayerModelObject.cpp:
3829         (WebCore::RenderLayerModelObject::createLayer):
3830         (WebCore::RenderLayerModelObject::styleDidChange):
3831         * rendering/RenderLayerModelObject.h:
3832
3833 2013-10-17  Tim Horton  <timothy_horton@apple.com>
3834
3835         Remove PlatformCALayerMac workaround for <rdar://problem/7390716>
3836         https://bugs.webkit.org/show_bug.cgi?id=122983
3837
3838         Reviewed by Simon Fraser.
3839
3840         Remove a workaround for a bug fixed in Lion.
3841
3842         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
3843         (PlatformCALayerMac::setSublayers):
3844         (PlatformCALayerMac::removeAllSublayers):
3845         (PlatformCALayerMac::adoptSublayers):
3846
3847 2013-10-17  Robert Hogan  <robert@webkit.org>
3848
3849         "border-collapse: collapse;" for table removes part of its border (was: Border disappears when close to some elements)
3850         https://bugs.webkit.org/show_bug.cgi?id=8914
3851
3852         Reviewed by David Hyatt.
3853
3854         The table section's side of a collapsed border won't get painted if there are no cells there to paint it. So instead
3855         of relying solely on cells to paint the collapsed border paint the appropriate section of the border if there's no
3856         cell to take care of it.
3857
3858         Tests: fast/table/paint-section-borders-without-cells-rtl.html
3859                fast/table/paint-section-borders-without-cells-vertical-lr-rtl.html
3860                fast/table/paint-section-borders-without-cells-vertical-lr.html
3861                fast/table/paint-section-borders-without-cells-vertical-rl.html
3862                fast/table/paint-section-borders-without-cells.html
3863
3864         * rendering/RenderTableSection.cpp:
3865         (WebCore::RenderTableSection::paintRowGroupBorder):
3866         (WebCore::RenderTableSection::offsetLeftForRowGroupBorder):
3867         (WebCore::RenderTableSection::offsetTopForRowGroupBorder):
3868         (WebCore::RenderTableSection::verticalRowGroupBorderHeight):
3869         (WebCore::RenderTableSection::horizontalRowGroupBorderWidth):
3870         (WebCore::RenderTableSection::paintRowGroupBorderIfRequired):
3871         (WebCore::physicalBorderForDirection):
3872         (WebCore::RenderTableSection::paintObject):
3873         * rendering/RenderTableSection.h:
3874
3875 2013-10-17  Andreas Kling  <akling@apple.com>
3876
3877         StyleRuleFoo::mutableProperties() should return a reference.
3878         <https://webkit.org/b/122962>
3879
3880         The mutableProperties() functions always return objects, so make
3881         them return MutableStylePropertySet&.
3882
3883         Also tweaked the StyleRuleCSSStyleDeclaration constructor to take
3884         references to both the properties and the owner rule since both
3885         are required.
3886
3887         Reviewed by Antti Koivisto.
3888
3889 2013-10-17  Hans Muller  <hmuller@adobe.com>
3890
3891         [CSS Shapes] Improve the performance of image valued shapes with large shape-margins
3892         https://bugs.webkit.org/show_bug.cgi?id=122613
3893
3894         Reviewed by Andreas Kling.
3895
3896         The cost of computing the shape-margin boundary of an image-valued shape-outside
3897         is now proportional to (2 * shape-margin + image.height) rather than
3898         (2 * shape-margin * image.height). The performance improvement comes from skipping
3899         sequences of rounded-rectangle intervals that will not contribute to the final
3900         result. Each non-empty row in the original image contributes one rounded-rectangle
3901         whose corner radius is shape-margin, height is 2 * shape-margin, and width is
3902         2 * shape-margin plus the width of the limits of the intervals on the row.
3903
3904         Renamed private method RasterShape::getIntervals() to intervalsAt() to be a little
3905         more consistent with WebKit naming conventions.
3906
3907         There are no new tests since is just an internal refactoring.
3908
3909         * rendering/shapes/RasterShape.cpp:
3910         (WebCore::MarginIntervalGenerator::set): Changed the x1,x2 parameters to an IntShapeInterval.
3911         (WebCore::RasterShapeIntervals::contains): Refactor for the getIntervals() => intervalsAt() rename.
3912         (WebCore::RasterShapeIntervals::getIntervalX1Values): Ditto.
3913         (WebCore::RasterShapeIntervals::getIncludedIntervals): Ditto.
3914         (WebCore::RasterShapeIntervals::getExcludedIntervals): Ditto.
3915         (WebCore::RasterShapeIntervals::computeShapeMarginIntervals): Performance tuning.
3916         * rendering/shapes/RasterShape.h:
3917         (WebCore::RasterShapeIntervals::intervalsAt): Renamed getIntervals().
3918         (WebCore::RasterShapeIntervals::limitIntervalAt): Return the min/max limits of the intervals at Y.
3919         * rendering/shapes/ShapeInterval.h:
3920         (WebCore::ShapeInterval::isEmpty): Added.
3921
3922 2013-10-15  Philippe Normand  <pnormand@igalia.com>
3923
3924         [GTK] Add URLMediaStream in the build
3925         https://bugs.webkit.org/show_bug.cgi?id=122833
3926
3927         Reviewed by Carlos Garcia Campos.
3928
3929         * GNUmakefile.am: Add mediastream/gstreamer in include directories list.
3930         * GNUmakefile.list.am: Add DOMURLMediaStream files in the build.
3931
3932 2013-10-17  Andreas Kling  <akling@apple.com>
3933
3934         Use PassRef for constructing StylePropertySets.
3935         <https://webkit.org/b/122948>
3936
3937         Make functions that construct StylePropertySets return PassRef
3938         instead of PassRefPtr. Since they never return null, this gets rid
3939         of the extra branch in ~PassRefPtr everywhere.
3940
3941         Also StyleRule* classes now hold a Ref<StylePropertySet>, codifying
3942         the fact that they always have a property set.
3943
3944         Reviewed by Antti Koivisto.
3945
3946 2013-10-17  Andreas Kling  <akling@apple.com>
3947
3948         DataRef<T> should use Ref<T> internally.
3949         <https://webkit.org/b/122953>
3950
3951         DataRef is used to hold RenderStyle substructures, and due to the
3952         way style inheritance is implemented, DataRef will always point to
3953         a live object.
3954
3955         Codify this by making DataRef::m_data a Ref, and making all methods
3956         that create substructure objects return PassRef.
3957
3958         Reviewed by Antti Koivisto.
3959
3960 2013-10-17  Mihnea Ovidenie  <mihnea@adobe.com>
3961
3962         [CSS Regions] Anonymous nested regions
3963         https://bugs.webkit.org/show_bug.cgi?id=119135
3964
3965         Reviewed by David Hyatt.
3966
3967         Tests: fast/regions/table-caption-as-region.html
3968                fast/regions/table-cell-as-region.html
3969
3970         This patch allows any non-replaced block to behave like a region. When an element is styled with the
3971         -webkit-flow-from property, instead of making the renderer a RenderRegion, we let the original
3972         renderer be created the same way and we add a region as an anonymous child for the renderer.
3973         The anonymous block child, modeled by the new RenderNamedFlowFragment class, will be responsible
3974         for the fragmentation of the named flow thread content.
3975
3976         A RenderBlockFlow object will keep a reference to a RenderNamedFlowFragment(RenderRegion) inside its
3977         rare data structures.
3978
3979         Contains code contributed by Catalin Badea.
3980  
3981         * CMakeLists.txt:
3982         * GNUmakefile.list.am:
3983         * WebCore.vcxproj/WebCore.vcxproj:
3984         * WebCore.xcodeproj/project.pbxproj:
3985         * dom/Element.cpp: Changed to take the anonymous region into account.
3986         (WebCore::Element::renderRegion):
3987         (WebCore::Element::webkitGetRegionFlowRanges):
3988         * dom/WebKitNamedFlow.cpp: Ditto.
3989         (WebCore::WebKitNamedFlow::firstEmptyRegionIndex):
3990         (WebCore::WebKitNamedFlow::getRegionsByContent):
3991         (WebCore::WebKitNamedFlow::getRegions):
3992         * inspector/InspectorOverlay.cpp: Take into account the new model for regions, with an anonymous region inside a block.
3993         (WebCore::buildObjectForRegionHighlight):
3994         (WebCore::buildObjectForElementInfo):
3995         * rendering/RenderBlock.cpp:
3996         (WebCore::RenderBlock::computeShapeSize): For a render named flow fragment, there is no need to recompute the shape inside
3997         we can take it from the parent.
3998         (WebCore::RenderBlock::renderName): Make the block that contains a render named flow fragment (region) report RenderRegion.
3999         A future patch that will change this will need to rebase a lot of tests.
4000         * rendering/RenderBlockFlow.cpp:
4001         (WebCore::RenderBlockFlow::insertedIntoTree): Create the anonymous region if needed (change of -webkit-flow-from determines Node reattach).
4002         (WebCore::RenderBlockFlow::willBeDestroyed): Clean-up the anonymous region if necessary.
4003         (WebCore::RenderBlockFlow::clearFloats): Small style change to make sure that check-webkit-style reports 0 failures on RenderBlockFlow.cpp.
4004         (WebCore::RenderBlockFlow::layoutBlock):
4005         (WebCore::RenderBlockFlow::styleDidChange): Update the style of the anonymous region too.
4006         (WebCore::RenderBlockFlow::createRenderNamedFlowFragmentIfNeeded): Helper function to create the anonymous region
4007         and to add it as a child to the block.
4008         (WebCore::RenderBlockFlow::canHaveChildren):
4009         (WebCore::RenderBlockFlow::canHaveGeneratedChildren):
4010         (WebCore::RenderBlockFlow::namedFlowFragmentNeedsUpdate): Force a layout of the anonymous region if the
4011         parent block has percentage height (similar to RenderBlock::updateBlockChildDirtyBitsBeforeLayout)
4012         (WebCore::RenderBlockFlow::updateLogicalHeight): Update the logical height of anonymous region when the height of parent is updated.
4013         (WebCore::RenderBlockFlow::setRenderNamedFlowFragment):
4014         * rendering/RenderBlockFlow.h:
4015         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
4016         (WebCore::RenderBlockFlow::renderNamedFlowFragment):
4017         * rendering/RenderElement.cpp:
4018         (WebCore::RenderElement::createFor): Remove the direct creation of RenderRegion objects since they will be
4019         created as anonymous children of block flow objects.
4020         * rendering/RenderElement.h:
4021         (WebCore::RenderElement::generatingElement): Account for anonymous region if necessary.
4022         * rendering/RenderFlowThread.cpp:
4023         (WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent): Take anonymous region into account
4024         and use the anonymous region parent offset/border.
4025         * rendering/RenderLayer.cpp:
4026         (WebCore::RenderLayer::shouldBeNormalFlowOnly): Check for style instead of isRenderRegion since
4027         the parent of the anonymous region will get the layer.
4028         * rendering/RenderListItem.cpp:
4029         (WebCore::RenderListItem::insertedIntoTree): Call RenderBlockFlow method instead.
4030         * rendering/RenderNamedFlowFragment.cpp: Added. Model the behaviour of the anonymous region.
4031         Has RenderRegion as a base class.
4032         (WebCore::RenderNamedFlowFragment::RenderNamedFlowFragment):
4033         (WebCore::RenderNamedFlowFragment::~RenderNamedFlowFragment):
4034         (WebCore::RenderNamedFlowFragment::setStyleForNamedFlowFragment):