efadda86299353f8227b6fcccbd3023a9f1b51aa
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2017-09-27  Wenson Hsieh  <wenson_hsieh@apple.com>
2
3         Unreviewed, fix the internal build after r222595.
4
5         Add missing iOS compiler guards.
6
7         * platform/ios/PlatformPasteboardIOS.mm:
8         (WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const):
9         (WebCore::PlatformPasteboard::write):
10
11 2017-09-27  Wenson Hsieh  <wenson_hsieh@apple.com>
12
13         Drag event DataTransfer has unexpected types "dyn.ah62d4..."
14         https://bugs.webkit.org/show_bug.cgi?id=172526
15         <rdar://problem/32396081>
16
17         Reviewed by Ryosuke Niwa.
18
19         Currently, the pasteboard types we expose to web content are simply the types that appear on the platform
20         pasteboard (i.e. the general NSPasteboard on Mac, and either the general UIPasteboard or a UIDragSession's
21         NSItemProviders on iOS). This leads to DataTransfer.types exposing many private pasteboard types written by apps
22         around the system to the page, such as dynamic UTIs, CorePasteboardFlavorTypes, or the "Apple WebKit dummy
23         pasteboard type". These are not only confusing and not useful for web content (since they mostly hold values of
24         empty string anyways), but can additionally pose privacy concerns by exposing information meant only for native
25         applications to unvetted web content.
26
27         To address this problem, other browsers (e.g. Chrome and Firefox on Mac) white-list MIME types in DataTransfer's
28         list of types. By default, when dragging or copying, these are "text/plain", "text/html" and "text/uri-list".
29         However, this policy alone is insufficient, because the page may also supply its own types, in which case our
30         naive whitelist would prevent us from delivering them to the page. To address this additional constraint, both
31         Chrome and Firefox write any custom data supplied by the page to custom pasteboard UTIs
32         (org.chromium.drag-dummy-type and org.mozilla.custom-clipdata, respectively). The corresponding data is a map
33         of custom UTI => custom data supplied by the page; upon drop or paste, this mapping is consulted if the page
34         calls getData() with a custom UTI.
35
36         This patch adopts this same approach in WebKit, and introduces the com.apple.WebKit.custom-pasteboard-data UTI
37         (refer to per-method comments below for more information). These changes are covered by 18 new layout and API
38         tests, as well as existing drag-and-drop tests.
39
40         Tests: editing/pasteboard/data-transfer-get-data-on-drop-custom.html
41                editing/pasteboard/data-transfer-get-data-on-drop-plain-text.html
42                editing/pasteboard/data-transfer-get-data-on-drop-rich-text.html
43                editing/pasteboard/data-transfer-get-data-on-drop-url.html
44                editing/pasteboard/data-transfer-get-data-on-paste-custom.html
45                editing/pasteboard/data-transfer-get-data-on-paste-plain-text.html
46                editing/pasteboard/data-transfer-get-data-on-paste-rich-text.html
47                DataInteractionTests.DataTransferGetDataWhenDroppingPlainText
48                DataInteractionTests.DataTransferGetDataWhenDroppingCustomData
49                DataInteractionTests.DataTransferGetDataWhenDroppingURL
50                DataInteractionTests.DataTransferGetDataWhenDroppingImageWithFileURL
51                DataInteractionTests.DataTransferGetDataWhenDroppingRespectsPresentationStyle
52                DataInteractionTests.DataTransferSetDataCannotWritePlatformTypes
53                DataInteractionTests.DataTransferGetDataCannotReadPrivatePlatformTypes
54                UIPasteboardTests.DataTransferGetDataWhenPastingURL
55                UIPasteboardTests.DataTransferGetDataWhenPastingPlatformRepresentations
56                UIPasteboardTests.DataTransferSetDataCannotWritePlatformTypes
57                UIPasteboardTests.DataTransferGetDataCannotReadPrivatePlatformTypes
58
59         * CMakeLists.txt:
60
61         Add Pasteboard.cpp to the WebCore CMakeList.
62
63         * WebCore.xcodeproj/project.pbxproj:
64         * dom/DataTransfer.cpp:
65         (WebCore::DataTransfer::getData const):
66         (WebCore::DataTransfer::createForDragStartEvent):
67
68         Make a new static helper function to create a StaticPasteboard-backed DataTransfer when dispatching a dragstart
69         event. Any data supplied by the page will be written to the static pasteboard of this DataTransfer.
70
71         (WebCore::DataTransfer::moveDragState):
72
73         Add a new helper on DataTransfer to transfer the data required to initiate a drag from one DataTransfer to
74         another. This is used in EventHandler to transfer the contents of the temporary DataTransfer modified by the
75         page during the dragstart event over to the DataTransfer used for the rest of the drag initiation codepath,
76         which is actually connected to the platform. This includes committing the contents of the other
77         DataTransfer's StaticPasteboard to the new platform-connected Pasteboard.
78
79         (WebCore::DataTransfer::hasDragImage const):
80         * dom/DataTransfer.h:
81         * editing/cocoa/EditorCocoa.mm:
82         (WebCore::Editor::selectionInHTMLFormat):
83         (WebCore::Editor::writeSelectionToPasteboard):
84         (WebCore::Editor::writeSelection):
85
86         Write an additional HTML markup string on iOS. We already do this for Mac, but this data previously had no use
87         on iOS. This is needed for to vend the "text/html" representation to the page on iOS when pasting.
88
89         * editing/mac/EditorMac.mm:
90         (WebCore::Editor::selectionInHTMLFormat): Deleted.
91         * editing/wpe/EditorWPE.cpp:
92         (WebCore::createFragmentFromPasteboardData):
93         * page/EventHandler.cpp:
94         (WebCore::EventHandler::dispatchDragStartEventOnSourceElement):
95
96         Renamed from dispatchDragStartEvent to dispatchDragStartEventOnSourceElement. Additionally, simplified the logic
97         significantly, so that we now just check to see if the StaticPasteboard exposed to the page has any data,
98         instead of using platform-dependent logic to compare changeCounts. We can do this because StaticPasteboard is
99         guaranteed to only contain content that the page has supplied during the dragstart event, since it is empty
100         upon initialization and cannot be written to by the rest of the platform.
101
102         (WebCore::EventHandler::handleDrag):
103
104         Tweak dispatchDragStartEvent to take a DataTransfer to expose to bindings; at the call site in handleDrag,
105         create a new DataTransfer backed by a StaticPasteboard that the page may mutate over the course of the dragstart
106         event. After dispatching to the page, move the dragging information present on the drag start DataTransfer over
107         to the DragState's DataTransfer. If the drag image has not been set, compute and set the default drag image
108         element on the DragState's DataTransfer.
109
110         (WebCore::EventHandler::dispatchDragStartEvent): Deleted.
111         * page/EventHandler.h:
112         * page/Settings.cpp:
113         (WebCore::Settings::customPasteboardDataEnabled):
114         * page/Settings.h:
115         (WebCore::Settings::setCustomPasteboardDataEnabled):
116         * page/ios/EventHandlerIOS.mm:
117         (WebCore::EventHandler::createDraggingDataTransfer const): Deleted.
118         * page/mac/EventHandlerMac.mm:
119         (WebCore::EventHandler::createDraggingDataTransfer const): Deleted.
120         * page/win/EventHandlerWin.cpp:
121         (WebCore::EventHandler::createDraggingDataTransfer const): Deleted.
122
123         Remove this helper on both iOS and Mac. This only called createForDrag() before, with the addition of clearing
124         the platform pasteboard prior to returning. Now that a StaticPasteboard is used when starting a drag, we clear
125         out the platform pasteboard in platform-invariant code in EventHandler::handleDrag, so these helpers are no
126         longer useful.
127
128         * platform/Pasteboard.cpp: Added.
129         (WebCore::isSafeTypeForDOMToReadAndWrite):
130
131         Add a new helper to determine whether or not a pasteboard type is one of the standard DOM-exposed types. These
132         are "text/plain", "text/html" and "text/uri-list".
133
134         (WebCore::sharedBufferFromCustomData):
135         (WebCore::customDataFromSharedBuffer):
136
137         Add helper methods to serialize and deserialize custom data. The serialized data blob consists of: (1)
138         versioning information, (2) a dictionary mapping each custom type to a value, and (3) a full list of types
139         written by the page, in the order they were written.
140
141         * platform/Pasteboard.h:
142
143         Rename Pasteboard::readString to Pasteboard::readStringForBindings, to reflect that the string being read and
144         the given type are exposed to and from the DOM.
145
146         * platform/PasteboardStrategy.h:
147         * platform/PasteboardWriterData.h:
148         * platform/PlatformPasteboard.h:
149         * platform/StaticPasteboard.cpp:
150
151         Split m_stringContents out into m_platformData and m_customData. The former contains type-to-data entries for
152         the DOM-exposed types, while the second contains entries that don't belong in the former.
153
154         (WebCore::StaticPasteboard::hasData):
155         (WebCore::StaticPasteboard::readStringForBindings):
156         (WebCore::StaticPasteboard::writeString):
157         (WebCore::StaticPasteboard::clear):
158         (WebCore::StaticPasteboard::commitToPasteboard):
159
160         Rather than propagate each entry to the client layer one at a time, populate a new PasteboardCustomData struct
161         and send it to the client layer in one go. This new struct consists of an array of types in the order they were
162         written by the page, a dictionary of public types (types we want to write directly to the platform pasteboard)
163         and private types (custom types we want to package under our custom data blob).
164
165         (WebCore::StaticPasteboard::readString): Deleted.
166         * platform/StaticPasteboard.h:
167         * platform/glib/EventHandlerGLib.cpp:
168         (WebCore::EventHandler::createDraggingDataTransfer const): Deleted.
169         * platform/gtk/PasteboardGtk.cpp:
170         (WebCore::Pasteboard::readStringForBindings):
171         (WebCore::Pasteboard::writeCustomData):
172         (WebCore::Pasteboard::readString): Deleted.
173         * platform/gtk/PlatformPasteboardGtk.cpp:
174         (WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const):
175         (WebCore::PlatformPasteboard::write):
176
177         Add stub implementations for new custom pasteboard data methods.
178
179         * platform/ios/AbstractPasteboard.h:
180         * platform/ios/PasteboardIOS.mm:
181         (WebCore::Pasteboard::writeCustomData):
182
183         Add new plumbing to ship a custom data (PasteboardCustomData) struct from WebCore to the client layer.
184
185         (WebCore::cocoaTypeFromHTMLClipboardType):
186         (WebCore::readPlatformValueAsString):
187         (WebCore::Pasteboard::readStringForBindings):
188         (WebCore::Pasteboard::types):
189
190         Rewritten to ask the client layer for DOM-exposed types rather than all types, in the case where custom
191         pasteboard data is enabled in Settings.
192
193         (WebCore::Pasteboard::readString): Deleted.
194         * platform/ios/PlatformPasteboardIOS.mm:
195         (WebCore::PlatformPasteboard::bufferForType):
196         (WebCore::PlatformPasteboard::getPathnamesForType const):
197         (WebCore::PlatformPasteboard::numberOfFiles const):
198         (WebCore::PlatformPasteboard::platformPasteboardTypeForSafeTypeForDOMToReadAndWrite):
199
200         Add a new helper to map DOM-safe pasteboard types to their platform counterparts.
201
202         (WebCore::PlatformPasteboard::write):
203         (WebCore::safeTypeForDOMToReadAndWriteForPlatformType):
204
205         Add a new helper to map platform pasteboard types to their DOM-safe counterparts.
206
207         (WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const):
208
209         Fetch a list of DOM-exposed types. On iOS, for drag and drop, we have the additional constraint of not being
210         able to read any data before the drop happens. This is problematic, since the page needs to know the list of
211         types during 'dragover' events. To support this, we instead keep the array of types in the teamData property of
212         the generated item provider, which is immediately available, even when dragging across different apps. Note that
213         we still need to check if the pasteboard contains the full custom data blob here to handle the case where we
214         copy on Mac and perform a continuity paste on iOS, since teamData does not exist on Mac.
215
216         (WebCore::PlatformPasteboard::readString):
217
218         Tweak to account for how UIPasteboard may return data blobs when reading values.
219
220         (WebCore::PlatformPasteboard::getPathnamesForType): Deleted.
221         (WebCore::PlatformPasteboard::numberOfFiles): Deleted.
222         * platform/ios/WebItemProviderPasteboard.h:
223         * platform/ios/WebItemProviderPasteboard.mm:
224         (-[WebItemProviderRegistrationInfoList itemProvider]):
225         (+[WebItemProviderLoadResult loadResultWithItemProvider:typesToLoad:]):
226         (-[WebItemProviderLoadResult initWithItemProvider:typesToLoad:]):
227         (-[WebItemProviderLoadResult typesToLoad]):
228         (-[WebItemProviderLoadResult setFileURL:forType:]):
229         (-[WebItemProviderLoadResult itemProvider]):
230         (-[WebItemProviderPasteboard setItemProviders:]):
231         (-[WebItemProviderPasteboard dataForPasteboardType:]):
232         (-[WebItemProviderPasteboard typeIdentifiersToLoadForRegisteredTypeIdentfiers:]):
233         (-[WebItemProviderPasteboard doAfterLoadingProvidedContentIntoFileURLs:synchronousTimeout:]):
234         (+[WebItemProviderLoadResult emptyLoadResult]): Deleted.
235         (+[WebItemProviderLoadResult loadResultWithFileURLMap:presentationStyle:]): Deleted.
236         (-[WebItemProviderLoadResult initWithFileURLMap:presentationStyle:]): Deleted.
237         (-[WebItemProviderPasteboard typeIdentifierToLoadForRegisteredTypeIdentfiers:]): Deleted.
238
239         In the case of drag and drop on iOS, we cannot load any data prior to performing the drop; additionally, any
240         attempts to load data immediately after the drop is performed in the UI process will fail. This means any and
241         all data that the web process may require in the future when handling the drop must be loaded out of the item
242         providers and saved when the drop is being handled in the UI process.
243
244         Currently, we only load the highest fidelity type we can handle (or, if we don't know what we can handle, we
245         select the highest fidelity representation conforming to "public.content"). This is a problematic for supporting
246         DataTransfer.getData() on drop on iOS, because the page can ask for any of the three web-exposed types. To
247         address this, we refactor WebItemProviderPasteboard to support loading multiple representations per item being
248         dropped. At minimum, we will load anything conforming to "public.html", "public.plain-text", "public.url", and
249         the new "com.apple.WebKit.custom-pasteboard-data" so we have means to answer any question that the page could
250         ask via DataTransfer.getData(). We additonally load the highest fidelity supported (or content-conformant) type,
251         if it has not already been loaded as a result of the former.
252
253         To make this possible, we refactor WebItemProviderLoadResult to take an item provider and a list of types to
254         load. -doAfterLoadingProvidedContentIntoFileURLs:synchronousTimeout: then creates a list of load results and
255         uses each one to represent the results of loading data from its item provider (i.e. a map of UTI => file URL).
256
257         * platform/mac/PasteboardMac.mm:
258         (WebCore::Pasteboard::writeCustomData):
259         (WebCore::cocoaTypeFromHTMLClipboardType):
260         (WebCore::readPlatformValueAsString):
261         (WebCore::Pasteboard::readStringForBindings):
262
263         Change readStringForBindings (formerly, readString) so that if support for custom pasteboard data is enabled,
264         we only allow reading directly from the platform pasteboard if the given type is DOM-safe; otherwise, we consult
265         the custom data blob, if it exists. Otherwise, if support for custom pasteboard data is disabled, we fall back
266         to our current behavior.
267
268         (WebCore::Pasteboard::types):
269         (WebCore::Pasteboard::readString): Deleted.
270         * platform/mac/PlatformPasteboardMac.mm:
271         (WebCore::PlatformPasteboard::numberOfFiles const):
272         (WebCore::PlatformPasteboard::getPathnamesForType const):
273         (WebCore::PlatformPasteboard::stringForType):
274         (WebCore::safeTypeForDOMToReadAndWriteForPlatformType):
275         (WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const):
276
277         Add support for reading DOM-exposed types and fetching DOM-exposed data off of the pasteboard. The overall idea
278         here is similar to iOS, though implementation details vary (e.g. no item provider support).
279
280         (WebCore::PlatformPasteboard::write):
281         (WebCore::PlatformPasteboard::platformPasteboardTypeForSafeTypeForDOMToReadAndWrite):
282         (WebCore::PlatformPasteboard::numberOfFiles): Deleted.
283         (WebCore::PlatformPasteboard::getPathnamesForType): Deleted.
284         * platform/win/PasteboardWin.cpp:
285         (WebCore::Pasteboard::readStringForBindings):
286         (WebCore::Pasteboard::writeCustomData):
287         (WebCore::Pasteboard::readString): Deleted.
288         * platform/wpe/PasteboardWPE.cpp:
289         (WebCore::Pasteboard::readStringForBindings):
290         (WebCore::Pasteboard::writeCustomData):
291         (WebCore::Pasteboard::readString): Deleted.
292         * platform/wpe/PlatformPasteboardWPE.cpp:
293         (WebCore::PlatformPasteboard::typesSafeForDOMToReadAndWrite const):
294         (WebCore::PlatformPasteboard::write):
295         * testing/InternalSettings.cpp:
296         (WebCore::InternalSettings::Backup::Backup):
297         (WebCore::InternalSettings::Backup::restoreTo):
298         (WebCore::InternalSettings::setCustomPasteboardDataEnabled):
299
300         Add a new internal settings hook for layout tests to opt in to using custom pasteboard data. By default, custom
301         pasteboard data is enabled only in Safari, or on applications linked on or after certain releases of iOS and
302         macOS.
303
304         * testing/InternalSettings.h:
305         * testing/InternalSettings.idl:
306
307 2017-09-27  Zalan Bujtas  <zalan@apple.com>
308
309         Deferred image size change makes image-load-on-delay.html flaky.
310         https://bugs.webkit.org/show_bug.cgi?id=177520
311         <rdar://problem/34674299>
312
313         Reviewed by Dean Jackson.
314
315         Only defer recomputeIsIgnored when the image change actually triggers layout. 
316
317         * accessibility/AXObjectCache.cpp:
318         (WebCore::rendererNeedsDeferredUpdate):
319         (WebCore::AXObjectCache::deferRecomputeIsIgnoredIfNeeded):
320         (WebCore::AXObjectCache::deferTextChangedIfNeeded):
321         * accessibility/AXObjectCache.h:
322         (WebCore::AXObjectCache::deferRecomputeIsIgnoredIfNeeded):
323         * rendering/RenderImage.cpp:
324         (WebCore::RenderImage::imageChanged):
325
326 2017-09-27  Tim Horton  <timothy_horton@apple.com>
327
328         Try to fix the Mac CMake build
329
330         * PlatformMac.cmake:
331
332 2017-09-27  Myles C. Maxfield  <mmaxfield@apple.com>
333
334         Minimum font size may cause elements to have an infinite line-height
335         https://bugs.webkit.org/show_bug.cgi?id=177573
336         <rdar://problem/34573792>
337
338         Reviewed by Dan Bernstein.
339
340         When minimum font size is specified, we were trying to preserve the ratio of specified font-size
341         and specified line-height in order to boost the computed font size proportionately to the font-size
342         boost. However, this doesn't work when the specified font-size is 0, because the ratio between
343         line-height and font-size is infinite.
344
345         The most straightforward solution is just to make small font-sizes opt out of the line-height
346         adjustment because the result would be too big.
347
348         Test: fast/text/line-height-minimumFontSize-text-small-font-size.html
349
350         * css/StyleBuilderCustom.h:
351         (WebCore::computeLineHeightMultiplierDueToFontSize):
352         (WebCore::StyleBuilderCustom::applyValueLineHeight):
353
354 2017-09-27  Alex Christensen  <achristensen@webkit.org>
355
356         Allow modern decoding of std::optional<T>
357         https://bugs.webkit.org/show_bug.cgi?id=177519
358
359         Reviewed by Tim Horton.
360
361         * platform/DragItem.h:
362         (WebCore::DragItem::decode):
363
364 2017-09-27  Myles C. Maxfield  <mmaxfield@apple.com>
365
366         "Tag" codepoints require the complex text codepath
367         https://bugs.webkit.org/show_bug.cgi?id=177251
368         <rdar://problem/34384001>
369
370         Reviewed by David Hyatt.
371
372         Previously, Tag codepoints (U+E0000 - U+E007F) weren't triggering the
373         complex text codepath.
374
375         Eventually, we should migrate the default from simple to complex. I'll do
376         that in a separate patch.
377
378         Test: fast/text/flag-codepoint.html
379
380         * platform/graphics/FontCascade.cpp:
381         (WebCore::FontCascade::characterRangeCodePath):
382
383 2017-09-27  David Hyatt  <hyatt@apple.com>
384
385         Rename "FlowThread" to "FragmentedFlow"
386         https://bugs.webkit.org/show_bug.cgi?id=177557
387
388         Reviewed by Zalan Bujtas.
389
390         * CMakeLists.txt:
391         * WebCore.xcodeproj/project.pbxproj:
392         * dom/Document.cpp:
393         (WebCore::Document::updateLayoutIfDimensionsOutOfDate):
394         * dom/Element.cpp:
395         (WebCore::Element::absoluteEventBounds):
396         * rendering/LayoutState.cpp:
397         (WebCore::LayoutState::LayoutState):
398         * rendering/LayoutState.h:
399         (WebCore::LayoutState::currentRenderFragmentedFlow const):
400         (WebCore::LayoutState::setCurrentRenderFragmentedFlow):
401         (WebCore::LayoutState::currentRenderFlowThread const): Deleted.
402         (WebCore::LayoutState::setCurrentRenderFlowThread): Deleted.
403         * rendering/LogicalSelectionOffsetCaches.h:
404         (WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::ContainingBlockInfo):
405         (WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::setBlock):
406         (WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::logicalLeftSelectionOffset const):
407         (WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::logicalRightSelectionOffset const):
408         (WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::hasFloatsOrFragmentedFlows const):
409         (WebCore::LogicalSelectionOffsetCaches::LogicalSelectionOffsetCaches):
410         (WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::hasFloatsOrFlowThreads const): Deleted.
411         * rendering/RenderBlock.cpp:
412         (WebCore::RenderBlock::styleDidChange):
413         (WebCore::RenderBlock::clone const):
414         (WebCore::RenderBlock::removeLeftoverAnonymousBlock):
415         (WebCore::RenderBlock::preparePaginationBeforeBlockLayout):
416         (WebCore::RenderBlock::addOverflowFromChildren):
417         (WebCore::RenderBlock::addVisualOverflowFromTheme):
418         (WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats):
419         (WebCore::RenderBlock::simplifiedLayout):
420         (WebCore::RenderBlock::isSelectionRoot const):
421         (WebCore::RenderBlock::selectionGaps):
422         (WebCore::RenderBlock::insertPositionedObject):
423         (WebCore::isChildHitTestCandidate):
424         (WebCore::RenderBlock::cachedEnclosingFragmentedFlow const):
425         (WebCore::RenderBlock::cachedEnclosingFragmentedFlowNeedsUpdate const):
426         (WebCore::RenderBlock::setCachedEnclosingFragmentedFlowNeedsUpdate):
427         (WebCore::RenderBlock::updateCachedEnclosingFragmentedFlow const):
428         (WebCore::RenderBlock::locateEnclosingFragmentedFlow const):
429         (WebCore::RenderBlock::resetEnclosingFragmentedFlowAndChildInfoIncludingDescendants):
430         (WebCore::RenderBlock::absoluteQuads const):
431         (WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage const):
432         (WebCore::RenderBlock::fragmentAtBlockOffset const):
433         (WebCore::canComputeFragmentRangeForBox):
434         (WebCore::RenderBlock::childBoxIsUnsplittableForFragmentation const):
435         (WebCore::RenderBlock::computeFragmentRangeForBoxChild const):
436         (WebCore::RenderBlock::estimateFragmentRangeForBoxChild const):
437         (WebCore::RenderBlock::updateFragmentRangeForBoxChild const):
438         (WebCore::RenderBlock::cachedFlowThreadContainingBlock const): Deleted.
439         (WebCore::RenderBlock::cachedFlowThreadContainingBlockNeedsUpdate const): Deleted.
440         (WebCore::RenderBlock::setCachedFlowThreadContainingBlockNeedsUpdate): Deleted.
441         (WebCore::RenderBlock::updateCachedFlowThreadContainingBlock const): Deleted.
442         (WebCore::RenderBlock::locateFlowThreadContainingBlock const): Deleted.
443         (WebCore::RenderBlock::resetFlowThreadContainingBlockAndChildInfoIncludingDescendants): Deleted.
444         * rendering/RenderBlock.h:
445         * rendering/RenderBlockFlow.cpp:
446         (WebCore::RenderBlockFlow::willCreateColumns const):
447         (WebCore::RenderBlockFlow::layoutBlock):
448         (WebCore::RenderBlockFlow::layoutBlockChild):
449         (WebCore::RenderBlockFlow::setStaticInlinePositionForChild):
450         (WebCore::inNormalFlow):
451         (WebCore::RenderBlockFlow::applyBeforeBreak):
452         (WebCore::RenderBlockFlow::applyAfterBreak):
453         (WebCore::RenderBlockFlow::adjustLinePositionForPagination):
454         (WebCore::RenderBlockFlow::hasNextPage const):
455         (WebCore::RenderBlockFlow::adjustForUnsplittableChild):
456         (WebCore::RenderBlockFlow::setPageBreak):
457         (WebCore::RenderBlockFlow::updateMinimumPageHeight):
458         (WebCore::RenderBlockFlow::pageLogicalTopForOffset const):
459         (WebCore::RenderBlockFlow::pageLogicalHeightForOffset const):
460         (WebCore::RenderBlockFlow::pageRemainingLogicalHeightForOffset const):
461         (WebCore::RenderBlockFlow::styleDidChange):
462         (WebCore::RenderBlockFlow::updateStylesForColumnChildren):
463         (WebCore::RenderBlockFlow::computeOverflow):
464         (WebCore::RenderBlockFlow::paintColumnRules):
465         (WebCore::RenderBlockFlow::computeLogicalLocationForFloat):
466         (WebCore::RenderBlockFlow::setMultiColumnFlow):
467         (WebCore::RenderBlockFlow::relayoutForPagination):
468         (WebCore::RenderBlockFlow::layoutExcludedChildren):
469         (WebCore::RenderBlockFlow::addChild):
470         (WebCore::RenderBlockFlow::removeChild):
471         (WebCore::RenderBlockFlow::checkForPaginationLogicalHeightChange):
472         (WebCore::RenderBlockFlow::setComputedColumnCountAndWidth):
473         (WebCore::RenderBlockFlow::updateColumnProgressionFromStyle):
474         (WebCore::RenderBlockFlow::computedColumnWidth const):
475         (WebCore::RenderBlockFlow::computedColumnCount const):
476         (WebCore::RenderBlockFlow::isTopLayoutOverflowAllowed const):
477         (WebCore::RenderBlockFlow::isLeftLayoutOverflowAllowed const):
478         (WebCore::RenderBlockFlow::setMultiColumnFlowThread): Deleted.
479         * rendering/RenderBlockFlow.h:
480         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
481         (WebCore::RenderBlockFlow::multiColumnFlow const):
482         (WebCore::RenderBlockFlow::multiColumnFlowThread const): Deleted.
483         * rendering/RenderBlockLineLayout.cpp:
484         (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
485         (WebCore::RenderBlockFlow::linkToEndLineIfNeeded):
486         (WebCore::RenderBlockFlow::layoutLineBoxes):
487         (WebCore::RenderBlockFlow::determineStartPosition):
488         (WebCore::RenderBlockFlow::checkPaginationAndFloatsAtEndLine):
489         (WebCore::RenderBlockFlow::lineWidthForPaginatedLineChanged const):
490         (WebCore::RenderBlockFlow::addOverflowFromInlineChildren):
491         (WebCore::RenderBlockFlow::updateFragmentForLine const):
492         * rendering/RenderBox.cpp:
493         (WebCore::RenderBox::clampToStartAndEndFragments const):
494         (WebCore::RenderBox::hasFragmentRangeInFragmentedFlow const):
495         (WebCore::RenderBox::styleDidChange):
496         (WebCore::RenderBox::absoluteQuads const):
497         (WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats const):
498         (WebCore::RenderBox::containingBlockAvailableLineWidthInFragment const):
499         (WebCore::RenderBox::offsetFromContainer const):
500         (WebCore::RenderBox::computeRectForRepaint const):
501         (WebCore::RenderBox::skipContainingBlockForPercentHeightCalculation const):
502         (WebCore::RenderBox::availableLogicalHeightUsing const):
503         (WebCore::RenderBox::containingBlockLogicalWidthForPositioned const):
504         (WebCore::RenderBox::containingBlockLogicalHeightForPositioned const):
505         (WebCore::RenderBox::computePositionedLogicalWidth const):
506         (WebCore::RenderBox::computePositionedLogicalHeight const):
507         (WebCore::RenderBox::positionForPoint):
508         (WebCore::RenderBox::createsNewFormattingContext const):
509         (WebCore::RenderBox::addVisualEffectOverflow):
510         (WebCore::RenderBox::addOverflowFromChild):
511         (WebCore::RenderBox::clearOverflow):
512         (WebCore::RenderBox::offsetFromLogicalTopOfFirstPage const):
513         (WebCore::RenderBox::hasFragmentRangeInFlowThread const): Deleted.
514         * rendering/RenderBox.h:
515         (WebCore::RenderBox::canHaveOutsideFragmentRange const):
516         * rendering/RenderBoxModelObject.cpp:
517         (WebCore::RenderBoxModelObject::adjustedPositionRelativeToOffsetParent const):
518         (WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint const):
519         * rendering/RenderElement.cpp:
520         (WebCore::RenderElement::setStyle):
521         (WebCore::RenderElement::insertChildInternal):
522         (WebCore::RenderElement::removeChildInternal):
523         (WebCore::RenderElement::propagateStyleToAnonymousChildren):
524         (WebCore::RenderElement::adjustFragmentedFlowStateOnContainingBlockChangeIfNeeded):
525         (WebCore::RenderElement::removeFromRenderFragmentedFlow):
526         (WebCore::RenderElement::removeFromRenderFragmentedFlowIncludingDescendants):
527         (WebCore::RenderElement::resetEnclosingFragmentedFlowAndChildInfoIncludingDescendants):
528         (WebCore::RenderElement::adjustFlowThreadStateOnContainingBlockChangeIfNeeded): Deleted.
529         (WebCore::RenderElement::removeFromRenderFlowThread): Deleted.
530         (WebCore::RenderElement::removeFromRenderFlowThreadIncludingDescendants): Deleted.
531         (WebCore::RenderElement::resetFlowThreadContainingBlockAndChildInfoIncludingDescendants): Deleted.
532         * rendering/RenderElement.h:
533         (WebCore::RenderElement::canContainFixedPositionObjects const):
534         * rendering/RenderFlowThread.cpp: Removed.
535         * rendering/RenderFlowThread.h: Removed.
536         * rendering/RenderFragmentContainer.cpp:
537         (WebCore::RenderFragmentContainer::RenderFragmentContainer):
538         (WebCore::RenderFragmentContainer::mapFragmentPointIntoFragmentedFlowCoordinates):
539         (WebCore::RenderFragmentContainer::positionForPoint):
540         (WebCore::RenderFragmentContainer::pageLogicalWidth const):
541         (WebCore::RenderFragmentContainer::pageLogicalHeight const):
542         (WebCore::RenderFragmentContainer::logicalHeightOfAllFragmentedFlowContent const):
543         (WebCore::RenderFragmentContainer::fragmentedFlowPortionOverflowRect):
544         (WebCore::RenderFragmentContainer::fragmentedFlowPortionLocation const):
545         (WebCore::RenderFragmentContainer::overflowRectForFragmentedFlowPortion):
546         (WebCore::RenderFragmentContainer::pageLogicalTopForOffset const):
547         (WebCore::RenderFragmentContainer::isFirstFragment const):
548         (WebCore::RenderFragmentContainer::isLastFragment const):
549         (WebCore::RenderFragmentContainer::shouldClipFragmentedFlowContent const):
550         (WebCore::RenderFragmentContainer::styleDidChange):
551         (WebCore::RenderFragmentContainer::computeOverflowFromFragmentedFlow):
552         (WebCore::RenderFragmentContainer::repaintFragmentedFlowContent):
553         (WebCore::RenderFragmentContainer::repaintFragmentedFlowContentRectangle):
554         (WebCore::RenderFragmentContainer::installFragmentedFlow):
555         (WebCore::RenderFragmentContainer::attachFragment):
556         (WebCore::RenderFragmentContainer::detachFragment):
557         (WebCore::RenderFragmentContainer::logicalTopOfFragmentedFlowContentRect const):
558         (WebCore::RenderFragmentContainer::logicalBottomOfFragmentedFlowContentRect const):
559         (WebCore::RenderFragmentContainer::computeIntrinsicLogicalWidths const):
560         (WebCore::RenderFragmentContainer::adjustFragmentBoundsFromFragmentedFlowPortionRect const):
561         (WebCore::RenderFragmentContainer::ensureOverflowForBox):
562         (WebCore::RenderFragmentContainer::rectFlowPortionForBox const):
563         (WebCore::RenderFragmentContainer::addVisualOverflowForBox):
564         (WebCore::RenderFragmentContainer::visualOverflowRectForBoxForPropagation):
565         (WebCore::CurrentRenderFragmentContainerMaintainer::CurrentRenderFragmentContainerMaintainer):
566         (WebCore::CurrentRenderFragmentContainerMaintainer::~CurrentRenderFragmentContainerMaintainer):
567         (WebCore::RenderFragmentContainer::mapFragmentPointIntoFlowThreadCoordinates): Deleted.
568         (WebCore::RenderFragmentContainer::logicalHeightOfAllFlowThreadContent const): Deleted.
569         (WebCore::RenderFragmentContainer::flowThreadPortionOverflowRect): Deleted.
570         (WebCore::RenderFragmentContainer::flowThreadPortionLocation const): Deleted.
571         (WebCore::RenderFragmentContainer::overflowRectForFlowThreadPortion): Deleted.
572         (WebCore::RenderFragmentContainer::shouldClipFlowThreadContent const): Deleted.
573         (WebCore::RenderFragmentContainer::computeOverflowFromFlowThread): Deleted.
574         (WebCore::RenderFragmentContainer::repaintFlowThreadContent): Deleted.
575         (WebCore::RenderFragmentContainer::repaintFlowThreadContentRectangle): Deleted.
576         (WebCore::RenderFragmentContainer::installFlowThread): Deleted.
577         (WebCore::RenderFragmentContainer::logicalTopOfFlowThreadContentRect const): Deleted.
578         (WebCore::RenderFragmentContainer::logicalBottomOfFlowThreadContentRect const): Deleted.
579         (WebCore::RenderFragmentContainer::adjustFragmentBoundsFromFlowThreadPortionRect const): Deleted.
580         * rendering/RenderFragmentContainer.h:
581         (WebCore::RenderFragmentContainer::setFragmentedFlowPortionRect):
582         (WebCore::RenderFragmentContainer::fragmentedFlowPortionRect const):
583         (WebCore::RenderFragmentContainer::fragmentedFlow const):
584         (WebCore::RenderFragmentContainer::logicalTopForFragmentedFlowContent const):
585         (WebCore::RenderFragmentContainer::logicalBottomForFragmentedFlowContent const):
586         (WebCore::RenderFragmentContainer::setFlowThreadPortionRect): Deleted.
587         (WebCore::RenderFragmentContainer::flowThreadPortionRect const): Deleted.
588         (WebCore::RenderFragmentContainer::flowThread const): Deleted.
589         (WebCore::RenderFragmentContainer::logicalTopForFlowThreadContent const): Deleted.
590         (WebCore::RenderFragmentContainer::logicalBottomForFlowThreadContent const): Deleted.
591         * rendering/RenderFragmentContainerSet.cpp:
592         (WebCore::RenderFragmentContainerSet::RenderFragmentContainerSet):
593         (WebCore::RenderFragmentContainerSet::installFragmentedFlow):
594         (WebCore::RenderFragmentContainerSet::expandToEncompassFragmentedFlowContentsIfNeeded):
595         (WebCore::RenderFragmentContainerSet::installFlowThread): Deleted.
596         (WebCore::RenderFragmentContainerSet::expandToEncompassFlowThreadContentsIfNeeded): Deleted.
597         * rendering/RenderFragmentContainerSet.h:
598         * rendering/RenderFragmentedFlow.cpp: Copied from rendering/RenderFlowThread.cpp.
599         (WebCore::RenderFragmentedFlow::RenderFragmentedFlow):
600         (WebCore::RenderFragmentedFlow::createFragmentedFlowStyle):
601         (WebCore::RenderFragmentedFlow::styleDidChange):
602         (WebCore::RenderFragmentedFlow::removeFlowChildInfo):
603         (WebCore::RenderFragmentedFlow::removeFragmentFromThread):
604         (WebCore::RenderFragmentedFlow::invalidateFragments):
605         (WebCore::RenderFragmentedFlow::validateFragments):
606         (WebCore::RenderFragmentedFlow::layout):
607         (WebCore::RenderFragmentedFlow::updateLogicalWidth):
608         (WebCore::RenderFragmentedFlow::computeLogicalHeight const):
609         (WebCore::RenderFragmentedFlow::nodeAtPoint):
610         (WebCore::RenderFragmentedFlow::shouldRepaint const):
611         (WebCore::RenderFragmentedFlow::repaintRectangleInFragments const):
612         (WebCore::RenderFragmentedFlow::fragmentAtBlockOffset const):
613         (WebCore::RenderFragmentedFlow::adjustedPositionRelativeToOffsetParent const):
614         (WebCore::RenderFragmentedFlow::pageLogicalTopForOffset const):
615         (WebCore::RenderFragmentedFlow::pageLogicalWidthForOffset const):
616         (WebCore::RenderFragmentedFlow::pageLogicalHeightForOffset const):
617         (WebCore::RenderFragmentedFlow::pageRemainingLogicalHeightForOffset const):
618         (WebCore::RenderFragmentedFlow::mapFromFlowToFragment const):
619         (WebCore::RenderFragmentedFlow::removeRenderBoxFragmentInfo):
620         (WebCore::RenderFragmentedFlow::removeLineFragmentInfo):
621         (WebCore::RenderFragmentedFlow::logicalWidthChangedInFragmentsForBlock):
622         (WebCore::RenderFragmentedFlow::contentLogicalWidthOfFirstFragment const):
623         (WebCore::RenderFragmentedFlow::contentLogicalHeightOfFirstFragment const):
624         (WebCore::RenderFragmentedFlow::contentLogicalLeftOfFirstFragment const):
625         (WebCore::RenderFragmentedFlow::firstFragment const):
626         (WebCore::RenderFragmentedFlow::lastFragment const):
627         (WebCore::RenderFragmentedFlow::clearRenderBoxFragmentInfoAndCustomStyle):
628         (WebCore::RenderFragmentedFlow::setFragmentRangeForBox):
629         (WebCore::RenderFragmentedFlow::hasCachedFragmentRangeForBox const):
630         (WebCore::RenderFragmentedFlow::getFragmentRangeForBoxFromCachedInfo const):
631         (WebCore::RenderFragmentedFlow::getFragmentRangeForBox const):
632         (WebCore::RenderFragmentedFlow::computedFragmentRangeForBox const):
633         (WebCore::RenderFragmentedFlow::fragmentInRange const):
634         (WebCore::RenderFragmentedFlow::objectShouldFragmentInFlowFragment const):
635         (WebCore::RenderFragmentedFlow::objectInFlowFragment const):
636         (WebCore::RenderFragmentedFlow::checkLinesConsistency const):
637         (WebCore::RenderFragmentedFlow::clearLinesToFragmentMap):
638         (WebCore::RenderFragmentedFlow::deleteLines):
639         (WebCore::RenderFragmentedFlow::willBeDestroyed):
640         (WebCore::RenderFragmentedFlow::markFragmentsForOverflowLayoutIfNeeded):
641         (WebCore::RenderFragmentedFlow::updateFragmentsFragmentedFlowPortionRect):
642         (WebCore::RenderFragmentedFlow::addForcedFragmentBreak):
643         (WebCore::RenderFragmentedFlow::collectLayerFragments):
644         (WebCore::RenderFragmentedFlow::fragmentsBoundingBox):
645         (WebCore::RenderFragmentedFlow::offsetFromLogicalTopOfFirstFragment const):
646         (WebCore::RenderFragmentedFlow::FragmentSearchAdapter::collectIfNeeded):
647         (WebCore::RenderFragmentedFlow::mapLocalToContainer const):
648         (WebCore::RenderFragmentedFlow::mapFromLocalToFragmentedFlow const):
649         (WebCore::RenderFragmentedFlow::mapFromFragmentedFlowToLocal const):
650         (WebCore::RenderFragmentedFlow::flipForWritingModeLocalCoordinates const):
651         (WebCore::RenderFragmentedFlow::addFragmentsVisualEffectOverflow):
652         (WebCore::RenderFragmentedFlow::addFragmentsVisualOverflowFromTheme):
653         (WebCore::RenderFragmentedFlow::addFragmentsOverflowFromChild):
654         (WebCore::RenderFragmentedFlow::addFragmentsLayoutOverflow):
655         (WebCore::RenderFragmentedFlow::addFragmentsVisualOverflow):
656         (WebCore::RenderFragmentedFlow::clearFragmentsOverflow):
657         (WebCore::RenderFragmentedFlow::currentFragment const):
658         (WebCore::RenderFragmentedFlow::containingFragmentMap):
659         (WebCore::RenderFlowThread::RenderFlowThread): Deleted.
660         (WebCore::RenderFlowThread::createFlowThreadStyle): Deleted.
661         (WebCore::RenderFlowThread::styleDidChange): Deleted.
662         (WebCore::RenderFlowThread::removeFlowChildInfo): Deleted.
663         (WebCore::RenderFlowThread::removeFragmentFromThread): Deleted.
664         (WebCore::RenderFlowThread::invalidateFragments): Deleted.
665         (WebCore::RenderFlowThread::validateFragments): Deleted.
666         (WebCore::RenderFlowThread::layout): Deleted.
667         (WebCore::RenderFlowThread::updateLogicalWidth): Deleted.
668         (WebCore::RenderFlowThread::computeLogicalHeight const): Deleted.
669         (WebCore::RenderFlowThread::nodeAtPoint): Deleted.
670         (WebCore::RenderFlowThread::shouldRepaint const): Deleted.
671         (WebCore::RenderFlowThread::repaintRectangleInFragments const): Deleted.
672         (WebCore::RenderFlowThread::fragmentAtBlockOffset const): Deleted.
673         (WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent const): Deleted.
674         (WebCore::RenderFlowThread::pageLogicalTopForOffset const): Deleted.
675         (WebCore::RenderFlowThread::pageLogicalWidthForOffset const): Deleted.
676         (WebCore::RenderFlowThread::pageLogicalHeightForOffset const): Deleted.
677         (WebCore::RenderFlowThread::pageRemainingLogicalHeightForOffset const): Deleted.
678         (WebCore::RenderFlowThread::mapFromFlowToFragment const): Deleted.
679         (WebCore::RenderFlowThread::removeRenderBoxFragmentInfo): Deleted.
680         (WebCore::RenderFlowThread::removeLineFragmentInfo): Deleted.
681         (WebCore::RenderFlowThread::logicalWidthChangedInFragmentsForBlock): Deleted.
682         (WebCore::RenderFlowThread::contentLogicalWidthOfFirstFragment const): Deleted.
683         (WebCore::RenderFlowThread::contentLogicalHeightOfFirstFragment const): Deleted.
684         (WebCore::RenderFlowThread::contentLogicalLeftOfFirstFragment const): Deleted.
685         (WebCore::RenderFlowThread::firstFragment const): Deleted.
686         (WebCore::RenderFlowThread::lastFragment const): Deleted.
687         (WebCore::RenderFlowThread::clearRenderBoxFragmentInfoAndCustomStyle): Deleted.
688         (WebCore::RenderFlowThread::setFragmentRangeForBox): Deleted.
689         (WebCore::RenderFlowThread::hasCachedFragmentRangeForBox const): Deleted.
690         (WebCore::RenderFlowThread::getFragmentRangeForBoxFromCachedInfo const): Deleted.
691         (WebCore::RenderFlowThread::getFragmentRangeForBox const): Deleted.
692         (WebCore::RenderFlowThread::computedFragmentRangeForBox const): Deleted.
693         (WebCore::RenderFlowThread::fragmentInRange const): Deleted.
694         (WebCore::RenderFlowThread::objectShouldFragmentInFlowFragment const): Deleted.
695         (WebCore::RenderFlowThread::objectInFlowFragment const): Deleted.
696         (WebCore::RenderFlowThread::checkLinesConsistency const): Deleted.
697         (WebCore::RenderFlowThread::clearLinesToFragmentMap): Deleted.
698         (WebCore::RenderFlowThread::deleteLines): Deleted.
699         (WebCore::RenderFlowThread::willBeDestroyed): Deleted.
700         (WebCore::RenderFlowThread::markFragmentsForOverflowLayoutIfNeeded): Deleted.
701         (WebCore::RenderFlowThread::updateFragmentsFlowThreadPortionRect): Deleted.
702         (WebCore::RenderFlowThread::addForcedFragmentBreak): Deleted.
703         (WebCore::RenderFlowThread::collectLayerFragments): Deleted.
704         (WebCore::RenderFlowThread::fragmentsBoundingBox): Deleted.
705         (WebCore::RenderFlowThread::offsetFromLogicalTopOfFirstFragment const): Deleted.
706         (WebCore::RenderFlowThread::FragmentSearchAdapter::collectIfNeeded): Deleted.
707         (WebCore::RenderFlowThread::mapLocalToContainer const): Deleted.
708         (WebCore::RenderFlowThread::mapFromLocalToFlowThread const): Deleted.
709         (WebCore::RenderFlowThread::mapFromFlowThreadToLocal const): Deleted.
710         (WebCore::RenderFlowThread::flipForWritingModeLocalCoordinates const): Deleted.
711         (WebCore::RenderFlowThread::addFragmentsVisualEffectOverflow): Deleted.
712         (WebCore::RenderFlowThread::addFragmentsVisualOverflowFromTheme): Deleted.
713         (WebCore::RenderFlowThread::addFragmentsOverflowFromChild): Deleted.
714         (WebCore::RenderFlowThread::addFragmentsLayoutOverflow): Deleted.
715         (WebCore::RenderFlowThread::addFragmentsVisualOverflow): Deleted.
716         (WebCore::RenderFlowThread::clearFragmentsOverflow): Deleted.
717         (WebCore::RenderFlowThread::currentFragment const): Deleted.
718         (WebCore::RenderFlowThread::containingFragmentMap): Deleted.
719         * rendering/RenderFragmentedFlow.h: Copied from rendering/RenderFlowThread.h.
720         * rendering/RenderGeometryMap.cpp:
721         (WebCore::canMapBetweenRenderersViaLayers):
722         (WebCore::RenderGeometryMap::pushRenderFragmentedFlow):
723         (WebCore::RenderGeometryMap::pushRenderFlowThread): Deleted.
724         * rendering/RenderGeometryMap.h:
725         * rendering/RenderImage.cpp:
726         (WebCore::RenderImage::layoutShadowControls):
727         * rendering/RenderInline.cpp:
728         (WebCore::RenderInline::addChild):
729         (WebCore::RenderInline::clone const):
730         (WebCore::RenderInline::splitInlines):
731         (WebCore::RenderInline::offsetFromContainer const):
732         * rendering/RenderLayer.cpp:
733         (WebCore::RenderLayer::updateLayerPositions):
734         (WebCore::RenderLayer::updatePagination):
735         (WebCore::transparencyClipBox):
736         (WebCore::accumulateOffsetTowardsAncestor):
737         (WebCore::RenderLayer::paintLayerContents):
738         (WebCore::RenderLayer::collectFragments):
739         (WebCore::RenderLayer::hitTest):
740         (WebCore::RenderLayer::enclosingFragmentedFlowAncestor const):
741         (WebCore::RenderLayer::hitTestContents const):
742         (WebCore::RenderLayer::calculateClipRects const):
743         (WebCore::RenderLayer::enclosingFlowThreadAncestor const): Deleted.
744         * rendering/RenderLayer.h:
745         * rendering/RenderLayerBacking.cpp:
746         (WebCore::RenderLayerBacking::computeParentGraphicsLayerRect const):
747         * rendering/RenderLayerCompositor.cpp:
748         (WebCore::RenderLayerCompositor::canBeComposited const):
749         * rendering/RenderMedia.cpp:
750         * rendering/RenderMultiColumnFlow.cpp: Copied from rendering/RenderMultiColumnFlowThread.cpp.
751         (WebCore::RenderMultiColumnFlow::RenderMultiColumnFlow):
752         (WebCore::RenderMultiColumnFlow::~RenderMultiColumnFlow):
753         (WebCore::RenderMultiColumnFlow::renderName const):
754         (WebCore::RenderMultiColumnFlow::firstMultiColumnSet const):
755         (WebCore::RenderMultiColumnFlow::lastMultiColumnSet const):
756         (WebCore::RenderMultiColumnFlow::firstColumnSetOrSpanner const):
757         (WebCore::RenderMultiColumnFlow::nextColumnSetOrSpannerSiblingOf):
758         (WebCore::RenderMultiColumnFlow::previousColumnSetOrSpannerSiblingOf):
759         (WebCore::RenderMultiColumnFlow::layout):
760         (WebCore::findSetRendering):
761         (WebCore::RenderMultiColumnFlow::populate):
762         (WebCore::RenderMultiColumnFlow::evacuateAndDestroy):
763         (WebCore::RenderMultiColumnFlow::addFragmentToThread):
764         (WebCore::RenderMultiColumnFlow::willBeRemovedFromTree):
765         (WebCore::RenderMultiColumnFlow::resolveMovedChild const):
766         (WebCore::isValidColumnSpanner):
767         (WebCore::spannerPlacehoderCandidate):
768         (WebCore::RenderMultiColumnFlow::processPossibleSpannerDescendant):
769         (WebCore::RenderMultiColumnFlow::fragmentedFlowDescendantInserted):
770         (WebCore::RenderMultiColumnFlow::handleSpannerRemoval):
771         (WebCore::RenderMultiColumnFlow::fragmentedFlowRelativeWillBeRemoved):
772         (WebCore::RenderMultiColumnFlow::fragmentedFlowDescendantBoxLaidOut):
773         (WebCore::RenderMultiColumnFlow::computeLogicalHeight const):
774         (WebCore::RenderMultiColumnFlow::initialLogicalWidth const):
775         (WebCore::RenderMultiColumnFlow::setPageBreak):
776         (WebCore::RenderMultiColumnFlow::updateMinimumPageHeight):
777         (WebCore::RenderMultiColumnFlow::fragmentAtBlockOffset const):
778         (WebCore::RenderMultiColumnFlow::setFragmentRangeForBox):
779         (WebCore::RenderMultiColumnFlow::addForcedFragmentBreak):
780         (WebCore::RenderMultiColumnFlow::computeLineGridPaginationOrigin const):
781         (WebCore::RenderMultiColumnFlow::offsetFromContainer const):
782         (WebCore::RenderMultiColumnFlow::mapAbsoluteToLocalPoint const):
783         (WebCore::RenderMultiColumnFlow::physicalTranslationFromFragmentToFlow const):
784         (WebCore::RenderMultiColumnFlow::mapFromFlowToFragment const):
785         (WebCore::RenderMultiColumnFlow::physicalTranslationOffsetFromFlowToFragment const):
786         (WebCore::RenderMultiColumnFlow::physicalTranslationFromFlowToFragment const):
787         (WebCore::RenderMultiColumnFlow::isPageLogicalHeightKnown const):
788         (WebCore::RenderMultiColumnFlow::nodeAtPoint):
789         (WebCore::RenderMultiColumnFlow::shouldCheckColumnBreaks const):
790         (WebCore::RenderMultiColumnFlowThread::RenderMultiColumnFlowThread): Deleted.
791         (WebCore::RenderMultiColumnFlowThread::~RenderMultiColumnFlowThread): Deleted.
792         (WebCore::RenderMultiColumnFlowThread::renderName const): Deleted.
793         (WebCore::RenderMultiColumnFlowThread::firstMultiColumnSet const): Deleted.
794         (WebCore::RenderMultiColumnFlowThread::lastMultiColumnSet const): Deleted.
795         (WebCore::RenderMultiColumnFlowThread::firstColumnSetOrSpanner const): Deleted.
796         (WebCore::RenderMultiColumnFlowThread::nextColumnSetOrSpannerSiblingOf): Deleted.
797         (WebCore::RenderMultiColumnFlowThread::previousColumnSetOrSpannerSiblingOf): Deleted.
798         (WebCore::RenderMultiColumnFlowThread::layout): Deleted.
799         (WebCore::RenderMultiColumnFlowThread::populate): Deleted.
800         (WebCore::RenderMultiColumnFlowThread::evacuateAndDestroy): Deleted.
801         (WebCore::RenderMultiColumnFlowThread::addFragmentToThread): Deleted.
802         (WebCore::RenderMultiColumnFlowThread::willBeRemovedFromTree): Deleted.
803         (WebCore::RenderMultiColumnFlowThread::resolveMovedChild const): Deleted.
804         (WebCore::RenderMultiColumnFlowThread::processPossibleSpannerDescendant): Deleted.
805         (WebCore::RenderMultiColumnFlowThread::flowThreadDescendantInserted): Deleted.
806         (WebCore::RenderMultiColumnFlowThread::handleSpannerRemoval): Deleted.
807         (WebCore::RenderMultiColumnFlowThread::flowThreadRelativeWillBeRemoved): Deleted.
808         (WebCore::RenderMultiColumnFlowThread::flowThreadDescendantBoxLaidOut): Deleted.
809         (WebCore::RenderMultiColumnFlowThread::computeLogicalHeight const): Deleted.
810         (WebCore::RenderMultiColumnFlowThread::initialLogicalWidth const): Deleted.
811         (WebCore::RenderMultiColumnFlowThread::setPageBreak): Deleted.
812         (WebCore::RenderMultiColumnFlowThread::updateMinimumPageHeight): Deleted.
813         (WebCore::RenderMultiColumnFlowThread::fragmentAtBlockOffset const): Deleted.
814         (WebCore::RenderMultiColumnFlowThread::setFragmentRangeForBox): Deleted.
815         (WebCore::RenderMultiColumnFlowThread::addForcedFragmentBreak): Deleted.
816         (WebCore::RenderMultiColumnFlowThread::computeLineGridPaginationOrigin const): Deleted.
817         (WebCore::RenderMultiColumnFlowThread::offsetFromContainer const): Deleted.
818         (WebCore::RenderMultiColumnFlowThread::mapAbsoluteToLocalPoint const): Deleted.
819         (WebCore::RenderMultiColumnFlowThread::physicalTranslationFromFragmentToFlow const): Deleted.
820         (WebCore::RenderMultiColumnFlowThread::mapFromFlowToFragment const): Deleted.
821         (WebCore::RenderMultiColumnFlowThread::physicalTranslationOffsetFromFlowToFragment const): Deleted.
822         (WebCore::RenderMultiColumnFlowThread::physicalTranslationFromFlowToFragment const): Deleted.
823         (WebCore::RenderMultiColumnFlowThread::isPageLogicalHeightKnown const): Deleted.
824         (WebCore::RenderMultiColumnFlowThread::nodeAtPoint): Deleted.
825         (WebCore::RenderMultiColumnFlowThread::shouldCheckColumnBreaks const): Deleted.
826         * rendering/RenderMultiColumnFlow.h: Copied from rendering/RenderMultiColumnFlowThread.h.
827         * rendering/RenderMultiColumnFlowThread.cpp: Removed.
828         * rendering/RenderMultiColumnFlowThread.h: Removed.
829         * rendering/RenderMultiColumnSet.cpp:
830         (WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
831         (WebCore::RenderMultiColumnSet::firstRendererInFragmentedFlow const):
832         (WebCore::RenderMultiColumnSet::lastRendererInFragmentedFlow const):
833         (WebCore::RenderMultiColumnSet::containsRendererInFragmentedFlow const):
834         (WebCore::RenderMultiColumnSet::setLogicalTopInFragmentedFlow):
835         (WebCore::RenderMultiColumnSet::setLogicalBottomInFragmentedFlow):
836         (WebCore::RenderMultiColumnSet::pageLogicalTopForOffset const):
837         (WebCore::RenderMultiColumnSet::setAndConstrainColumnHeight):
838         (WebCore::RenderMultiColumnSet::distributeImplicitBreaks):
839         (WebCore::RenderMultiColumnSet::calculateBalancedHeight const):
840         (WebCore::RenderMultiColumnSet::recalculateColumnHeight):
841         (WebCore::RenderMultiColumnSet::updateLogicalWidth):
842         (WebCore::RenderMultiColumnSet::requiresBalancing const):
843         (WebCore::RenderMultiColumnSet::prepareForLayout):
844         (WebCore::RenderMultiColumnSet::beginFlow):
845         (WebCore::RenderMultiColumnSet::endFlow):
846         (WebCore::RenderMultiColumnSet::layout):
847         (WebCore::RenderMultiColumnSet::calculateMaxColumnHeight const):
848         (WebCore::RenderMultiColumnSet::columnCount const):
849         (WebCore::RenderMultiColumnSet::columnLogicalLeft const):
850         (WebCore::RenderMultiColumnSet::columnLogicalTop const):
851         (WebCore::RenderMultiColumnSet::columnIndexAtOffset const):
852         (WebCore::RenderMultiColumnSet::fragmentedFlowPortionRectAt const):
853         (WebCore::RenderMultiColumnSet::fragmentedFlowPortionOverflowRect):
854         (WebCore::RenderMultiColumnSet::paintColumnRules):
855         (WebCore::RenderMultiColumnSet::repaintFragmentedFlowContent):
856         (WebCore::RenderMultiColumnSet::initialBlockOffsetForPainting const):
857         (WebCore::RenderMultiColumnSet::collectLayerFragments):
858         (WebCore::RenderMultiColumnSet::columnTranslationForOffset const):
859         (WebCore::RenderMultiColumnSet::adjustFragmentBoundsFromFragmentedFlowPortionRect const):
860         (WebCore::RenderMultiColumnSet::positionForPoint):
861         (WebCore::RenderMultiColumnSet::translateFragmentPointToFragmentedFlow const):
862         (WebCore::RenderMultiColumnSet::updateHitTestResult):
863         (WebCore::RenderMultiColumnSet::firstRendererInFlowThread const): Deleted.
864         (WebCore::RenderMultiColumnSet::lastRendererInFlowThread const): Deleted.
865         (WebCore::RenderMultiColumnSet::containsRendererInFlowThread const): Deleted.
866         (WebCore::RenderMultiColumnSet::setLogicalTopInFlowThread): Deleted.
867         (WebCore::RenderMultiColumnSet::setLogicalBottomInFlowThread): Deleted.
868         (WebCore::RenderMultiColumnSet::flowThreadPortionRectAt const): Deleted.
869         (WebCore::RenderMultiColumnSet::flowThreadPortionOverflowRect): Deleted.
870         (WebCore::RenderMultiColumnSet::repaintFlowThreadContent): Deleted.
871         (WebCore::RenderMultiColumnSet::adjustFragmentBoundsFromFlowThreadPortionRect const): Deleted.
872         (WebCore::RenderMultiColumnSet::translateFragmentPointToFlowThread const): Deleted.
873         * rendering/RenderMultiColumnSet.h:
874         * rendering/RenderMultiColumnSpannerPlaceholder.cpp:
875         (WebCore::RenderMultiColumnSpannerPlaceholder::createAnonymous):
876         (WebCore::RenderMultiColumnSpannerPlaceholder::RenderMultiColumnSpannerPlaceholder):
877         * rendering/RenderMultiColumnSpannerPlaceholder.h:
878         * rendering/RenderObject.cpp:
879         (WebCore::RenderObject::setFragmentedFlowStateIncludingDescendants):
880         (WebCore::RenderObject::computedFragmentedFlowState):
881         (WebCore::RenderObject::initializeFragmentedFlowStateOnInsertion):
882         (WebCore::RenderObject::resetFragmentedFlowStateOnRemoval):
883         (WebCore::RenderObject::containerForRepaint const):
884         (WebCore::RenderObject::repaintUsingContainer const):
885         (WebCore::enclosingFragmentedFlowFromRenderer):
886         (WebCore::RenderObject::outputRegionsInformation const):
887         (WebCore::RenderObject::selectionRoot const):
888         (WebCore::RenderObject::offsetFromContainer const):
889         (WebCore::RenderObject::insertedIntoTree):
890         (WebCore::RenderObject::locateEnclosingFragmentedFlow const):
891         (WebCore::RenderObject::setIsRenderFragmentedFlow):
892         (WebCore::RenderObject::setFlowThreadStateIncludingDescendants): Deleted.
893         (WebCore::RenderObject::computedFlowThreadState): Deleted.
894         (WebCore::RenderObject::initializeFlowThreadStateOnInsertion): Deleted.
895         (WebCore::RenderObject::resetFlowThreadStateOnRemoval): Deleted.
896         (WebCore::flowThreadContainingBlockFromRenderer): Deleted.
897         (WebCore::RenderObject::locateFlowThreadContainingBlock const): Deleted.
898         (WebCore::RenderObject::setIsRenderFlowThread): Deleted.
899         * rendering/RenderObject.h:
900         (WebCore::RenderObject::enclosingFragmentedFlow const):
901         (WebCore::RenderObject::isInFlowRenderFragmentedFlow const):
902         (WebCore::RenderObject::isOutOfFlowRenderFragmentedFlow const):
903         (WebCore::RenderObject::isRenderMultiColumnFlow const):
904         (WebCore::RenderObject::fragmentedFlowState const):
905         (WebCore::RenderObject::setFragmentedFlowState):
906         (WebCore::RenderObject::isAnonymousBlock const):
907         (WebCore::RenderObject::isRenderFragmentedFlow const):
908         (WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):
909         (WebCore::RenderObject::RenderObjectBitfields::fragmentedFlowState const):
910         (WebCore::RenderObject::RenderObjectBitfields::setFragmentedFlowState):
911         (WebCore::RenderObject::RenderObjectRareData::RenderObjectRareData):
912         (WebCore::RenderObject::flowThreadContainingBlock const): Deleted.
913         (WebCore::RenderObject::isInFlowRenderFlowThread const): Deleted.
914         (WebCore::RenderObject::isOutOfFlowRenderFlowThread const): Deleted.
915         (WebCore::RenderObject::isRenderMultiColumnFlowThread const): Deleted.
916         (WebCore::RenderObject::flowThreadState const): Deleted.
917         (WebCore::RenderObject::setFlowThreadState): Deleted.
918         (WebCore::RenderObject::isRenderFlowThread const): Deleted.
919         (WebCore::RenderObject::RenderObjectBitfields::flowThreadState const): Deleted.
920         (WebCore::RenderObject::RenderObjectBitfields::setFlowThreadState): Deleted.
921         * rendering/RenderReplaced.cpp:
922         * rendering/RenderRuby.cpp:
923         (WebCore::isRubyChildForNormalRemoval):
924         * rendering/RenderTextFragment.cpp:
925         (WebCore::RenderTextFragment::blockForAccompanyingFirstLetter):
926         * rendering/RenderView.cpp:
927         (WebCore::RenderView::availableLogicalHeight const):
928         (WebCore::RenderView::pageOrViewLogicalHeight const):
929         (WebCore::RenderView::updateHitTestResult):
930         (WebCore::RenderView::pageNumberForBlockProgressionOffset const):
931         (WebCore::RenderView::pageCount const):
932         * rendering/RenderView.h:
933         * rendering/RenderingAllInOne.cpp:
934         * rendering/RootInlineBox.cpp:
935         (WebCore::containingFragmentMap):
936         (WebCore::RootInlineBox::~RootInlineBox):
937         (WebCore::RootInlineBox::containingFragment const):
938         * rendering/SimpleLineLayout.cpp:
939         (WebCore::SimpleLineLayout::canUseForWithReason):
940         * rendering/line/LineLayoutState.h:
941         (WebCore::LineLayoutState::LineLayoutState):
942         (WebCore::LineLayoutState::fragmentedFlow const):
943         (WebCore::LineLayoutState::setFragmentedFlow):
944         (WebCore::LineLayoutState::flowThread const): Deleted.
945         (WebCore::LineLayoutState::setFlowThread): Deleted.
946         * rendering/svg/RenderSVGText.cpp:
947         (WebCore::RenderSVGText::layout):
948         * style/RenderTreePosition.h:
949         * style/RenderTreeUpdaterListItem.cpp:
950         (WebCore::RenderTreeUpdater::ListItem::updateMarker):
951         * style/RenderTreeUpdaterMultiColumn.cpp:
952         (WebCore::RenderTreeUpdater::MultiColumn::update):
953         (WebCore::RenderTreeUpdater::MultiColumn::createFragmentedFlow):
954         (WebCore::RenderTreeUpdater::MultiColumn::createFlowThread): Deleted.
955         * style/RenderTreeUpdaterMultiColumn.h:
956         * style/StyleResolveForDocument.cpp:
957         (WebCore::Style::resolveForDocument):
958
959 2017-09-27  Don Olmstead  <don.olmstead@sony.com>
960
961         Default to void* for platform widgets
962         https://bugs.webkit.org/show_bug.cgi?id=177518
963
964         Reviewed by Michael Catanzaro.
965
966         No new tests. No change in behavior.
967
968         * platform/Cursor.h:
969         * platform/DragData.h:
970         * platform/Widget.h:
971
972 2017-09-27  Youenn Fablet  <youenn@apple.com>
973
974         [Fetch API] Cloning an opaque response should not assert
975         https://bugs.webkit.org/show_bug.cgi?id=177548
976
977         Reviewed by Sam Weinig.
978
979         Test: http/wpt/fetch/response-opaque-clone.html
980
981         * Modules/fetch/FetchBodyOwner.cpp:
982         (WebCore::FetchBodyOwner::readableStream): Returning null if response is opaque.
983         * Modules/fetch/FetchResponse.cpp:
984         (WebCore::FetchResponse::clone): Making sure cloned responses keep their opaque state.
985         (WebCore::FetchResponse::consumeBodyAsStream): Removing assertion as we need to create a stream for cloning.
986
987 2017-09-26  Joseph Pecoraro  <pecoraro@apple.com>
988
989         Web Inspector: Remove unused parameter of Page.reload
990         https://bugs.webkit.org/show_bug.cgi?id=177522
991
992         Reviewed by Matt Baker.
993
994         * inspector/InspectorInstrumentation.cpp:
995         (WebCore::InspectorInstrumentation::didClearWindowObjectInWorldImpl):
996         * inspector/InspectorPageAgent.cpp:
997         (WebCore::InspectorPageAgent::reload):
998         (WebCore::InspectorPageAgent::frameNavigated):
999         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld): Deleted.
1000         * inspector/InspectorPageAgent.h:
1001
1002 2017-09-27  Chris Dumez  <cdumez@apple.com>
1003
1004         cssFloat missing in CSSPropertyDeclaration.prototype
1005         https://bugs.webkit.org/show_bug.cgi?id=177487
1006
1007         Reviewed by Sam Weinig.
1008
1009         Add support for cssFloat attribute on CSSPropertyDeclaration, as per:
1010         - https://drafts.csswg.org/cssom/#dom-cssstyledeclaration-cssfloat
1011
1012         Test: fast/css/CSSStyleDeclaration-cssFloat.html
1013
1014         * css/CSSStyleDeclaration.cpp:
1015         (WebCore::CSSStyleDeclaration::cssFloat):
1016         (WebCore::CSSStyleDeclaration::setCssFloat):
1017         * css/CSSStyleDeclaration.h:
1018         * css/CSSStyleDeclaration.idl:
1019
1020 2017-09-27  Antti Koivisto  <antti@apple.com>
1021
1022         Ref element keys in CSSAnimationControllerPrivate
1023         https://bugs.webkit.org/show_bug.cgi?id=177543
1024
1025         Reviewed by Zalan Bujtas.
1026
1027         For safety.
1028
1029         * page/animation/CSSAnimationControllerPrivate.h:
1030
1031         This won't create ref cycle as elements are removed from the m_compositeAnimations maps when they
1032         are removed from the tree. We have assertions that verify the map is always cleared.
1033
1034 2017-09-27  David Hyatt  <hyatt@apple.com>
1035
1036         Rename "Region" to "Fragment" for RenderRegion and associated classes/methods.
1037         https://bugs.webkit.org/show_bug.cgi?id=177506
1038
1039         Reviewed by Zalan Bujtas.
1040
1041         * WebCore.xcodeproj/project.pbxproj:
1042         * css/CSSPrimitiveValueMappings.h:
1043         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1044         (WebCore::CSSPrimitiveValue::operator BreakInside const):
1045         * css/CSSValueKeywords.in:
1046         * dom/Element.cpp:
1047         * platform/graphics/cg/GraphicsContextCG.cpp:
1048         * rendering/FixedTableLayout.cpp:
1049         (WebCore::FixedTableLayout::calcWidthArray):
1050         * rendering/GridTrackSizingAlgorithm.cpp:
1051         (WebCore::computeMarginLogicalSizeForChild):
1052         (WebCore::IndefiniteSizeStrategy::minLogicalWidthForChild const):
1053         (WebCore::DefiniteSizeStrategy::minLogicalWidthForChild const):
1054         * rendering/RenderBlock.cpp:
1055         (WebCore::RenderBlock::preparePaginationBeforeBlockLayout):
1056         (WebCore::RenderBlock::addOverflowFromChildren):
1057         (WebCore::RenderBlock::clearLayoutOverflow):
1058         (WebCore::RenderBlock::addVisualOverflowFromTheme):
1059         (WebCore::RenderBlock::computeStartPositionDeltaForChildAvoidingFloats):
1060         (WebCore::RenderBlock::simplifiedLayout):
1061         (WebCore::RenderBlock::markFixedPositionObjectForLayoutIfNeeded):
1062         (WebCore::RenderBlock::layoutPositionedObject):
1063         (WebCore::RenderBlock::selectionGaps):
1064         (WebCore::RenderBlock::logicalLeftOffsetForContent const):
1065         (WebCore::RenderBlock::logicalRightOffsetForContent const):
1066         (WebCore::RenderBlock::adjustLogicalLeftOffsetForLine const):
1067         (WebCore::RenderBlock::adjustLogicalRightOffsetForLine const):
1068         (WebCore::RenderBlock::positionForPointWithInlineChildren):
1069         (WebCore::isChildHitTestCandidate):
1070         (WebCore::RenderBlock::positionForPoint):
1071         (WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage const):
1072         (WebCore::RenderBlock::fragmentAtBlockOffset const):
1073         (WebCore::canComputeFragmentRangeForBox):
1074         (WebCore::RenderBlock::computeFragmentRangeForBoxChild const):
1075         (WebCore::RenderBlock::estimateFragmentRangeForBoxChild const):
1076         (WebCore::RenderBlock::updateFragmentRangeForBoxChild const):
1077         (WebCore::RenderBlock::regionAtBlockOffset const): Deleted.
1078         (WebCore::canComputeRegionRangeForBox): Deleted.
1079         (WebCore::RenderBlock::computeRegionRangeForBoxChild const): Deleted.
1080         (WebCore::RenderBlock::estimateRegionRangeForBoxChild const): Deleted.
1081         (WebCore::RenderBlock::updateRegionRangeForBoxChild const): Deleted.
1082         * rendering/RenderBlock.h:
1083         (WebCore::RenderBlock::availableLogicalWidthForLineInFragment const):
1084         (WebCore::RenderBlock::logicalRightOffsetForLineInFragment const):
1085         (WebCore::RenderBlock::logicalLeftOffsetForLineInFragment const):
1086         (WebCore::RenderBlock::startOffsetForLineInFragment const):
1087         (WebCore::RenderBlock::endOffsetForLineInFragment const):
1088         (WebCore::RenderBlock::availableLogicalWidthForLine const):
1089         (WebCore::RenderBlock::availableLogicalWidthForContent const):
1090         (WebCore::RenderBlock::startOffsetForContent const):
1091         (WebCore::RenderBlock::endOffsetForContent const):
1092         (WebCore::RenderBlock::logicalLeftOffsetForContent const):
1093         (WebCore::RenderBlock::logicalRightOffsetForContent const):
1094         (WebCore::RenderBlock::availableLogicalWidthForLineInRegion const): Deleted.
1095         (WebCore::RenderBlock::logicalRightOffsetForLineInRegion const): Deleted.
1096         (WebCore::RenderBlock::logicalLeftOffsetForLineInRegion const): Deleted.
1097         (WebCore::RenderBlock::startOffsetForLineInRegion const): Deleted.
1098         (WebCore::RenderBlock::endOffsetForLineInRegion const): Deleted.
1099         * rendering/RenderBlockFlow.cpp:
1100         (WebCore::RenderBlockFlow::layoutBlock):
1101         (WebCore::RenderBlockFlow::layoutBlockChild):
1102         (WebCore::RenderBlockFlow::setStaticInlinePositionForChild):
1103         (WebCore::RenderBlockFlow::applyBeforeBreak):
1104         (WebCore::RenderBlockFlow::applyAfterBreak):
1105         (WebCore::RenderBlockFlow::adjustLinePositionForPagination):
1106         (WebCore::RenderBlockFlow::hasNextPage const):
1107         (WebCore::RenderBlockFlow::adjustForUnsplittableChild):
1108         (WebCore::RenderBlockFlow::pushToNextPageWithMinimumLogicalHeight const):
1109         (WebCore::RenderBlockFlow::positionNewFloats):
1110         (WebCore::RenderBlockFlow::getClearDelta):
1111         (WebCore::RenderBlockFlow::needsLayoutAfterFragmentRangeChange const):
1112         (WebCore::RenderBlockFlow::findClosestTextAtAbsolutePoint):
1113         (WebCore::RenderBlockFlow::positionForPointWithInlineChildren):
1114         (WebCore::RenderBlockFlow::positionForPoint):
1115         (WebCore::RenderBlockFlow::layoutExcludedChildren):
1116         (WebCore::RenderBlockFlow::needsLayoutAfterRegionRangeChange const): Deleted.
1117         * rendering/RenderBlockFlow.h:
1118         * rendering/RenderBlockLineLayout.cpp:
1119         (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
1120         (WebCore::RenderBlockFlow::linkToEndLineIfNeeded):
1121         (WebCore::RenderBlockFlow::layoutLineBoxes):
1122         (WebCore::RenderBlockFlow::determineStartPosition):
1123         (WebCore::RenderBlockFlow::checkPaginationAndFloatsAtEndLine):
1124         (WebCore::RenderBlockFlow::lineWidthForPaginatedLineChanged const):
1125         (WebCore::RenderBlockFlow::addOverflowFromInlineChildren):
1126         (WebCore::RenderBlockFlow::positionNewFloatOnLine):
1127         (WebCore::RenderBlockFlow::updateFragmentForLine const):
1128         (WebCore::RenderBlockFlow::updateRegionForLine const): Deleted.
1129         * rendering/RenderBox.cpp:
1130         (WebCore::RenderBox::clampToStartAndEndFragments const):
1131         (WebCore::RenderBox::hasFragmentRangeInFlowThread const):
1132         (WebCore::RenderBox::clientBoxRectInFragment const):
1133         (WebCore::RenderBox::borderBoxRectInFragment const):
1134         (WebCore::RenderBox::constrainLogicalWidthInFragmentByMinMax const):
1135         (WebCore::RenderBox::nodeAtPoint):
1136         (WebCore::RenderBox::paintBoxDecorations):
1137         (WebCore::RenderBox::overflowClipRect):
1138         (WebCore::RenderBox::clipRect):
1139         (WebCore::RenderBox::shrinkLogicalWidthToAvoidFloats const):
1140         (WebCore::RenderBox::containingBlockLogicalWidthForContentInFragment const):
1141         (WebCore::RenderBox::containingBlockAvailableLineWidthInFragment const):
1142         (WebCore::RenderBox::offsetFromContainer const):
1143         (WebCore::RenderBox::computeRectForRepaint const):
1144         (WebCore::RenderBox::updateLogicalWidth):
1145         (WebCore::RenderBox::computeLogicalWidthInFragment const):
1146         (WebCore::RenderBox::computeLogicalWidthInFragmentUsing const):
1147         (WebCore::RenderBox::renderBoxFragmentInfo const):
1148         (WebCore::tableCellShouldHaveZeroInitialSize):
1149         (WebCore::RenderBox::containingBlockLogicalWidthForPositioned const):
1150         (WebCore::RenderBox::containingBlockLogicalHeightForPositioned const):
1151         (WebCore::computeInlineStaticDistance):
1152         (WebCore::RenderBox::computePositionedLogicalWidth const):
1153         (WebCore::RenderBox::computePositionedLogicalHeight const):
1154         (WebCore::RenderBox::computePositionedLogicalWidthReplaced const):
1155         (WebCore::RenderBox::positionForPoint):
1156         (WebCore::RenderBox::createsNewFormattingContext const):
1157         (WebCore::RenderBox::addVisualEffectOverflow):
1158         (WebCore::RenderBox::addOverflowFromChild):
1159         (WebCore::RenderBox::clearOverflow):
1160         (WebCore::RenderBox::clampToStartAndEndRegions const): Deleted.
1161         (WebCore::RenderBox::hasRegionRangeInFlowThread const): Deleted.
1162         (WebCore::RenderBox::clientBoxRectInRegion const): Deleted.
1163         (WebCore::RenderBox::borderBoxRectInRegion const): Deleted.
1164         (WebCore::RenderBox::constrainLogicalWidthInRegionByMinMax const): Deleted.
1165         (WebCore::RenderBox::containingBlockLogicalWidthForContentInRegion const): Deleted.
1166         (WebCore::RenderBox::containingBlockAvailableLineWidthInRegion const): Deleted.
1167         (WebCore::RenderBox::computeLogicalWidthInRegion const): Deleted.
1168         (WebCore::RenderBox::computeLogicalWidthInRegionUsing const): Deleted.
1169         (WebCore::RenderBox::renderBoxRegionInfo const): Deleted.
1170         * rendering/RenderBox.h:
1171         (WebCore::RenderBox::overflowClipRectForChildLayers):
1172         (WebCore::RenderBox::canHaveOutsideFragmentRange const):
1173         (WebCore::RenderBox::needsLayoutAfterFragmentRangeChange const):
1174         (WebCore::RenderBox::canHaveOutsideRegionRange const): Deleted.
1175         (WebCore::RenderBox::needsLayoutAfterRegionRangeChange const): Deleted.
1176         * rendering/RenderBoxFragmentInfo.h: Copied from rendering/RenderBoxRegionInfo.h.
1177         (WebCore::RenderBoxFragmentInfo::RenderBoxFragmentInfo):
1178         (WebCore::RenderBoxRegionInfo::RenderBoxRegionInfo): Deleted.
1179         (WebCore::RenderBoxRegionInfo::logicalLeft const): Deleted.
1180         (WebCore::RenderBoxRegionInfo::logicalWidth const): Deleted.
1181         (WebCore::RenderBoxRegionInfo::shiftLogicalLeft): Deleted.
1182         (WebCore::RenderBoxRegionInfo::isShifted const): Deleted.
1183         (WebCore::RenderBoxRegionInfo::createOverflow): Deleted.
1184         (WebCore::RenderBoxRegionInfo::overflow const): Deleted.
1185         (WebCore::RenderBoxRegionInfo::clearOverflow): Deleted.
1186         * rendering/RenderBoxModelObject.cpp:
1187         (WebCore::RenderBoxModelObject::adjustedPositionRelativeToOffsetParent const):
1188         (WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint const):
1189         * rendering/RenderBoxModelObject.h:
1190         (WebCore::RenderBoxModelObject::canHaveBoxInfoInFragment const):
1191         (WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion const): Deleted.
1192         * rendering/RenderBoxRegionInfo.h: Removed.
1193         * rendering/RenderElement.cpp:
1194         * rendering/RenderFileUploadControl.cpp:
1195         (WebCore::RenderFileUploadControl::positionForPoint):
1196         * rendering/RenderFileUploadControl.h:
1197         * rendering/RenderFlexibleBox.cpp:
1198         (WebCore::RenderFlexibleBox::computeMainAxisExtentForChild):
1199         (WebCore::RenderFlexibleBox::applyStretchAlignmentToChild):
1200         * rendering/RenderFlowThread.cpp:
1201         (WebCore::RenderFlowThread::RenderFlowThread):
1202         (WebCore::RenderFlowThread::styleDidChange):
1203         (WebCore::RenderFlowThread::removeFlowChildInfo):
1204         (WebCore::RenderFlowThread::removeFragmentFromThread):
1205         (WebCore::RenderFlowThread::invalidateFragments):
1206         (WebCore::RenderFlowThread::validateFragments):
1207         (WebCore::RenderFlowThread::layout):
1208         (WebCore::RenderFlowThread::updateLogicalWidth):
1209         (WebCore::RenderFlowThread::computeLogicalHeight const):
1210         (WebCore::RenderFlowThread::repaintRectangleInFragments const):
1211         (WebCore::RenderFlowThread::fragmentAtBlockOffset const):
1212         (WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent const):
1213         (WebCore::RenderFlowThread::pageLogicalTopForOffset const):
1214         (WebCore::RenderFlowThread::pageLogicalWidthForOffset const):
1215         (WebCore::RenderFlowThread::pageLogicalHeightForOffset const):
1216         (WebCore::RenderFlowThread::pageRemainingLogicalHeightForOffset const):
1217         (WebCore::RenderFlowThread::mapFromFlowToFragment const):
1218         (WebCore::RenderFlowThread::removeRenderBoxFragmentInfo):
1219         (WebCore::RenderFlowThread::removeLineFragmentInfo):
1220         (WebCore::RenderFlowThread::logicalWidthChangedInFragmentsForBlock):
1221         (WebCore::RenderFlowThread::contentLogicalWidthOfFirstFragment const):
1222         (WebCore::RenderFlowThread::contentLogicalHeightOfFirstFragment const):
1223         (WebCore::RenderFlowThread::contentLogicalLeftOfFirstFragment const):
1224         (WebCore::RenderFlowThread::firstFragment const):
1225         (WebCore::RenderFlowThread::lastFragment const):
1226         (WebCore::RenderFlowThread::clearRenderBoxFragmentInfoAndCustomStyle):
1227         (WebCore::RenderFlowThread::setFragmentRangeForBox):
1228         (WebCore::RenderFlowThread::hasCachedFragmentRangeForBox const):
1229         (WebCore::RenderFlowThread::getFragmentRangeForBoxFromCachedInfo const):
1230         (WebCore::RenderFlowThread::getFragmentRangeForBox const):
1231         (WebCore::RenderFlowThread::computedFragmentRangeForBox const):
1232         (WebCore::RenderFlowThread::fragmentInRange const):
1233         (WebCore::RenderFlowThread::objectShouldFragmentInFlowFragment const):
1234         (WebCore::RenderFlowThread::objectInFlowFragment const):
1235         (WebCore::RenderFlowThread::checkLinesConsistency const):
1236         (WebCore::RenderFlowThread::clearLinesToFragmentMap):
1237         (WebCore::RenderFlowThread::deleteLines):
1238         (WebCore::RenderFlowThread::willBeDestroyed):
1239         (WebCore::RenderFlowThread::markFragmentsForOverflowLayoutIfNeeded):
1240         (WebCore::RenderFlowThread::updateFragmentsFlowThreadPortionRect):
1241         (WebCore::RenderFlowThread::addForcedFragmentBreak):
1242         (WebCore::RenderFlowThread::collectLayerFragments):
1243         (WebCore::RenderFlowThread::fragmentsBoundingBox):
1244         (WebCore::RenderFlowThread::offsetFromLogicalTopOfFirstFragment const):
1245         (WebCore::RenderFlowThread::FragmentSearchAdapter::collectIfNeeded):
1246         (WebCore::RenderFlowThread::mapLocalToContainer const):
1247         (WebCore::RenderFlowThread::addFragmentsVisualEffectOverflow):
1248         (WebCore::RenderFlowThread::addFragmentsVisualOverflowFromTheme):
1249         (WebCore::RenderFlowThread::addFragmentsOverflowFromChild):
1250         (WebCore::RenderFlowThread::addFragmentsLayoutOverflow):
1251         (WebCore::RenderFlowThread::addFragmentsVisualOverflow):
1252         (WebCore::RenderFlowThread::clearFragmentsOverflow):
1253         (WebCore::RenderFlowThread::currentFragment const):
1254         (WebCore::RenderFlowThread::containingFragmentMap):
1255         (WebCore::RenderFlowThread::removeRegionFromThread): Deleted.
1256         (WebCore::RenderFlowThread::invalidateRegions): Deleted.
1257         (WebCore::RenderFlowThread::validateRegions): Deleted.
1258         (WebCore::RenderFlowThread::repaintRectangleInRegions const): Deleted.
1259         (WebCore::RenderFlowThread::regionAtBlockOffset const): Deleted.
1260         (WebCore::RenderFlowThread::mapFromFlowToRegion const): Deleted.
1261         (WebCore::RenderFlowThread::removeRenderBoxRegionInfo): Deleted.
1262         (WebCore::RenderFlowThread::removeLineRegionInfo): Deleted.
1263         (WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock): Deleted.
1264         (WebCore::RenderFlowThread::contentLogicalWidthOfFirstRegion const): Deleted.
1265         (WebCore::RenderFlowThread::contentLogicalHeightOfFirstRegion const): Deleted.
1266         (WebCore::RenderFlowThread::contentLogicalLeftOfFirstRegion const): Deleted.
1267         (WebCore::RenderFlowThread::firstRegion const): Deleted.
1268         (WebCore::RenderFlowThread::lastRegion const): Deleted.
1269         (WebCore::RenderFlowThread::clearRenderBoxRegionInfoAndCustomStyle): Deleted.
1270         (WebCore::RenderFlowThread::setRegionRangeForBox): Deleted.
1271         (WebCore::RenderFlowThread::hasCachedRegionRangeForBox const): Deleted.
1272         (WebCore::RenderFlowThread::getRegionRangeForBoxFromCachedInfo const): Deleted.
1273         (WebCore::RenderFlowThread::getRegionRangeForBox const): Deleted.
1274         (WebCore::RenderFlowThread::computedRegionRangeForBox const): Deleted.
1275         (WebCore::RenderFlowThread::regionInRange const): Deleted.
1276         (WebCore::RenderFlowThread::objectShouldFragmentInFlowRegion const): Deleted.
1277         (WebCore::RenderFlowThread::objectInFlowRegion const): Deleted.
1278         (WebCore::RenderFlowThread::clearLinesToRegionMap): Deleted.
1279         (WebCore::RenderFlowThread::markRegionsForOverflowLayoutIfNeeded): Deleted.
1280         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect): Deleted.
1281         (WebCore::RenderFlowThread::addForcedRegionBreak): Deleted.
1282         (WebCore::RenderFlowThread::offsetFromLogicalTopOfFirstRegion const): Deleted.
1283         (WebCore::RenderFlowThread::RegionSearchAdapter::collectIfNeeded): Deleted.
1284         (WebCore::RenderFlowThread::addRegionsVisualEffectOverflow): Deleted.
1285         (WebCore::RenderFlowThread::addRegionsVisualOverflowFromTheme): Deleted.
1286         (WebCore::RenderFlowThread::addRegionsOverflowFromChild): Deleted.
1287         (WebCore::RenderFlowThread::addRegionsLayoutOverflow): Deleted.
1288         (WebCore::RenderFlowThread::addRegionsVisualOverflow): Deleted.
1289         (WebCore::RenderFlowThread::clearRegionsOverflow): Deleted.
1290         (WebCore::RenderFlowThread::currentRegion const): Deleted.
1291         (WebCore::RenderFlowThread::containingRegionMap): Deleted.
1292         * rendering/RenderFlowThread.h:
1293         (WTF::ValueToString<WebCore::RenderFragmentContainer::string):
1294         (WTF::ValueToString<WebCore::RenderRegion::string): Deleted.
1295         * rendering/RenderFragmentContainer.cpp: Copied from rendering/RenderRegion.cpp.
1296         (WebCore::RenderFragmentContainer::RenderFragmentContainer):
1297         (WebCore::RenderFragmentContainer::mapFragmentPointIntoFlowThreadCoordinates):
1298         (WebCore::RenderFragmentContainer::positionForPoint):
1299         (WebCore::RenderFragmentContainer::pageLogicalWidth const):
1300         (WebCore::RenderFragmentContainer::pageLogicalHeight const):
1301         (WebCore::RenderFragmentContainer::logicalHeightOfAllFlowThreadContent const):
1302         (WebCore::RenderFragmentContainer::flowThreadPortionOverflowRect):
1303         (WebCore::RenderFragmentContainer::flowThreadPortionLocation const):
1304         (WebCore::RenderFragmentContainer::overflowRectForFlowThreadPortion):
1305         (WebCore::RenderFragmentContainer::pageLogicalTopForOffset const):
1306         (WebCore::RenderFragmentContainer::isFirstFragment const):
1307         (WebCore::RenderFragmentContainer::isLastFragment const):
1308         (WebCore::RenderFragmentContainer::shouldClipFlowThreadContent const):
1309         (WebCore::RenderFragmentContainer::styleDidChange):
1310         (WebCore::RenderFragmentContainer::computeOverflowFromFlowThread):
1311         (WebCore::RenderFragmentContainer::repaintFlowThreadContent):
1312         (WebCore::RenderFragmentContainer::repaintFlowThreadContentRectangle):
1313         (WebCore::RenderFragmentContainer::installFlowThread):
1314         (WebCore::RenderFragmentContainer::attachFragment):
1315         (WebCore::RenderFragmentContainer::detachFragment):
1316         (WebCore::RenderFragmentContainer::renderBoxFragmentInfo const):
1317         (WebCore::RenderFragmentContainer::setRenderBoxFragmentInfo):
1318         (WebCore::RenderFragmentContainer::takeRenderBoxFragmentInfo):
1319         (WebCore::RenderFragmentContainer::removeRenderBoxFragmentInfo):
1320         (WebCore::RenderFragmentContainer::deleteAllRenderBoxFragmentInfo):
1321         (WebCore::RenderFragmentContainer::logicalTopOfFlowThreadContentRect const):
1322         (WebCore::RenderFragmentContainer::logicalBottomOfFlowThreadContentRect const):
1323         (WebCore::RenderFragmentContainer::insertedIntoTree):
1324         (WebCore::RenderFragmentContainer::willBeRemovedFromTree):
1325         (WebCore::RenderFragmentContainer::computeIntrinsicLogicalWidths const):
1326         (WebCore::RenderFragmentContainer::computePreferredLogicalWidths):
1327         (WebCore::RenderFragmentContainer::adjustFragmentBoundsFromFlowThreadPortionRect const):
1328         (WebCore::RenderFragmentContainer::ensureOverflowForBox):
1329         (WebCore::RenderFragmentContainer::rectFlowPortionForBox const):
1330         (WebCore::RenderFragmentContainer::addLayoutOverflowForBox):
1331         (WebCore::RenderFragmentContainer::addVisualOverflowForBox):
1332         (WebCore::RenderFragmentContainer::layoutOverflowRectForBox):
1333         (WebCore::RenderFragmentContainer::visualOverflowRectForBox):
1334         (WebCore::RenderFragmentContainer::layoutOverflowRectForBoxForPropagation):
1335         (WebCore::RenderFragmentContainer::visualOverflowRectForBoxForPropagation):
1336         (WebCore::CurrentRenderFragmentContainerMaintainer::CurrentRenderFragmentContainerMaintainer):
1337         (WebCore::CurrentRenderFragmentContainerMaintainer::~CurrentRenderFragmentContainerMaintainer):
1338         (WebCore::RenderRegion::RenderRegion): Deleted.
1339         (WebCore::RenderRegion::mapRegionPointIntoFlowThreadCoordinates): Deleted.
1340         (WebCore::RenderRegion::positionForPoint): Deleted.
1341         (WebCore::RenderRegion::pageLogicalWidth const): Deleted.
1342         (WebCore::RenderRegion::pageLogicalHeight const): Deleted.
1343         (WebCore::RenderRegion::logicalHeightOfAllFlowThreadContent const): Deleted.
1344         (WebCore::RenderRegion::flowThreadPortionOverflowRect): Deleted.
1345         (WebCore::RenderRegion::flowThreadPortionLocation const): Deleted.
1346         (WebCore::RenderRegion::overflowRectForFlowThreadPortion): Deleted.
1347         (WebCore::RenderRegion::pageLogicalTopForOffset const): Deleted.
1348         (WebCore::RenderRegion::isFirstRegion const): Deleted.
1349         (WebCore::RenderRegion::isLastRegion const): Deleted.
1350         (WebCore::RenderRegion::shouldClipFlowThreadContent const): Deleted.
1351         (WebCore::RenderRegion::styleDidChange): Deleted.
1352         (WebCore::RenderRegion::computeOverflowFromFlowThread): Deleted.
1353         (WebCore::RenderRegion::repaintFlowThreadContent): Deleted.
1354         (WebCore::RenderRegion::repaintFlowThreadContentRectangle): Deleted.
1355         (WebCore::RenderRegion::installFlowThread): Deleted.
1356         (WebCore::RenderRegion::attachRegion): Deleted.
1357         (WebCore::RenderRegion::detachRegion): Deleted.
1358         (WebCore::RenderRegion::renderBoxRegionInfo const): Deleted.
1359         (WebCore::RenderRegion::setRenderBoxRegionInfo): Deleted.
1360         (WebCore::RenderRegion::takeRenderBoxRegionInfo): Deleted.
1361         (WebCore::RenderRegion::removeRenderBoxRegionInfo): Deleted.
1362         (WebCore::RenderRegion::deleteAllRenderBoxRegionInfo): Deleted.
1363         (WebCore::RenderRegion::logicalTopOfFlowThreadContentRect const): Deleted.
1364         (WebCore::RenderRegion::logicalBottomOfFlowThreadContentRect const): Deleted.
1365         (WebCore::RenderRegion::insertedIntoTree): Deleted.
1366         (WebCore::RenderRegion::willBeRemovedFromTree): Deleted.
1367         (WebCore::RenderRegion::computeIntrinsicLogicalWidths const): Deleted.
1368         (WebCore::RenderRegion::computePreferredLogicalWidths): Deleted.
1369         (WebCore::RenderRegion::adjustRegionBoundsFromFlowThreadPortionRect const): Deleted.
1370         (WebCore::RenderRegion::ensureOverflowForBox): Deleted.
1371         (WebCore::RenderRegion::rectFlowPortionForBox const): Deleted.
1372         (WebCore::RenderRegion::addLayoutOverflowForBox): Deleted.
1373         (WebCore::RenderRegion::addVisualOverflowForBox): Deleted.
1374         (WebCore::RenderRegion::layoutOverflowRectForBox): Deleted.
1375         (WebCore::RenderRegion::visualOverflowRectForBox): Deleted.
1376         (WebCore::RenderRegion::layoutOverflowRectForBoxForPropagation): Deleted.
1377         (WebCore::RenderRegion::visualOverflowRectForBoxForPropagation): Deleted.
1378         (WebCore::CurrentRenderRegionMaintainer::CurrentRenderRegionMaintainer): Deleted.
1379         (WebCore::CurrentRenderRegionMaintainer::~CurrentRenderRegionMaintainer): Deleted.
1380         * rendering/RenderFragmentContainer.h: Copied from rendering/RenderRegion.h.
1381         (WebCore::RenderFragmentContainer::isRenderFragmentContainerSet const):
1382         (WebCore::RenderFragmentContainer::absoluteQuadsForBoxInFragment):
1383         (WebCore::CurrentRenderFragmentContainerMaintainer::fragment const):
1384         (WebCore::RenderRegion::setFlowThreadPortionRect): Deleted.
1385         (WebCore::RenderRegion::flowThreadPortionRect const): Deleted.
1386         (WebCore::RenderRegion::flowThread const): Deleted.
1387         (WebCore::RenderRegion::isValid const): Deleted.
1388         (WebCore::RenderRegion::setIsValid): Deleted.
1389         (WebCore::RenderRegion::logicalTopForFlowThreadContent const): Deleted.
1390         (WebCore::RenderRegion::logicalBottomForFlowThreadContent const): Deleted.
1391         (WebCore::RenderRegion::isRenderRegionSet const): Deleted.
1392         (WebCore::RenderRegion::collectLayerFragments): Deleted.
1393         (WebCore::RenderRegion::absoluteQuadsForBoxInRegion): Deleted.
1394         (WebCore::CurrentRenderRegionMaintainer::region const): Deleted.
1395         * rendering/RenderFragmentContainerSet.cpp: Copied from rendering/RenderRegionSet.cpp.
1396         (WebCore::RenderFragmentContainerSet::RenderFragmentContainerSet):
1397         (WebCore::RenderFragmentContainerSet::installFlowThread):
1398         (WebCore::RenderFragmentContainerSet::expandToEncompassFlowThreadContentsIfNeeded):
1399         (WebCore::RenderRegionSet::RenderRegionSet): Deleted.
1400         (WebCore::RenderRegionSet::installFlowThread): Deleted.
1401         (WebCore::RenderRegionSet::expandToEncompassFlowThreadContentsIfNeeded): Deleted.
1402         * rendering/RenderFragmentContainerSet.h: Copied from rendering/RenderRegionSet.h.
1403         * rendering/RenderGrid.cpp:
1404         (WebCore::RenderGrid::computeMarginLogicalSizeForChild const):
1405         * rendering/RenderInline.cpp:
1406         (WebCore::RenderInline::positionForPoint):
1407         (WebCore::RenderInline::linesVisualOverflowBoundingBoxInFragment const):
1408         (WebCore::RenderInline::linesVisualOverflowBoundingBoxInRegion const): Deleted.
1409         * rendering/RenderInline.h:
1410         * rendering/RenderLayer.cpp:
1411         (WebCore::accumulateOffsetTowardsAncestor):
1412         (WebCore::RenderLayer::calculateClipRects const):
1413         * rendering/RenderLayerBacking.cpp:
1414         (WebCore::RenderLayerBacking::paintIntoLayer):
1415         * rendering/RenderLayerCompositor.cpp:
1416         (WebCore::RenderLayerCompositor::canBeComposited const):
1417         * rendering/RenderLineBreak.cpp:
1418         (WebCore::RenderLineBreak::positionForPoint):
1419         * rendering/RenderLineBreak.h:
1420         * rendering/RenderMultiColumnFlowThread.cpp:
1421         (WebCore::RenderMultiColumnFlowThread::addFragmentToThread):
1422         (WebCore::RenderMultiColumnFlowThread::willBeRemovedFromTree):
1423         (WebCore::RenderMultiColumnFlowThread::processPossibleSpannerDescendant):
1424         (WebCore::RenderMultiColumnFlowThread::flowThreadRelativeWillBeRemoved):
1425         (WebCore::RenderMultiColumnFlowThread::setPageBreak):
1426         (WebCore::RenderMultiColumnFlowThread::updateMinimumPageHeight):
1427         (WebCore::RenderMultiColumnFlowThread::fragmentAtBlockOffset const):
1428         (WebCore::RenderMultiColumnFlowThread::setFragmentRangeForBox):
1429         (WebCore::RenderMultiColumnFlowThread::addForcedFragmentBreak):
1430         (WebCore::RenderMultiColumnFlowThread::offsetFromContainer const):
1431         (WebCore::RenderMultiColumnFlowThread::mapAbsoluteToLocalPoint const):
1432         (WebCore::RenderMultiColumnFlowThread::physicalTranslationFromFragmentToFlow const):
1433         (WebCore::RenderMultiColumnFlowThread::mapFromFlowToFragment const):
1434         (WebCore::RenderMultiColumnFlowThread::physicalTranslationOffsetFromFlowToFragment const):
1435         (WebCore::RenderMultiColumnFlowThread::physicalTranslationFromFlowToFragment const):
1436         (WebCore::RenderMultiColumnFlowThread::addRegionToThread): Deleted.
1437         (WebCore::RenderMultiColumnFlowThread::regionAtBlockOffset const): Deleted.
1438         (WebCore::RenderMultiColumnFlowThread::setRegionRangeForBox): Deleted.
1439         (WebCore::RenderMultiColumnFlowThread::addForcedRegionBreak): Deleted.
1440         (WebCore::RenderMultiColumnFlowThread::physicalTranslationFromRegionToFlow const): Deleted.
1441         (WebCore::RenderMultiColumnFlowThread::mapFromFlowToRegion const): Deleted.
1442         (WebCore::RenderMultiColumnFlowThread::physicalTranslationOffsetFromFlowToRegion const): Deleted.
1443         (WebCore::RenderMultiColumnFlowThread::physicalTranslationFromFlowToRegion const): Deleted.
1444         * rendering/RenderMultiColumnFlowThread.h:
1445         * rendering/RenderMultiColumnSet.cpp:
1446         (WebCore::RenderMultiColumnSet::RenderMultiColumnSet):
1447         (WebCore::RenderMultiColumnSet::updateLogicalWidth):
1448         (WebCore::RenderMultiColumnSet::beginFlow):
1449         (WebCore::RenderMultiColumnSet::endFlow):
1450         (WebCore::RenderMultiColumnSet::layout):
1451         (WebCore::RenderMultiColumnSet::flowThreadPortionOverflowRect):
1452         (WebCore::RenderMultiColumnSet::repaintFlowThreadContent):
1453         (WebCore::RenderMultiColumnSet::collectLayerFragments):
1454         (WebCore::RenderMultiColumnSet::adjustFragmentBoundsFromFlowThreadPortionRect const):
1455         (WebCore::RenderMultiColumnSet::positionForPoint):
1456         (WebCore::RenderMultiColumnSet::translateFragmentPointToFlowThread const):
1457         (WebCore::RenderMultiColumnSet::updateHitTestResult):
1458         (WebCore::RenderMultiColumnSet::adjustRegionBoundsFromFlowThreadPortionRect const): Deleted.
1459         (WebCore::RenderMultiColumnSet::translateRegionPointToFlowThread const): Deleted.
1460         * rendering/RenderMultiColumnSet.h:
1461         * rendering/RenderObject.cpp:
1462         (WebCore::RenderObject::containerForRepaint const):
1463         (WebCore::RenderObject::repaintUsingContainer const):
1464         (WebCore::RenderObject::outputRegionsInformation const):
1465         (WebCore::RenderObject::positionForPoint):
1466         * rendering/RenderObject.h:
1467         (WebCore::RenderObject::isRenderFragmentContainer const):
1468         (WebCore::RenderObject::isRenderRegion const): Deleted.
1469         * rendering/RenderRegion.cpp: Removed.
1470         * rendering/RenderRegion.h: Removed.
1471         * rendering/RenderRegionSet.cpp: Removed.
1472         * rendering/RenderRegionSet.h: Removed.
1473         * rendering/RenderReplaced.cpp:
1474         (WebCore::RenderReplaced::positionForPoint):
1475         * rendering/RenderReplaced.h:
1476         * rendering/RenderTable.cpp:
1477         (WebCore::RenderTable::updateLogicalWidth):
1478         (WebCore::RenderTable::overflowClipRect):
1479         * rendering/RenderTable.h:
1480         * rendering/RenderText.cpp:
1481         (WebCore::RenderText::positionForPoint):
1482         * rendering/RenderText.h:
1483         * rendering/RenderTreeAsText.cpp:
1484         * rendering/RenderingAllInOne.cpp:
1485         * rendering/RootInlineBox.cpp:
1486         (WebCore::containingFragmentMap):
1487         (WebCore::RootInlineBox::~RootInlineBox):
1488         (WebCore::RootInlineBox::containingFragment const):
1489         (WebCore::RootInlineBox::clearContainingFragment):
1490         (WebCore::RootInlineBox::setContainingFragment):
1491         (WebCore::containingRegionMap): Deleted.
1492         (WebCore::RootInlineBox::containingRegion const): Deleted.
1493         (WebCore::RootInlineBox::clearContainingRegion): Deleted.
1494         (WebCore::RootInlineBox::setContainingRegion): Deleted.
1495         * rendering/RootInlineBox.h:
1496         * rendering/shapes/ShapeOutsideInfo.cpp:
1497         (WebCore::ShapeOutsideInfo::logicalLeftOffset const):
1498         * rendering/style/RenderStyleConstants.h:
1499         * rendering/svg/RenderSVGInlineText.cpp:
1500         (WebCore::RenderSVGInlineText::positionForPoint):
1501         * rendering/svg/RenderSVGInlineText.h:
1502         * rendering/svg/RenderSVGText.cpp:
1503         (WebCore::RenderSVGText::positionForPoint):
1504         * rendering/svg/RenderSVGText.h:
1505
1506 2017-09-26  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1507
1508         [Curl] Introduce CurlResponse to hold response information among threads.
1509         https://bugs.webkit.org/show_bug.cgi?id=177496
1510
1511         Reviewed by Alex Christensen.
1512
1513         * platform/network/curl/AuthenticationChallenge.h:
1514         * platform/network/curl/AuthenticationChallengeCurl.cpp:
1515         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
1516         (WebCore::AuthenticationChallenge::protectionSpaceFromHandle):
1517         * platform/network/curl/CurlContext.cpp:
1518         (WebCore::CurlHandle::getHttpConnectCode):
1519         * platform/network/curl/CurlContext.h:
1520         * platform/network/curl/CurlResponse.h: Added.
1521         (WebCore::CurlResponse::isolatedCopy const):
1522         * platform/network/curl/ResourceHandleCurlDelegate.cpp:
1523         (WebCore::ResourceHandleCurlDelegate::didReceiveAllHeaders):
1524         (WebCore::ResourceHandleCurlDelegate::didReceiveContentData):
1525         (WebCore::ResourceHandleCurlDelegate::handleLocalReceiveResponse):
1526         (WebCore::ResourceHandleCurlDelegate::didFinish):
1527         (WebCore::ResourceHandleCurlDelegate::handleDataURL):
1528         (WebCore::ResourceHandleCurlDelegate::didReceiveHeader):
1529         (WebCore::isHttpInfo): Deleted.
1530         * platform/network/curl/ResourceHandleCurlDelegate.h:
1531         * platform/network/curl/ResourceResponse.h:
1532         (WebCore::ResourceResponse::ResourceResponse):
1533         (WebCore::ResourceResponse::setResponseFired): Deleted.
1534         (WebCore::ResourceResponse::responseFired): Deleted.
1535         * platform/network/curl/ResourceResponseCurl.cpp:
1536         (WebCore::ResourceResponse::ResourceResponse):
1537         (WebCore::ResourceResponse::appendHTTPHeaderField):
1538         (WebCore::ResourceResponse::setStatusLine):
1539
1540 2017-09-26  Chris Dumez  <cdumez@apple.com>
1541
1542         Make StoredCredentials an enum class and rename its header
1543         https://bugs.webkit.org/show_bug.cgi?id=177455
1544
1545         Reviewed by Youenn Fablet.
1546
1547         Follow-up to r222467, actually make it an enum *class*.
1548
1549         * platform/network/StoredCredentialsPolicy.h:
1550         (): Deleted.
1551
1552 2017-09-26  Daniel Bates  <dabates@apple.com>
1553
1554         Remove extraneous includes of TextRun.h
1555         https://bugs.webkit.org/show_bug.cgi?id=177499
1556
1557         Reviewed by Myles C. Maxfield.
1558
1559         No functionality changed. So, no new tests.
1560
1561         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
1562         * platform/mac/DragImageMac.mm:
1563         * platform/text/ios/LocalizedDateCache.mm:
1564         * testing/InternalSettings.cpp:
1565
1566 2017-09-26  Yoshiaki Jitsukawa  <Yoshiaki.Jitsukawa@sony.com>
1567
1568         [PAL] Move Clock into PAL
1569         https://bugs.webkit.org/show_bug.cgi?id=174342
1570
1571         Reviewed by Myles C. Maxfield.
1572
1573         No new tests. No change in behavior.
1574
1575         * CMakeLists.txt:
1576         * WebCore.xcodeproj/project.pbxproj:
1577         * html/MediaController.cpp:
1578         (MediaController::MediaController):
1579         * html/MediaController.h:
1580         * platform/Clock.cpp: Removed.
1581         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
1582         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
1583         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
1584         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::MediaPlayerPrivateMediaStreamAVFObjC):
1585         * platform/mac/PlatformClockCA.cpp: Removed. PlatformClockCA is no longer used.
1586         * platform/mac/PlatformClockCA.h: Removed.
1587
1588 2017-09-26  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1589
1590         [Curl] Change member variable of CurlHandle to use std::unique_ptr
1591         https://bugs.webkit.org/show_bug.cgi?id=177492
1592
1593         Reviewed by Alex Christensen.
1594
1595         * platform/network/curl/CurlDownload.cpp:
1596         (WebCore::CurlDownload::init):
1597         (WebCore::CurlDownload::getResponse const):
1598         (WebCore::CurlDownload::setupTransfer):
1599         (WebCore::CurlDownload::didCompleteTransfer):
1600         (WebCore::CurlDownload::didCancelTransfer):
1601         (WebCore::CurlDownload::didReceiveHeader):
1602         (WebCore::CurlDownload::addHeaders): Deleted.
1603         * platform/network/curl/CurlDownload.h:
1604         * platform/network/curl/ResourceHandleCurlDelegate.cpp:
1605         (WebCore::ResourceHandleCurlDelegate::ResourceHandleCurlDelegate):
1606         (WebCore::ResourceHandleCurlDelegate::start):
1607         (WebCore::ResourceHandleCurlDelegate::setDefersLoading):
1608         (WebCore::ResourceHandleCurlDelegate::setAuthentication):
1609         (WebCore::ResourceHandleCurlDelegate::setupTransfer):
1610         (WebCore::ResourceHandleCurlDelegate::didCompleteTransfer):
1611         (WebCore::ResourceHandleCurlDelegate::didCancelTransfer):
1612         (WebCore::ResourceHandleCurlDelegate::didReceiveAllHeaders):
1613         (WebCore::ResourceHandleCurlDelegate::handleLocalReceiveResponse):
1614         (WebCore::ResourceHandleCurlDelegate::setupPOST):
1615         (WebCore::ResourceHandleCurlDelegate::setupPUT):
1616         (WebCore::ResourceHandleCurlDelegate::setupFormData):
1617         (WebCore::ResourceHandleCurlDelegate::applyAuthentication):
1618         (WebCore::ResourceHandleCurlDelegate::getNetworkLoadMetrics):
1619         (WebCore::ResourceHandleCurlDelegate::willSetupSslCtx):
1620         (WebCore::ResourceHandleCurlDelegate::didReceiveHeader):
1621         (WebCore::ResourceHandleCurlDelegate::didReceiveData):
1622         * platform/network/curl/ResourceHandleCurlDelegate.h:
1623
1624 2017-09-26  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1625
1626         [Curl] Simplify JobManager's duty and move the tasks to client
1627         for easy handling. Also simlify CurlHandle by not storing internal
1628         error value as a member variable.
1629         https://bugs.webkit.org/show_bug.cgi?id=177466
1630
1631         Reviewed by Alex Christensen.
1632
1633         * platform/network/curl/CurlContext.cpp:
1634         (WebCore::CurlHandle::perform):
1635         (WebCore::CurlHandle::pause):
1636         (WebCore::CurlHandle::getEffectiveURL):
1637         (WebCore::CurlHandle::getPrimaryPort):
1638         (WebCore::CurlHandle::getResponseCode):
1639         (WebCore::CurlHandle::getContentLength):
1640         (WebCore::CurlHandle::getHttpAuthAvail):
1641         (WebCore::CurlHandle::getNetworkLoadMetrics):
1642         * platform/network/curl/CurlContext.h:
1643         (WebCore::CurlHandle::errorCode const): Deleted.
1644         (WebCore::CurlHandle::setErrorCode): Deleted.
1645         * platform/network/curl/CurlDownload.cpp:
1646         (WebCore::CurlDownload::start):
1647         (WebCore::CurlDownload::cancel):
1648         (WebCore::CurlDownload::setupTransfer):
1649         (WebCore::CurlDownload::didCompleteTransfer):
1650         (WebCore::CurlDownload::didCancelTransfer):
1651         (WebCore::CurlDownload::setupRequest): Deleted.
1652         (WebCore::CurlDownload::notifyFinish): Deleted.
1653         (WebCore::CurlDownload::notifyFail): Deleted.
1654         * platform/network/curl/CurlDownload.h:
1655         * platform/network/curl/CurlJobManager.cpp:
1656         (WebCore::CurlJobList::startJobs):
1657         (WebCore::CurlJobList::finishJobs):
1658         (WebCore::CurlJobManager::add):
1659         (WebCore::CurlJobManager::cancel):
1660         (WebCore::CurlJobManager::callOnJobThread):
1661         (WebCore::CurlJobManager::updateJobList):
1662         (WebCore::CurlJobManager::workerThread):
1663         (WebCore::CurlJobList::notifyResult): Deleted.
1664         * platform/network/curl/CurlJobManager.h:
1665         * platform/network/curl/ResourceHandleCurlDelegate.cpp:
1666         (WebCore::ResourceHandleCurlDelegate::start):
1667         (WebCore::ResourceHandleCurlDelegate::cancel):
1668         (WebCore::ResourceHandleCurlDelegate::dispatchSynchronousJob):
1669         (WebCore::ResourceHandleCurlDelegate::setupTransfer):
1670         (WebCore::ResourceHandleCurlDelegate::didCompleteTransfer):
1671         (WebCore::ResourceHandleCurlDelegate::didCancelTransfer):
1672         (WebCore::ResourceHandleCurlDelegate::didFinish):
1673         (WebCore::ResourceHandleCurlDelegate::didFail):
1674         (WebCore::ResourceHandleCurlDelegate::setupRequest): Deleted.
1675         (WebCore::ResourceHandleCurlDelegate::notifyFinish): Deleted.
1676         (WebCore::ResourceHandleCurlDelegate::notifyFail): Deleted.
1677         * platform/network/curl/ResourceHandleCurlDelegate.h:
1678
1679 2017-09-26  Daniel Bates  <dabates@apple.com>
1680
1681         Cleanup: Consolidate non-selection background painting code for text
1682         https://bugs.webkit.org/show_bug.cgi?id=177490
1683
1684         Reviewed by Zalan Bujtas.
1685
1686         Share code to paint the background of a text subrange instead of duplicating
1687         it for text match markers and composition underlines.
1688
1689         Additionally standardize the argument order for various paint functions and
1690         make more paint functions private.
1691
1692         No functionality changed. So, no new tests.
1693
1694         * rendering/InlineTextBox.cpp:
1695         (WebCore::InlineTextBox::paint): Updated code as needed for changes below.
1696         (WebCore::InlineTextBox::paintSelection): Add FIXME comment to fix up this code for
1697         combined text while I am in this file.
1698         (WebCore::InlineTextBox::paintTextSubrangeBackground): Added. Extracted from the common code of
1699         paintCompositionBackground() and paintTextMatchMarker().
1700         (WebCore::InlineTextBox::paintCompositionBackground): Modified to use paintTextSubrangeBackground().
1701         (WebCore::InlineTextBox::paintTextMatchMarker): Ditto.
1702         (WebCore::InlineTextBox::paintDocumentMarker): Add FIXME comment to fix up this code for
1703         combined and hyphenated text while I am here.
1704         (WebCore::InlineTextBox::paintDocumentMarkers): Update code as needed for changes
1705         above.
1706         * rendering/InlineTextBox.h: Change visibility of paintCompositionBackground(),
1707         paintDocumentMarkers() and paintCompositionUnderline() from protected to private
1708         as no derived class makes use of these functions. Group related functions to
1709         improve readability.
1710
1711 2017-09-26  Dean Jackson  <dino@apple.com>
1712
1713         Unreviewed. Remove hardware concurrency from features list.
1714
1715         * features.json:
1716
1717 2017-09-26  Antti Koivisto  <antti@apple.com>
1718
1719         REGRESSION (222040): Google Maps Street View CrashTracer: [USER] com.apple.WebKit.WebContent.Development at com.apple.WebCore: WebCore::PropertyWrapperAcceleratedTransform::blend const + 92
1720         https://bugs.webkit.org/show_bug.cgi?id=177485
1721
1722         Reviewed by Zalan Bujtas.
1723
1724         We crash when animating between two different types of transforms because renderer is null for the first frame.
1725
1726         Test: fast/animation/animation-mixed-transform-crash.html
1727
1728         * page/animation/AnimationBase.cpp:
1729         (WebCore::AnimationBase::currentStyle const):
1730
1731             Add a way to get the current style from animations.
1732             This is either the render style or the inital style.
1733
1734         * page/animation/AnimationBase.h:
1735         * page/animation/CSSPropertyAnimation.cpp:
1736         (WebCore::blendFunc):
1737
1738             Renderer may be null when computing the first frame of the animation. Null check.
1739
1740         (WebCore::blendFilter):
1741
1742             Here too.
1743
1744         * page/animation/CompositeAnimation.cpp:
1745         (WebCore::CompositeAnimation::updateTransitions):
1746         * page/animation/ImplicitAnimation.h:
1747         * page/animation/KeyframeAnimation.h:
1748
1749 2017-09-26  Zan Dobersek  <zdobersek@igalia.com>
1750
1751         [EME] Add ClearKey support for persistent session data load and removal
1752         https://bugs.webkit.org/show_bug.cgi?id=177442
1753
1754         Reviewed by Xabier Rodriguez-Calvar.
1755
1756         Implement the session data load and removal for persistent sessions
1757         in the ClearKey implementation of the CDMInstance interface.
1758
1759         CDMInstanceClearKey::loadSession() finds data for the specified session
1760         name, if any, and constructs a corresponding KeyStatusVector object that
1761         holds information about all known keys associated with this session before
1762         dispatching the LoadSessionCallback asynchronously.
1763
1764         CDMInstanceClearKey::removeSessionData() similarly finds the session data,
1765         if any, and then removes it from the state tracker. The key data is still
1766         reused to construct the KeyStatusVector object that holds information
1767         about all the keys that were stored for this session. The key information
1768         is also embedded in the 'license release' JSON message. Both key status
1769         vector and message are then used in the RemoveSessionDataCallback dispatch
1770         that is again done asynchronously.
1771
1772         No new tests -- affected tests have their baselines updated.
1773
1774         * platform/encryptedmedia/clearkey/CDMClearKey.cpp:
1775         (WebCore::CDMInstanceClearKey::loadSession):
1776         (WebCore::CDMInstanceClearKey::removeSessionData):
1777
1778 2017-09-26  Ms2ger  <Ms2ger@igalia.com>
1779
1780         Update compressedTexImage3D to match the signature in the specification.
1781         https://bugs.webkit.org/show_bug.cgi?id=177431
1782
1783         Reviewed by Sam Weinig.
1784
1785         No new tests: not much point in adding tests now; this method doesn't
1786         do anything anyway.
1787
1788         * html/canvas/WebGL2RenderingContext.cpp:
1789         (WebCore::WebGL2RenderingContext::compressedTexImage3D):
1790         * html/canvas/WebGL2RenderingContext.h:
1791         * html/canvas/WebGL2RenderingContext.idl:
1792
1793 2017-09-25  Timothy Horton  <timothy_horton@apple.com>
1794
1795         Fix the macOS WebCore CMake build
1796
1797         * PlatformMac.cmake:
1798
1799 2017-09-25  Alex Christensen  <achristensen@webkit.org>
1800
1801         Make PolicyAction an encodable enum class
1802         https://bugs.webkit.org/show_bug.cgi?id=177480
1803
1804         Reviewed by Antti Koivisto.
1805
1806         * loader/DocumentLoader.cpp:
1807         (WebCore::DocumentLoader::responseReceived):
1808         (WebCore::DocumentLoader::continueAfterContentPolicy):
1809         * loader/FrameLoaderTypes.h:
1810         * loader/PolicyChecker.cpp:
1811         (WebCore::PolicyChecker::checkNavigationPolicy):
1812         (WebCore::PolicyChecker::checkNewWindowPolicy):
1813
1814 2017-09-25  Timothy Horton  <timothy_horton@apple.com>
1815
1816         Fix the macOS WebCore CMake build
1817
1818         * PlatformMac.cmake:
1819
1820 2017-09-25  Frederik Riedel  <riedel@apple.com>
1821
1822         Expose way to set values of classified form controls as {Legacy WebKit, WebKit} SPI
1823         https://bugs.webkit.org/show_bug.cgi?id=174394
1824         <rdar://problem/33183504>
1825
1826         Reviewed by Ryosuke Niwa.
1827
1828         * WebCore.xcodeproj/project.pbxproj:
1829         * editing/ios/AutofillElements.cpp: Added.
1830         (WebCore::isAutofillableElement): Returns true if the element is of type text or email.
1831         (WebCore::nextAutofillableElement): Returns the next focusable element that is autofillable.
1832         (WebCore::previousAutofillableElement): Returns the previous focusable element that is autofillable.
1833         (WebCore::AutofillElements::computeAutofillElements): Computes the autofill elements (username & password)
1834         for a given input element.
1835         (WebCore::AutofillElements::autofill): Fills the credentials into the pair of username/password elements.
1836         * editing/ios/AutofillElements.h: Added.
1837
1838 2017-09-25  Devin Rousso  <webkit@devinrousso.com>
1839
1840         Web Inspector: move Console.addInspectedNode to DOM.setInspectedNode
1841         https://bugs.webkit.org/show_bug.cgi?id=176827
1842
1843         Reviewed by Joseph Pecoraro.
1844
1845         Tests: http/tests/inspector/dom/cross-domain-inspected-node-access.html
1846                inspector/dom/setInspectedNode.html
1847
1848         * inspector/InspectorDOMAgent.h:
1849         * inspector/InspectorDOMAgent.cpp:
1850         (WebCore::InspectorDOMAgent::setInspectedNode):
1851
1852         * inspector/PageConsoleAgent.h:
1853         * inspector/PageConsoleAgent.cpp:
1854         (WebCore::PageConsoleAgent::addInspectedNode): Deleted.
1855
1856         * inspector/WorkerConsoleAgent.h:
1857         * inspector/WorkerConsoleAgent.cpp:
1858         (WebCore::WorkerConsoleAgent::addInspectedNode): Deleted.
1859
1860 2017-09-25  Sam Weinig  <sam@webkit.org>
1861
1862         [WebIDL] Factor out IsExceptionOr check from toJS/toJSNewlyCreated signature
1863         https://bugs.webkit.org/show_bug.cgi?id=177457
1864
1865         Reviewed by Youenn Fablet.
1866
1867         Add new type, IsExceptionOr, that factors out the previously repeated logic of determining
1868         if a type is an ExceptionOr template type.
1869
1870         * bindings/js/JSDOMConvertBase.h:
1871         (WebCore::toJS):
1872         (WebCore::toJSNewlyCreated):
1873
1874 2017-09-25  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1875
1876         [Curl] Refactor and improve methods in the CurlHandle
1877         https://bugs.webkit.org/show_bug.cgi?id=177373
1878
1879         Reviewed by Alex Christensen.
1880
1881         * platform/network/curl/CurlContext.cpp:
1882         (WebCore::CurlShareHandle::~CurlShareHandle):
1883         (WebCore::CurlMultiHandle::~CurlMultiHandle):
1884         (WebCore::CurlHandle::~CurlHandle):
1885         (WebCore::CurlHandle::initialize):
1886         (WebCore::CurlHandle::pause):
1887         (WebCore::CurlHandle::setUrl):
1888         (WebCore::CurlHandle::appendRequestHeaders):
1889         (WebCore::CurlHandle::appendRequestHeader):
1890         (WebCore::CurlHandle::removeRequestHeader):
1891         (WebCore::CurlHandle::enableRequestHeaders):
1892         (WebCore::CurlHandle::getContentLength):
1893         (WebCore::CurlHandle::getNetworkLoadMetrics):
1894         (WebCore::CurlHandle::errorDescription const): Deleted.
1895         (WebCore::CurlHandle::clearUrl): Deleted.
1896         (WebCore::CurlHandle::getContentLenghtDownload): Deleted.
1897         (WebCore::CurlHandle::getTimes): Deleted.
1898         * platform/network/curl/CurlContext.h:
1899         (WebCore::CurlHandle::privateData const): Deleted.
1900         (WebCore::CurlHandle::setPrivateData): Deleted.
1901         (WebCore::CurlHandle::url const): Deleted.
1902         * platform/network/curl/CurlDownload.cpp:
1903         (WebCore::CurlDownload::setupRequest):
1904         * platform/network/curl/CurlSSLVerifier.cpp:
1905         (WebCore::CurlSSLVerifier::certVerifyCallback):
1906         * platform/network/curl/ResourceHandleCurlDelegate.cpp:
1907         (WebCore::ResourceHandleCurlDelegate::setupRequest):
1908         (WebCore::ResourceHandleCurlDelegate::setupPUT):
1909         (WebCore::ResourceHandleCurlDelegate::getNetworkLoadMetrics):
1910         (WebCore::ResourceHandleCurlDelegate::didReceiveHeader):
1911
1912 2017-09-25  Youenn Fablet  <youenn@apple.com>
1913
1914         WebRTC video does not resume receiving when switching back to Safari 11 on iOS
1915         https://bugs.webkit.org/show_bug.cgi?id=175472
1916         <rdar://problem/33860863>
1917
1918         Reviewed by Darin Adler.
1919
1920         Test: webrtc/video-interruption.html and manual testing.
1921
1922         Using new SetActive method from libwebrtc encoder/decoder to enable/disable them based on interuptions.
1923         For that purpose, LibWebRTCProvider is now storing the peer connection factory and keeping track of the encoder/decoder factories.
1924         LibWebRTCProvider is then notified by WebPage when backgrounded/foregrounded.
1925
1926         * WebCore.xcodeproj/project.pbxproj:
1927         * platform/mediastream/libwebrtc/LibWebRTCProvider.cpp:
1928         (WebCore::staticFactoryAndThreads):
1929         (WebCore::initializePeerConnectionFactoryAndThreads):
1930         (WebCore::LibWebRTCProvider::factory):
1931         (WebCore::LibWebRTCProvider::setPeerConnectionFactory):
1932         (WebCore::LibWebRTCProvider::createPeerConnection):
1933         (WebCore::LibWebRTCProvider::setActive):
1934         (WebCore::LibWebRTCProvider::webRTCAvailable):
1935         (WebCore::LibWebRTCProvider::mayResumePlayback): Deleted.
1936         (WebCore::LibWebRTCProvider::suspendPlayback): Deleted.
1937         * platform/mediastream/libwebrtc/LibWebRTCProvider.h:
1938         * platform/mediastream/libwebrtc/VideoToolBoxDecoderFactory.cpp: Copied from Source/WebCore/platform/mediastream/libwebrtc/VideoToolBoxEncoderFactory.cpp.
1939         (WebCore::VideoToolboxVideoDecoderFactory::setActive):
1940         (WebCore::VideoToolboxVideoDecoderFactory::CreateVideoDecoder):
1941         (WebCore::VideoToolboxVideoDecoderFactory::DestroyVideoDecoder):
1942         * platform/mediastream/libwebrtc/VideoToolBoxDecoderFactory.h: Copied from Source/WebCore/platform/mediastream/libwebrtc/VideoToolBoxEncoderFactory.h.
1943         * platform/mediastream/libwebrtc/VideoToolBoxEncoderFactory.cpp:
1944         (WebCore::VideoToolboxVideoEncoderFactory::setActive):
1945         (WebCore::VideoToolboxVideoEncoderFactory::CreateSupportedVideoEncoder):
1946         (WebCore::VideoToolboxVideoEncoderFactory::DestroyVideoEncoder):
1947         * platform/mediastream/libwebrtc/VideoToolBoxEncoderFactory.h:
1948         * testing/Internals.cpp:
1949         (WebCore::Internals::resetToConsistentState):
1950         * testing/MockLibWebRTCPeerConnection.cpp:
1951         (WebCore::useRealRTCPeerConnectionFactory):
1952         (WebCore::useMockRTCPeerConnectionFactory):
1953         * testing/MockLibWebRTCPeerConnection.h:
1954
1955 2017-09-25  Sam Weinig  <sam@webkit.org>
1956
1957         Remove unused EditorClient functions
1958         https://bugs.webkit.org/show_bug.cgi?id=177463
1959
1960         Reviewed by Alex Christensen.
1961
1962         Remove unused EditorClient functions.
1963
1964         * loader/EmptyClients.cpp:
1965         * page/EditorClient.h:
1966
1967 2017-09-25  Per Arne Vollan  <pvollan@apple.com>
1968
1969         Crash in WebCore::TreeScope::documentScope
1970         https://bugs.webkit.org/show_bug.cgi?id=176159
1971
1972         Reviewed by Ryosuke Niwa.
1973
1974         When all children are replaced with a new node in ContainerNode::replaceAllChildren,
1975         the treescope of the new node should be set after the call to willRemoveChildren,
1976         since this call can fire events, and execute JS code, which might change the treescope
1977         of the container node.
1978
1979         Test: fast/dom/crash-moving-subtree-between-documents.html
1980
1981         * dom/ContainerNode.cpp:
1982         (WebCore::ContainerNode::replaceAllChildren):
1983
1984 2017-09-25  Alex Christensen  <achristensen@webkit.org>
1985
1986         Make Attribute an enum class
1987         https://bugs.webkit.org/show_bug.cgi?id=177414
1988
1989         Reviewed by Yusuke Suzuki.
1990
1991         No change in behavior.
1992
1993         * bindings/js/JSDOMGlobalObject.cpp:
1994         (WebCore::JSDOMGlobalObject::addBuiltinGlobals):
1995         * bindings/js/JSDOMMapLike.cpp:
1996         (WebCore::initializeBackingMap):
1997         (WebCore::createBackingMap):
1998         * bindings/js/JSDOMWindowBase.cpp:
1999         (WebCore::JSDOMWindowBase::finishCreation):
2000         * bindings/js/JSDOMWindowCustom.cpp:
2001         (WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess):
2002         (WebCore::JSDOMWindow::getOwnPropertySlot):
2003         (WebCore::JSDOMWindow::getOwnPropertySlotByIndex):
2004         * bindings/js/JSDOMWindowProperties.cpp:
2005         (WebCore::jsDOMWindowPropertiesGetOwnPropertySlotNamedItemGetter):
2006         * bindings/js/JSImageDataCustom.cpp:
2007         (WebCore::toJSNewlyCreated):
2008         * bindings/js/JSLocationCustom.cpp:
2009         (WebCore::getOwnPropertySlotCommon):
2010         * bindings/js/JSPluginElementFunctions.cpp:
2011         (WebCore::pluginElementCustomGetOwnPropertySlot):
2012         * bindings/scripts/CodeGeneratorJS.pm:
2013         (GenerateIndexedGetter):
2014         (GenerateNamedGetter):
2015         (GetJSCAttributesForAttribute):
2016         (GeneratePropertiesHashTable):
2017         (addUnscopableProperties):
2018         (GenerateImplementation):
2019         (GenerateCallbackImplementationContent):
2020         (GenerateHashTableValueArray):
2021         (GenerateConstructorHelperMethods):
2022         (ComputeFunctionSpecial):
2023         * bindings/scripts/test/JS/JSInterfaceName.cpp:
2024         (WebCore::JSInterfaceNameConstructor::initializeProperties):
2025         * bindings/scripts/test/JS/JSMapLike.cpp:
2026         (WebCore::JSMapLikeConstructor::initializeProperties):
2027         (WebCore::JSMapLikePrototype::finishCreation):
2028         * bindings/scripts/test/JS/JSReadOnlyMapLike.cpp:
2029         (WebCore::JSReadOnlyMapLikeConstructor::initializeProperties):
2030         (WebCore::JSReadOnlyMapLikePrototype::finishCreation):
2031         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
2032         (WebCore::JSTestActiveDOMObjectConstructor::initializeProperties):
2033         * bindings/scripts/test/JS/JSTestCEReactions.cpp:
2034         (WebCore::JSTestCEReactionsConstructor::initializeProperties):
2035         * bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
2036         (WebCore::JSTestCEReactionsStringifierConstructor::initializeProperties):
2037         * bindings/scripts/test/JS/JSTestCallTracer.cpp:
2038         (WebCore::JSTestCallTracerConstructor::initializeProperties):
2039         * bindings/scripts/test/JS/JSTestCallbackInterface.cpp:
2040         (WebCore::JSTestCallbackInterfaceConstructor::initializeProperties):
2041         * bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp:
2042         (WebCore::JSTestClassWithJSBuiltinConstructorConstructor::initializeProperties):
2043         * bindings/scripts/test/JS/JSTestCustomConstructorWithNoInterfaceObject.cpp:
2044         (WebCore::JSTestCustomConstructorWithNoInterfaceObjectConstructor::initializeProperties):
2045         (WebCore::jsTestCustomConstructorWithNoInterfaceObjectConstructor):
2046         * bindings/scripts/test/JS/JSTestDOMJIT.cpp:
2047         (WebCore::JSTestDOMJITConstructor::initializeProperties):
2048         * bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
2049         (WebCore::JSTestEnabledBySettingConstructor::initializeProperties):
2050         (WebCore::JSTestEnabledBySetting::finishCreation):
2051         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
2052         (WebCore::JSTestEventConstructorConstructor::initializeProperties):
2053         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
2054         (WebCore::JSTestEventTargetConstructor::initializeProperties):
2055         (WebCore::JSTestEventTarget::getOwnPropertySlot):
2056         (WebCore::JSTestEventTarget::getOwnPropertySlotByIndex):
2057         * bindings/scripts/test/JS/JSTestException.cpp:
2058         (WebCore::JSTestExceptionConstructor::initializeProperties):
2059         * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
2060         (WebCore::JSTestGenerateIsReachableConstructor::initializeProperties):
2061         * bindings/scripts/test/JS/JSTestGlobalObject.cpp:
2062         (WebCore::JSTestGlobalObjectConstructor::initializeProperties):
2063         (WebCore::JSTestGlobalObject::finishCreation):
2064         * bindings/scripts/test/JS/JSTestIndexedSetterNoIdentifier.cpp:
2065         (WebCore::JSTestIndexedSetterNoIdentifierConstructor::initializeProperties):
2066         (WebCore::JSTestIndexedSetterNoIdentifier::getOwnPropertySlot):
2067         (WebCore::JSTestIndexedSetterNoIdentifier::getOwnPropertySlotByIndex):
2068         * bindings/scripts/test/JS/JSTestIndexedSetterThrowingException.cpp:
2069         (WebCore::JSTestIndexedSetterThrowingExceptionConstructor::initializeProperties):
2070         (WebCore::JSTestIndexedSetterThrowingException::getOwnPropertySlot):
2071         (WebCore::JSTestIndexedSetterThrowingException::getOwnPropertySlotByIndex):
2072         * bindings/scripts/test/JS/JSTestIndexedSetterWithIdentifier.cpp:
2073         (WebCore::JSTestIndexedSetterWithIdentifierConstructor::initializeProperties):
2074         (WebCore::JSTestIndexedSetterWithIdentifier::getOwnPropertySlot):
2075         (WebCore::JSTestIndexedSetterWithIdentifier::getOwnPropertySlotByIndex):
2076         * bindings/scripts/test/JS/JSTestInterface.cpp:
2077         (WebCore::JSTestInterfaceConstructor::initializeProperties):
2078         * bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:
2079         (WebCore::JSTestInterfaceLeadingUnderscoreConstructor::initializeProperties):
2080         * bindings/scripts/test/JS/JSTestIterable.cpp:
2081         (WebCore::JSTestIterableConstructor::initializeProperties):
2082         (WebCore::JSTestIterablePrototype::finishCreation):
2083         * bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:
2084         (WebCore::JSTestJSBuiltinConstructorConstructor::initializeProperties):
2085         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
2086         (WebCore::JSTestMediaQueryListListenerConstructor::initializeProperties):
2087         * bindings/scripts/test/JS/JSTestNamedAndIndexedSetterNoIdentifier.cpp:
2088         (WebCore::JSTestNamedAndIndexedSetterNoIdentifierConstructor::initializeProperties):
2089         (WebCore::JSTestNamedAndIndexedSetterNoIdentifier::getOwnPropertySlot):
2090         (WebCore::JSTestNamedAndIndexedSetterNoIdentifier::getOwnPropertySlotByIndex):
2091         * bindings/scripts/test/JS/JSTestNamedAndIndexedSetterThrowingException.cpp:
2092         (WebCore::JSTestNamedAndIndexedSetterThrowingExceptionConstructor::initializeProperties):
2093         (WebCore::JSTestNamedAndIndexedSetterThrowingException::getOwnPropertySlot):
2094         (WebCore::JSTestNamedAndIndexedSetterThrowingException::getOwnPropertySlotByIndex):
2095         * bindings/scripts/test/JS/JSTestNamedAndIndexedSetterWithIdentifier.cpp:
2096         (WebCore::JSTestNamedAndIndexedSetterWithIdentifierConstructor::initializeProperties):
2097         (WebCore::JSTestNamedAndIndexedSetterWithIdentifier::getOwnPropertySlot):
2098         (WebCore::JSTestNamedAndIndexedSetterWithIdentifier::getOwnPropertySlotByIndex):
2099         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
2100         (WebCore::JSTestNamedConstructorConstructor::initializeProperties):
2101         (WebCore::JSTestNamedConstructorNamedConstructor::initializeProperties):
2102         * bindings/scripts/test/JS/JSTestNamedDeleterNoIdentifier.cpp:
2103         (WebCore::JSTestNamedDeleterNoIdentifierConstructor::initializeProperties):
2104         (WebCore::JSTestNamedDeleterNoIdentifier::getOwnPropertySlot):
2105         (WebCore::JSTestNamedDeleterNoIdentifier::getOwnPropertySlotByIndex):
2106         * bindings/scripts/test/JS/JSTestNamedDeleterThrowingException.cpp:
2107         (WebCore::JSTestNamedDeleterThrowingExceptionConstructor::initializeProperties):
2108         (WebCore::JSTestNamedDeleterThrowingException::getOwnPropertySlot):
2109         (WebCore::JSTestNamedDeleterThrowingException::getOwnPropertySlotByIndex):
2110         * bindings/scripts/test/JS/JSTestNamedDeleterWithIdentifier.cpp:
2111         (WebCore::JSTestNamedDeleterWithIdentifierConstructor::initializeProperties):
2112         (WebCore::JSTestNamedDeleterWithIdentifier::getOwnPropertySlot):
2113         (WebCore::JSTestNamedDeleterWithIdentifier::getOwnPropertySlotByIndex):
2114         * bindings/scripts/test/JS/JSTestNamedDeleterWithIndexedGetter.cpp:
2115         (WebCore::JSTestNamedDeleterWithIndexedGetterConstructor::initializeProperties):
2116         (WebCore::JSTestNamedDeleterWithIndexedGetter::getOwnPropertySlot):
2117         (WebCore::JSTestNamedDeleterWithIndexedGetter::getOwnPropertySlotByIndex):
2118         * bindings/scripts/test/JS/JSTestNamedGetterCallWith.cpp:
2119         (WebCore::JSTestNamedGetterCallWithConstructor::initializeProperties):
2120         (WebCore::JSTestNamedGetterCallWith::getOwnPropertySlot):
2121         (WebCore::JSTestNamedGetterCallWith::getOwnPropertySlotByIndex):
2122         * bindings/scripts/test/JS/JSTestNamedGetterNoIdentifier.cpp:
2123         (WebCore::JSTestNamedGetterNoIdentifierConstructor::initializeProperties):
2124         (WebCore::JSTestNamedGetterNoIdentifier::getOwnPropertySlot):
2125         (WebCore::JSTestNamedGetterNoIdentifier::getOwnPropertySlotByIndex):
2126         * bindings/scripts/test/JS/JSTestNamedGetterWithIdentifier.cpp:
2127         (WebCore::JSTestNamedGetterWithIdentifierConstructor::initializeProperties):
2128         (WebCore::JSTestNamedGetterWithIdentifier::getOwnPropertySlot):
2129         (WebCore::JSTestNamedGetterWithIdentifier::getOwnPropertySlotByIndex):
2130         * bindings/scripts/test/JS/JSTestNamedSetterNoIdentifier.cpp:
2131         (WebCore::JSTestNamedSetterNoIdentifierConstructor::initializeProperties):
2132         (WebCore::JSTestNamedSetterNoIdentifier::getOwnPropertySlot):
2133         (WebCore::JSTestNamedSetterNoIdentifier::getOwnPropertySlotByIndex):
2134         * bindings/scripts/test/JS/JSTestNamedSetterThrowingException.cpp:
2135         (WebCore::JSTestNamedSetterThrowingExceptionConstructor::initializeProperties):
2136         (WebCore::JSTestNamedSetterThrowingException::getOwnPropertySlot):
2137         (WebCore::JSTestNamedSetterThrowingException::getOwnPropertySlotByIndex):
2138         * bindings/scripts/test/JS/JSTestNamedSetterWithIdentifier.cpp:
2139         (WebCore::JSTestNamedSetterWithIdentifierConstructor::initializeProperties):
2140         (WebCore::JSTestNamedSetterWithIdentifier::getOwnPropertySlot):
2141         (WebCore::JSTestNamedSetterWithIdentifier::getOwnPropertySlotByIndex):
2142         * bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetter.cpp:
2143         (WebCore::JSTestNamedSetterWithIndexedGetterConstructor::initializeProperties):
2144         (WebCore::JSTestNamedSetterWithIndexedGetter::getOwnPropertySlot):
2145         (WebCore::JSTestNamedSetterWithIndexedGetter::getOwnPropertySlotByIndex):
2146         * bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetterAndSetter.cpp:
2147         (WebCore::JSTestNamedSetterWithIndexedGetterAndSetterConstructor::initializeProperties):
2148         (WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::getOwnPropertySlot):
2149         (WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::getOwnPropertySlotByIndex):
2150         * bindings/scripts/test/JS/JSTestNamedSetterWithOverrideBuiltins.cpp:
2151         (WebCore::JSTestNamedSetterWithOverrideBuiltinsConstructor::initializeProperties):
2152         (WebCore::JSTestNamedSetterWithOverrideBuiltins::getOwnPropertySlot):
2153         (WebCore::JSTestNamedSetterWithOverrideBuiltins::getOwnPropertySlotByIndex):
2154         * bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.cpp:
2155         (WebCore::JSTestNamedSetterWithUnforgablePropertiesConstructor::initializeProperties):
2156         (WebCore::JSTestNamedSetterWithUnforgableProperties::getOwnPropertySlot):
2157         (WebCore::JSTestNamedSetterWithUnforgableProperties::getOwnPropertySlotByIndex):
2158         * bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.cpp:
2159         (WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltinsConstructor::initializeProperties):
2160         (WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::getOwnPropertySlot):
2161         (WebCore::JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins::getOwnPropertySlotByIndex):
2162         * bindings/scripts/test/JS/JSTestNode.cpp:
2163         (WebCore::JSTestNodeConstructor::initializeProperties):
2164         (WebCore::JSTestNodePrototype::finishCreation):
2165         * bindings/scripts/test/JS/JSTestObj.cpp:
2166         (WebCore::JSTestObjConstructor::initializeProperties):
2167         (WebCore::JSTestObjPrototype::finishCreation):
2168         (WebCore::JSTestObj::getOwnPropertySlot):
2169         (WebCore::JSTestObj::getOwnPropertySlotByIndex):
2170         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
2171         (WebCore::JSTestOverloadedConstructorsConstructor::initializeProperties):
2172         * bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:
2173         (WebCore::JSTestOverloadedConstructorsWithSequenceConstructor::initializeProperties):
2174         * bindings/scripts/test/JS/JSTestOverrideBuiltins.cpp:
2175         (WebCore::JSTestOverrideBuiltinsConstructor::initializeProperties):
2176         (WebCore::JSTestOverrideBuiltins::getOwnPropertySlot):
2177         (WebCore::JSTestOverrideBuiltins::getOwnPropertySlotByIndex):
2178         * bindings/scripts/test/JS/JSTestPluginInterface.cpp:
2179         (WebCore::JSTestPluginInterfaceConstructor::initializeProperties):
2180         * bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:
2181         (WebCore::JSTestPromiseRejectionEventConstructor::initializeProperties):
2182         * bindings/scripts/test/JS/JSTestSerialization.cpp:
2183         (WebCore::JSTestSerializationConstructor::initializeProperties):
2184         * bindings/scripts/test/JS/JSTestSerializationIndirectInheritance.cpp:
2185         (WebCore::JSTestSerializationIndirectInheritanceConstructor::initializeProperties):
2186         * bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
2187         (WebCore::JSTestSerializationInheritConstructor::initializeProperties):
2188         * bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
2189         (WebCore::JSTestSerializationInheritFinalConstructor::initializeProperties):
2190         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
2191         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::initializeProperties):
2192         * bindings/scripts/test/JS/JSTestStringifier.cpp:
2193         (WebCore::JSTestStringifierConstructor::initializeProperties):
2194         * bindings/scripts/test/JS/JSTestStringifierAnonymousOperation.cpp:
2195         (WebCore::JSTestStringifierAnonymousOperationConstructor::initializeProperties):
2196         * bindings/scripts/test/JS/JSTestStringifierNamedOperation.cpp:
2197         (WebCore::JSTestStringifierNamedOperationConstructor::initializeProperties):
2198         * bindings/scripts/test/JS/JSTestStringifierOperationImplementedAs.cpp:
2199         (WebCore::JSTestStringifierOperationImplementedAsConstructor::initializeProperties):
2200         * bindings/scripts/test/JS/JSTestStringifierOperationNamedToString.cpp:
2201         (WebCore::JSTestStringifierOperationNamedToStringConstructor::initializeProperties):
2202         * bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:
2203         (WebCore::JSTestStringifierReadOnlyAttributeConstructor::initializeProperties):
2204         * bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
2205         (WebCore::JSTestStringifierReadWriteAttributeConstructor::initializeProperties):
2206         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
2207         (WebCore::JSTestTypedefsConstructor::initializeProperties):
2208         * bridge/runtime_array.cpp:
2209         (JSC::RuntimeArray::getOwnPropertySlot):
2210         (JSC::RuntimeArray::getOwnPropertySlotByIndex):
2211         * bridge/runtime_method.cpp:
2212         (JSC::RuntimeMethod::getOwnPropertySlot):
2213         * bridge/runtime_object.cpp:
2214         (JSC::Bindings::RuntimeObject::getOwnPropertySlot):
2215         * html/HTMLMediaElement.cpp:
2216         (WebCore::HTMLMediaElement::didAddUserAgentShadowRoot):
2217
2218 2017-09-25  Alex Christensen  <achristensen@webkit.org>
2219
2220         Stop using PolicyCallback
2221         https://bugs.webkit.org/show_bug.cgi?id=176088
2222
2223         Reviewed by Andy Estes.
2224
2225         This is what lambdas are for. No change in behavior.
2226         Cancelling the callback is now the responsibility of the FrameLoaderClient, to whom we have given the lambda.
2227         That is why there are changes in WebKit and WebKitLegacy where the FrameLoaderClient::cancelPolicyCheck finds the lambda it has stored.
2228
2229         * CMakeLists.txt:
2230         * WebCore.xcodeproj/project.pbxproj:
2231         * loader/DocumentLoader.cpp:
2232         * loader/FrameLoader.cpp:
2233         * loader/FrameLoaderClient.h:
2234         * loader/PolicyCallback.cpp: Removed.
2235         * loader/PolicyCallback.h: Removed.
2236         * loader/PolicyChecker.cpp:
2237         (WebCore::PolicyChecker::checkNavigationPolicy):
2238         (WebCore::PolicyChecker::checkNewWindowPolicy):
2239         (WebCore::PolicyChecker::stopCheck):
2240         (WebCore::PolicyChecker::continueAfterNavigationPolicy): Deleted.
2241         * loader/PolicyChecker.h:
2242         (WebCore::PolicyChecker::setSuggestedFilename): Deleted.
2243
2244 2017-09-25  Youenn Fablet  <youenn@apple.com>
2245
2246         MediaStreamTrack.getSettings should compute its deviceId/groupId like enumerateDevices
2247         https://bugs.webkit.org/show_bug.cgi?id=177433
2248
2249         Reviewed by Jer Noble.
2250
2251         Covered by improved test.
2252
2253         Hash the deviceId returned by getSettings as done by enumerateDevices/getUserMedia.
2254         Do the same thing for groupId.
2255         Make sure mock sources have their deviceId set consistently with mock devices.
2256
2257         * Modules/mediastream/MediaStreamTrack.cpp:
2258         (WebCore::MediaStreamTrack::getSettings const):
2259         * Modules/mediastream/MediaStreamTrack.h:
2260         * Modules/mediastream/MediaStreamTrack.idl:
2261         * platform/mediastream/mac/MockRealtimeAudioSourceMac.h:
2262         * platform/mediastream/mac/MockRealtimeAudioSourceMac.mm:
2263         (WebCore::MockRealtimeAudioSource::create):
2264         (WebCore::MockRealtimeAudioSourceMac::MockRealtimeAudioSourceMac):
2265         * platform/mediastream/mac/MockRealtimeVideoSourceMac.h:
2266         * platform/mediastream/mac/MockRealtimeVideoSourceMac.mm:
2267         (WebCore::MockRealtimeVideoSource::create):
2268         (WebCore::MockRealtimeVideoSourceMac::MockRealtimeVideoSourceMac):
2269         * platform/mock/MockRealtimeAudioSource.cpp:
2270         (WebCore::MockRealtimeAudioSource::create):
2271         (WebCore::MockRealtimeAudioSource::createMuted):
2272         (WebCore::MockRealtimeAudioSource::MockRealtimeAudioSource):
2273         * platform/mock/MockRealtimeAudioSource.h:
2274         * platform/mock/MockRealtimeVideoSource.cpp:
2275         (WebCore::MockRealtimeVideoSource::create):
2276         (WebCore::MockRealtimeVideoSource::createMuted):
2277         (WebCore::MockRealtimeVideoSource::MockRealtimeVideoSource):
2278         * platform/mock/MockRealtimeVideoSource.h:
2279
2280 2017-09-25  Chris Dumez  <cdumez@apple.com>
2281
2282         Make StoredCredentials an enum class and rename its header
2283         https://bugs.webkit.org/show_bug.cgi?id=177455
2284
2285         Reviewed by Youenn Fablet.
2286
2287         Make StoredCredentials an enum class and rename its header for clarity. This was error-prone because 0 meant
2288         "allow" and and 1 meant "do not allow". It was trivial to convert it to a boolean by mistake and get the
2289         opposite behavior.
2290
2291         * WebCore.xcodeproj/project.pbxproj:
2292         * css/StyleRuleImport.cpp:
2293         (WebCore::StyleRuleImport::requestStyleSheet):
2294         * loader/CrossOriginAccessControl.cpp:
2295         (WebCore::updateRequestForAccessControl):
2296         (WebCore::createAccessControlPreflightRequest):
2297         (WebCore::passesAccessControlCheck):
2298         (WebCore::validatePreflightResponse):
2299         * loader/CrossOriginAccessControl.h:
2300         * loader/CrossOriginPreflightChecker.cpp:
2301         (WebCore::CrossOriginPreflightChecker::validatePreflightResponse):
2302         (WebCore::CrossOriginPreflightChecker::doPreflight):
2303         * loader/CrossOriginPreflightResultCache.cpp:
2304         (WebCore::CrossOriginPreflightResultCacheItem::allowsRequest const):
2305         (WebCore::CrossOriginPreflightResultCache::canSkipPreflight):
2306         * loader/CrossOriginPreflightResultCache.h:
2307         (WebCore::CrossOriginPreflightResultCacheItem::CrossOriginPreflightResultCacheItem):
2308         * loader/DocumentLoader.cpp:
2309         (WebCore::DocumentLoader::startLoadingMainResource):
2310         * loader/DocumentThreadableLoader.cpp:
2311         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
2312         (WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequest):
2313         (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
2314         (WebCore::DocumentThreadableLoader::redirectReceived):
2315         (WebCore::DocumentThreadableLoader::preflightSuccess):
2316         (WebCore::DocumentThreadableLoader::loadRequest):
2317         * loader/FrameLoader.cpp:
2318         (WebCore::FrameLoader::loadResourceSynchronously):
2319         * loader/FrameLoader.h:
2320         * loader/LoaderStrategy.h:
2321         * loader/MediaResourceLoader.cpp:
2322         (WebCore::MediaResourceLoader::requestResource):
2323         * loader/NetscapePlugInStreamLoader.cpp:
2324         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
2325         * loader/ResourceLoader.cpp:
2326         (WebCore::ResourceLoader::shouldUseCredentialStorage):
2327         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
2328         * loader/ResourceLoaderOptions.h:
2329         (WebCore::ResourceLoaderOptions::ResourceLoaderOptions):
2330         * loader/SubresourceLoader.cpp:
2331         (WebCore::SubresourceLoader::checkResponseCrossOriginAccessControl):
2332         (WebCore::SubresourceLoader::checkRedirectionCrossOriginAccessControl):
2333         * loader/ThreadableLoader.cpp:
2334         (WebCore::ThreadableLoaderOptions::isolatedCopy const):
2335         * loader/cache/CachedResource.cpp:
2336         (WebCore::CachedResource::loadFrom):
2337         * loader/cache/CachedResourceLoader.cpp:
2338         (WebCore::CachedResourceLoader::defaultCachedResourceOptions):
2339         * loader/cache/CachedResourceRequest.cpp:
2340         (WebCore::CachedResourceRequest::setAsPotentiallyCrossOrigin):
2341         (WebCore::CachedResourceRequest::updateForAccessControl):
2342         * loader/icon/IconLoader.cpp:
2343         (WebCore::IconLoader::startLoading):
2344         * platform/graphics/avfoundation/cf/WebCoreAVCFResourceLoader.cpp:
2345         (WebCore::WebCoreAVCFResourceLoader::startLoading):
2346         * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
2347         (WebCore::WebCoreAVFResourceLoader::startLoading):
2348         * platform/network/BlobRegistryImpl.cpp:
2349         (WebCore::loadBlobResourceSynchronously):
2350         * platform/network/ResourceHandle.cpp:
2351         (WebCore::ResourceHandle::loadResourceSynchronously):
2352         * platform/network/ResourceHandle.h:
2353         * platform/network/StoredCredentialsPolicy.h: Renamed from Source/WebCore/platform/network/ResourceHandleTypes.h.
2354         * platform/network/cf/ResourceHandleCFNet.cpp:
2355         (WebCore::ResourceHandle::platformLoadResourceSynchronously):
2356         * platform/network/curl/ResourceHandleCurl.cpp:
2357         (WebCore::ResourceHandle::platformLoadResourceSynchronously):
2358         * platform/network/mac/ResourceHandleMac.mm:
2359         (WebCore::ResourceHandle::platformLoadResourceSynchronously):
2360         * platform/network/soup/ResourceHandleSoup.cpp:
2361         (WebCore::ResourceHandle::platformLoadResourceSynchronously):
2362         * style/StylePendingResources.cpp:
2363         (WebCore::Style::loadPendingImage):
2364         * xml/XSLTProcessorLibxslt.cpp:
2365         (WebCore::docLoaderFunc):
2366         * xml/parser/XMLDocumentParserLibxml2.cpp:
2367         (WebCore::openFunc):
2368
2369 2017-09-25  Sam Weinig  <sam@webkit.org>
2370
2371         Remove unnecessary userVisibleString EditorClient function
2372         https://bugs.webkit.org/show_bug.cgi?id=177456
2373
2374         Reviewed by Dan Bernstein.
2375
2376         The implementation of userVisibleString has been in WebCore for sometime (in WebCoreNSURLExtras)
2377         so there is no need to call through the EditorClient, just for it to call back to WebCore.
2378
2379         * editing/Editor.h:
2380
2381             Keep userVisibleString helper function but make it static, as it no longer needs
2382             any state. It is useful to have this helper, so non-ObjC code in Editor can get a
2383             userVisibleString.
2384
2385         * editing/cocoa/EditorCocoa.mm:
2386         (WebCore::Editor::userVisibleString):
2387
2388             Call through to the WebCoreNSURLExtras implementation.
2389
2390         * editing/mac/EditorMac.mm:
2391         (WebCore::Editor::plainTextFromPasteboard):
2392         (WebCore::Editor::writeImageToPasteboard):
2393         (WebCore::Editor::userVisibleString): Deleted.
2394         * editing/mac/WebContentReaderMac.mm:
2395         (WebCore::WebContentReader::readFilenames):
2396
2397             Replace client calls with direct calls.
2398
2399         * loader/EmptyClients.cpp:
2400         * page/EditorClient.h:
2401
2402             Remove client function.
2403
2404         * testing/Internals.mm:
2405         (WebCore::Internals::userVisibleString):
2406
2407             Replace client call with direct call.
2408
2409 2017-09-25  Timothy Horton  <timothy_horton@apple.com>
2410
2411         Fix the build with <attachment> disabled
2412
2413         * editing/mac/WebContentReaderMac.mm:
2414
2415 2017-09-25  Per Arne Vollan  <pvollan@apple.com>
2416
2417         Unreviewed Windows build fix.
2418
2419         * platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.cpp:
2420         (WebCore::InbandTextTrackPrivateAVCF::readNativeSampleBuffer):
2421
2422 2017-09-25  Commit Queue  <commit-queue@webkit.org>
2423
2424         Unreviewed, rolling out r222455.
2425         https://bugs.webkit.org/show_bug.cgi?id=177460
2426
2427         broke iOS build (Requested by alexchristensen on #webkit).
2428
2429         Reverted changeset:
2430
2431         "Add WKContentRuleList notify action type"
2432         https://bugs.webkit.org/show_bug.cgi?id=177013
2433         http://trac.webkit.org/changeset/222455
2434
2435 2017-09-25  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2436
2437         Building release with -DLOG_DISABLED=0 fails
2438         https://bugs.webkit.org/show_bug.cgi?id=177441
2439
2440         Reviewed by Michael Catanzaro.
2441
2442         No new tests, it is a build fix.
2443
2444         * Modules/indexeddb/IDBKeyPath.cpp:
2445         * Modules/indexeddb/IDBKeyPath.h:
2446
2447 2017-09-25  Brent Fulgham  <bfulgham@apple.com>
2448
2449         Switch back to partitioning (rather than blocking) prevalent origins without interaction
2450         https://bugs.webkit.org/show_bug.cgi?id=177452
2451         <rdar://problem/34632618>
2452
2453         Reviewed by Chris Dumez.
2454
2455         Temporarily revert to "partition-only" behavior, due to site compatibility issues with
2456         full blocking.
2457
2458         * platform/network/cf/NetworkStorageSessionCFNet.cpp:
2459         (WebCore::NetworkStorageSession::setPrevalentDomainsToPartitionOrBlockCookies):
2460
2461 2017-09-25  Alex Christensen  <achristensen@webkit.org>
2462
2463         Separate form submission from PolicyChecker infrastructure
2464         https://bugs.webkit.org/show_bug.cgi?id=177396
2465
2466         Reviewed by Geoffrey Garen.
2467
2468         We used PolicyChecker for WillSubmitForm even though we just need a completion handler
2469         with no parameters.  That is what lambdas and WTF::Functions are for.
2470
2471         No change in behavior.
2472
2473         * loader/EmptyClients.cpp:
2474         (WebCore::EmptyFrameLoaderClient::dispatchWillSubmitForm):
2475         * loader/FrameLoader.cpp:
2476         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
2477         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm): Deleted.
2478         * loader/FrameLoader.h:
2479         * loader/FrameLoaderClient.h:
2480         * loader/PolicyChecker.cpp:
2481         (WebCore::PolicyChecker::continueLoadAfterWillSubmitForm): Deleted.
2482         * loader/PolicyChecker.h:
2483
2484 2017-09-25  Alex Christensen  <achristensen@webkit.org>
2485
2486         Add WKContentRuleList notify action type
2487         https://bugs.webkit.org/show_bug.cgi?id=177013
2488         <rdar://problem/31073936>
2489
2490         Reviewed by Darin Adler.
2491
2492         Covered by new API tests.
2493
2494         * contentextensions/ContentExtensionActions.h:
2495         (WebCore::ContentExtensions::hasStringArgument):
2496         * contentextensions/ContentExtensionCompiler.cpp:
2497         (WebCore::ContentExtensions::resolvePendingDisplayNoneActions):
2498         (WebCore::ContentExtensions::serializeActions):
2499         * contentextensions/ContentExtensionError.cpp:
2500         (WebCore::ContentExtensions::contentExtensionErrorCategory):
2501         * contentextensions/ContentExtensionError.h:
2502         * contentextensions/ContentExtensionParser.cpp:
2503         (WebCore::ContentExtensions::loadAction):
2504         * contentextensions/ContentExtensionRule.cpp:
2505         (WebCore::ContentExtensions::Action::deserialize):
2506         (WebCore::ContentExtensions::Action::deserializeType):
2507         (WebCore::ContentExtensions::Action::serializedLength):
2508         * contentextensions/ContentExtensionRule.h:
2509         (WebCore::ContentExtensions::Action::Action):
2510         * contentextensions/ContentExtensionsBackend.cpp:
2511         (WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForLoad):
2512         (WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForPingLoad):
2513         (WebCore::ContentExtensions::applyBlockedStatusToRequest):
2514         * loader/FrameLoader.cpp:
2515         (WebCore::FrameLoader::loadResourceSynchronously):
2516         * loader/PingLoader.cpp:
2517         (WebCore::processContentExtensionRulesForLoad):
2518         * loader/ResourceLoader.cpp:
2519         (WebCore::ResourceLoader::willSendRequestInternal):
2520         * loader/cache/CachedResourceLoader.cpp:
2521         (WebCore::CachedResourceLoader::requestResource):
2522         * loader/cache/CachedResourceRequest.cpp:
2523         (WebCore::CachedResourceRequest::applyBlockedStatus):
2524         * loader/cache/CachedResourceRequest.h:
2525         * page/ChromeClient.h:
2526
2527 2017-09-25  Sam Weinig  <sam@webkit.org>
2528
2529         [WebIDL] Remove GetterMayThrowException
2530         https://bugs.webkit.org/show_bug.cgi?id=177422
2531
2532         Reviewed by Youenn Fablet.
2533
2534         * bindings/js/JSDOMConvertBase.h:
2535         (WebCore::toJSNewlyCreated):
2536         (WebCore::toJS):
2537
2538             Add overloads of toJS and toJSNewlyCreated that take ThrowScopes and a value that
2539             is not an ExceptionOr (keeping the existing overloads that take an ExceptionOr).
2540             This allows NativeToJSValue to not need to know of a conversion can throw, as the
2541             c++ type system will now make the determination for it.
2542
2543         * bindings/scripts/CodeGeneratorJS.pm:
2544         (GenerateSerializerDefinition):
2545         (NativeToJSValueUsingReferences):
2546         (NativeToJSValueUsingPointers):
2547         (NativeToJSValue):
2548
2549             Always assume an exception can be thrown for attributes now that the converters will
2550             do the right thing based on whether the value is an ExceptionOr or not. Also, remove 
2551             $suppressExceptionCheck and $excludeNullability, they were never being set.
2552
2553         * bindings/scripts/IDLAttributes.json:
2554
2555             Remove GetterMayThrowException from the list of supported extended attributes.
2556
2557         * Modules/indexeddb/IDBRequest.idl:
2558         * Modules/mediasource/SourceBuffer.idl:
2559         * Modules/webdatabase/SQLResultSet.idl:
2560         * bindings/scripts/test/TestObj.idl:
2561         * bindings/scripts/test/TestTypedefs.idl:
2562         * dom/Document.idl:
2563         * html/HTMLInputElement.idl:
2564         * page/DOMWindow.idl:
2565         * page/History.idl:
2566         * svg/SVGLength.idl:
2567         * xml/XMLHttpRequest.idl:
2568         * xml/XPathResult.idl:
2569         
2570             Remove GetterMayThrowException extended attribute from IDL files.
2571
2572         * bindings/scripts/test/JS/JSMapLike.cpp:
2573         * bindings/scripts/test/JS/JSReadOnlyMapLike.cpp:
2574         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
2575         * bindings/scripts/test/JS/JSTestCEReactions.cpp:
2576         * bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
2577         * bindings/scripts/test/JS/JSTestCallTracer.cpp:
2578         * bindings/scripts/test/JS/JSTestDOMJIT.cpp:
2579         * bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
2580         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
2581         * bindings/scripts/test/JS/JSTestException.cpp:
2582         * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
2583         * bindings/scripts/test/JS/JSTestGlobalObject.cpp:
2584         * bindings/scripts/test/JS/JSTestInterface.cpp:
2585         * bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:
2586         * bindings/scripts/test/JS/JSTestNamedSetterWithUnforgableProperties.cpp:
2587         * bindings/scripts/test/JS/JSTestNamedSetterWithUnforgablePropertiesAndOverrideBuiltins.cpp:
2588         * bindings/scripts/test/JS/JSTestNode.cpp:
2589         * bindings/scripts/test/JS/JSTestObj.cpp:
2590         * bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:
2591         * bindings/scripts/test/JS/JSTestSerialization.cpp:
2592         * bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
2593         * bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
2594         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
2595         * bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:
2596         * bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
2597         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
2598
2599             Update test results.
2600
2601 2017-09-25  Timothy Horton  <timothy_horton@apple.com>
2602
2603         Make progress on getting Mac CMake building again
2604         https://bugs.webkit.org/show_bug.cgi?id=177443
2605
2606         Unreviewed, just "fixing" the build.
2607
2608         * PlatformMac.cmake:
2609         Add some missing files and include paths.
2610
2611 2017-09-25  Ms2ger  <Ms2ger@igalia.com>
2612
2613         Update waitSync and the TIMEOUT_IGNORED constant to use signed integers.
2614         https://bugs.webkit.org/show_bug.cgi?id=177239
2615
2616         Reviewed by Žan Doberšek.
2617
2618         This matches the specification.
2619
2620         Test: fast/canvas/webgl/webgl2/constants.html
2621
2622         * html/canvas/WebGL2RenderingContext.cpp:
2623         (WebCore::WebGL2RenderingContext::waitSync):
2624         * html/canvas/WebGL2RenderingContext.h:
2625         * html/canvas/WebGL2RenderingContext.idl:
2626
2627 2017-09-25  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
2628
2629         Align Media Source Extension IDL with spec
2630         https://bugs.webkit.org/show_bug.cgi?id=177369
2631
2632         Reviewed by Sam Weinig.
2633
2634         Align IDL as per specification:
2635          - https://www.w3.org/TR/media-source/
2636
2637         * Modules/mediasource/AudioTrackMediaSource.idl:
2638         * Modules/mediasource/SourceBuffer.idl:
2639         * Modules/mediasource/TextTrackMediaSource.idl:
2640         * Modules/mediasource/VideoTrackMediaSource.idl:
2641
2642 2017-09-25  Manuel Rego Casasnovas  <rego@igalia.com>
2643
2644         [css-grid] Small refactoring adding RenderGrid::contentAlignment()
2645         https://bugs.webkit.org/show_bug.cgi?id=177130
2646
2647         Reviewed by Sergio Villar Senin.
2648
2649         As a follow-up of r221931, this patch does a small refactoring
2650         adding a new method RenderGrid::contentAlignment()
2651         that is used from RenderGrid and GridTrackSizingAlgorithm.
2652
2653         No new tests, no change of behavior.
2654
2655         * rendering/GridTrackSizingAlgorithm.cpp:
2656         (WebCore::GridTrackSizingAlgorithm::stretchAutoTracks):
2657         * rendering/RenderGrid.cpp:
2658         (WebCore::contentAlignmentNormalBehaviorGrid):
2659         (WebCore::RenderGrid::contentAlignment const):
2660         (WebCore::RenderGrid::computeContentPositionAndDistributionOffset const):
2661         (WebCore::RenderGrid::contentAlignmentNormalBehaviorGrid): Deleted.
2662         * rendering/RenderGrid.h:
2663         * rendering/style/RenderStyle.cpp:
2664         (WebCore::resolvedContentAlignment):
2665         (WebCore::RenderStyle::resolvedAlignContent const):
2666         (WebCore::RenderStyle::resolvedJustifyContent const):
2667         * rendering/style/RenderStyle.h:
2668
2669 2017-09-25  Manuel Rego Casasnovas  <rego@igalia.com>
2670
2671         [css-grid] fit-content() tracks shouldn't stretch
2672         https://bugs.webkit.org/show_bug.cgi?id=177300
2673
2674         Reviewed by Sergio Villar Senin.
2675
2676         The spec is pretty clear regarding this
2677         (https://drafts.csswg.org/css-grid/#algo-stretch):
2678           "This step sizes expands tracks that have an auto max track sizing
2679            function by dividing any remaining positive, definite free space
2680            equally amongst them."
2681
2682         The fit-content() tracks don't have an auto max track sizing function,
2683         so they shouldn't be considered in this step of the algorithm.
2684
2685         The patch modifies GridTrackSizingAlgorithm::initializeTrackSizes()
2686         so it doesn't consider fit-content() tracks as auto sized ones
2687         (which are the ones later stretched in the last step of the algorithm).
2688
2689         Test: imported/w3c/web-platform-tests/css/css-grid-1/alignment/grid-fit-content-tracks-dont-stretch-001.html
2690
2691         * rendering/GridTrackSizingAlgorithm.cpp:
2692         (WebCore::GridTrackSizingAlgorithm::initializeTrackSizes):
2693         (WebCore::GridTrackSizingAlgorithm::stretchAutoTracks):
2694         (WebCore::GridTrackSizingAlgorithm::setup):
2695         (WebCore::GridTrackSizingAlgorithm::reset):
2696         * rendering/GridTrackSizingAlgorithm.h:
2697
2698 2017-09-24  Antti Koivisto  <antti@apple.com>
2699
2700         Remove CSS regions related fields from RenderStyle
2701         https://bugs.webkit.org/show_bug.cgi?id=177415
2702
2703         Reviewed by Sam Weinig.
2704
2705         * css/CSSPrimitiveValueMappings.h:
2706         (WebCore::CSSPrimitiveValue::operator RegionFragment const): Deleted.
2707         * css/StyleResolver.cpp:
2708         (WebCore::StyleResolver::adjustRenderStyle):
2709         * rendering/RenderBlock.cpp:
2710         (WebCore::RenderBlock::avoidsFloats const): Deleted.
2711         * rendering/RenderBlock.h:
2712         * rendering/RenderBlockFlow.cpp:
2713         (WebCore::RenderBlockFlow::hasNextPage const):
2714         * rendering/RenderLayer.cpp:
2715         (WebCore::RenderLayer::calculateClipRects const):
2716         * rendering/style/RenderStyle.cpp:
2717         (WebCore::RenderStyle::changeRequiresLayout const):
2718         * rendering/style/RenderStyle.h:
2719         (WebCore::pseudoElementRendererIsNeeded):
2720         (WebCore::RenderStyle::hasFlowInto const): Deleted.
2721         (WebCore::RenderStyle::flowThread const): Deleted.
2722         (WebCore::RenderStyle::hasFlowFrom const): Deleted.
2723         (WebCore::RenderStyle::regionThread const): Deleted.
2724         (WebCore::RenderStyle::regionFragment const): Deleted.
2725         (WebCore::RenderStyle::setFlowThread): Deleted.
2726         (WebCore::RenderStyle::setRegionThread): Deleted.
2727         (WebCore::RenderStyle::setRegionFragment): Deleted.
2728         (WebCore::RenderStyle::initialFlowThread): Deleted.
2729         (WebCore::RenderStyle::initialRegionThread): Deleted.
2730         (WebCore::RenderStyle::initialRegionFragment): Deleted.
2731         * rendering/style/RenderStyleConstants.h:
2732         * rendering/style/StyleRareNonInheritedData.cpp:
2733         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
2734         (WebCore::StyleRareNonInheritedData::operator== const):
2735         * rendering/style/StyleRareNonInheritedData.h:
2736
2737 2017-09-24  Joanmarie Diggs  <jdiggs@igalia.com>
2738
2739         [ATK] Object attributes are missing for ARIA live region roles
2740         https://bugs.webkit.org/show_bug.cgi?id=171174
2741
2742         Reviewed by Chris Fleizach.
2743
2744         Expose the values of aria-live, aria-atomic, and aria-relevant via AtkObject
2745         attributes on live region elements and their descendants. In order to accomplish
2746         exposure on descendants, add AccessibilityObject::ariaLiveRegionAncestor(). Add an
2747         optional argument, excludeIfOff, to AccessibilityObject::isInsideARIALiveRegion()
2748         and AccessibilityObject::supportsARIALiveRegion(). This is needed because we need
2749         to expose live region properties via ATK even in the case where the live region
2750         is disabled/off, but supportsARIALiveRegion() deliberately checks if the live
2751         region is enabled.
2752
2753         Tests: accessibility/aria-liveregion-marquee-default.html
2754                accessibility/aria-liveregions-attributes.html
2755
2756         * accessibility/AccessibilityObject.cpp:
2757         (WebCore::AccessibilityObject::isInsideARIALiveRegion const):
2758         (WebCore::AccessibilityObject::ariaLiveRegionAncestor const):
2759         (WebCore::AccessibilityObject::supportsARIALiveRegion const):
2760         * accessibility/AccessibilityObject.h:
2761         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2762         (webkitAccessibleGetAttributes):
2763
2764 2017-09-23  Youenn Fablet  <youenn@apple.com>
2765
2766         Remove SetterMayThrowException
2767         https://bugs.webkit.org/show_bug.cgi?id=177408
2768
2769         Reviewed by Sam Weinig.
2770
2771         No change of behavior.
2772
2773         Updating IDLs to remove SetterMayThrowException as it is no longer needed.
2774         Updating AttributeSetter to compute the return type using Functor.
2775
2776         * Modules/indexeddb/IDBIndex.idl:
2777         * Modules/indexeddb/IDBObjectStore.idl:
2778         * Modules/mediasource/MediaSource.idl:
2779         * Modules/mediasource/SourceBuffer.idl:
2780         * Modules/mediastream/RTCDataChannel.idl:
2781         * Modules/webaudio/AnalyserNode.idl:
2782         * Modules/webaudio/AudioNode.idl:
2783         * Modules/webaudio/ConvolverNode.idl:
2784         * Modules/webaudio/OscillatorNode.idl:
2785         * Modules/websockets/WebSocket.idl:
2786         * bindings/js/JSDOMAttribute.h:
2787         (WebCore::AttributeSetter::call):
2788         (WebCore::AttributeSetter<ExceptionOr<void>>::call): Deleted.
2789         (WebCore::AttributeSetter<void>::call): Deleted.
2790         * bindings/scripts/CodeGeneratorJS.pm:
2791         (GenerateAttributeSetterBodyDefinition):
2792         * bindings/scripts/IDLAttributes.json:
2793         * bindings/scripts/test/JS/JSTestCEReactions.cpp:
2794         * bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
2795         * bindings/scripts/test/JS/JSTestCallTracer.cpp:
2796         * bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
2797         * bindings/scripts/test/JS/JSTestGlobalObject.cpp:
2798         * bindings/scripts/test/JS/JSTestInterface.cpp:
2799         * bindings/scripts/test/JS/JSTestNode.cpp:
2800         * bindings/scripts/test/JS/JSTestObj.cpp:
2801         * bindings/scripts/test/JS/JSTestSerialization.cpp:
2802         * bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
2803         * bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
2804         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
2805         * bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
2806         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
2807         * bindings/scripts/test/TestObj.idl:
2808         * bindings/scripts/test/TestTypedefs.idl:
2809         * css/CSSRule.idl:
2810         * css/CSSStyleDeclaration.idl:
2811         * css/DeprecatedCSSOMValue.idl:
2812         * css/FontFace.idl:
2813         * css/MediaList.idl:
2814         * dom/Document.idl:
2815         * dom/Element.idl:
2816         * dom/Node.idl:
2817         * dom/ShadowRoot.idl:
2818         * html/DOMURL.idl:
2819         * html/HTMLElement.idl:
2820         * html/HTMLInputElement.idl:
2821         * html/HTMLMarqueeElement.idl:
2822         * html/HTMLMediaElement.idl:
2823         * html/HTMLOptionsCollection.idl:
2824         * html/HTMLSelectElement.idl:
2825         * html/HTMLTableElement.idl:
2826         * html/HTMLTextAreaElement.idl:
2827         * html/MediaController.idl:
2828         * html/track/VTTCue.idl:
2829         * html/track/VTTRegion.idl:
2830         * page/History.idl:
2831         * page/Location.idl:
2832         * svg/SVGAltGlyphElement.idl:
2833         * svg/SVGAngle.idl:
2834         * svg/SVGAnimatedBoolean.idl:
2835         * svg/SVGAnimatedEnumeration.idl:
2836         * svg/SVGAnimatedInteger.idl:
2837         * svg/SVGAnimatedNumber.idl:
2838         * svg/SVGAnimatedString.idl:
2839         * svg/SVGLength.idl:
2840         * svg/SVGMatrix.idl:
2841         * svg/SVGNumber.idl:
2842         * svg/SVGPoint.idl:
2843         * svg/SVGPreserveAspectRatio.idl:
2844         * svg/SVGRect.idl:
2845         * svg/SVGViewSpec.idl:
2846         * xml/XMLHttpRequest.idl:
2847
2848 2017-09-23  Said Abou-Hallawa  <sabouhallawa@apple.com>
2849
2850         Images may render partial frames even after loading all the encoded data
2851         https://bugs.webkit.org/show_bug.cgi?id=177406
2852
2853         Reviewed by Simon Fraser.
2854
2855         Because we do not want to block the main thread waiting for the image decoding
2856         thread to terminate, we let the decoding thread finish its work even it will
2857         be thrown away. If a new decoding thread is created and the SynchronizedFixedQueue
2858         is reopened, the terminating decoding thread might have the chance to process
2859         a new frame request. After it finishes decoding it, it realize that it is
2860         terminating so it will drop the decoded frame to the floor. So the new request
2861         was not processed by the new thread and because it was processed by the
2862         terminating thread, nothing will be reported to the BitmapImage object and
2863         the renderer will not be repainted.
2864
2865         The fix is to create a new SynchronizedFixedQueue every time a decoding 
2866         thread is created. This will guarantee that the terminating thread won't
2867         have access to the new frame request and will shut down after being notified
2868         by the old SynchronizedFixedQueue that it has been closed.
2869
2870         * platform/graphics/ImageFrameCache.cpp:
2871         (WebCore::ImageFrameCache::frameRequestQueue):
2872         (WebCore::ImageFrameCache::startAsyncDecodingQueue):
2873         (WebCore::ImageFrameCache::requestFrameAsyncDecodingAtIndex):
2874         (WebCore::ImageFrameCache::stopAsyncDecodingQueue):
2875         * platform/graphics/ImageFrameCache.h:
2876
2877 2017-09-22  Zalan Bujtas  <zalan@apple.com>
2878
2879         WeakPtrFactory should populate m_ref lazily.
2880         https://bugs.webkit.org/show_bug.cgi?id=177375
2881
2882         Reviewed by Geoffrey Garen.
2883
2884         * Modules/encryptedmedia/CDM.cpp:
2885         (WebCore::CDM::CDM):
2886         * Modules/encryptedmedia/CDM.h:
2887         (WebCore::CDM::createWeakPtr):
2888         * Modules/encryptedmedia/MediaKeySession.cpp:
2889         (WebCore::MediaKeySession::MediaKeySession):
2890         (WebCore::MediaKeySession::generateRequest):
2891         (WebCore::MediaKeySession::load):
2892         (WebCore::MediaKeySession::update):
2893         (WebCore::MediaKeySession::close):
2894         (WebCore::MediaKeySession::remove):
2895         * Modules/encryptedmedia/MediaKeys.cpp:
2896         (WebCore::MediaKeys::MediaKeys):
2897         (WebCore::MediaKeys::createSession):
2898         * Modules/mediastream/MediaDevices.cpp:
2899         (WebCore::MediaDevices::MediaDevices):
2900         * Modules/mediastream/MediaDevices.h:
2901         (WebCore::MediaDevices::createWeakPtr):
2902         * Modules/mediastream/MediaStreamTrack.cpp:
2903         (WebCore::MediaStreamTrack::MediaStreamTrack):
2904         * Modules/mediastream/MediaStreamTrack.h:
2905         (WebCore::MediaStreamTrack::createWeakPtr):
2906         * accessibility/AccessibilityRenderObject.cpp:
2907         (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
2908         * accessibility/AccessibilityRenderObject.h:
2909         (WebCore::AccessibilityRenderObject::createWeakPtr):
2910         * animation/WebAnimation.cpp:
2911         (WebCore::WebAnimation::WebAnimation):
2912         * animation/WebAnimation.h:
2913         * css/FontFace.cpp:
2914         (WebCore::FontFace::FontFace):
2915         (WebCore::FontFace::createWeakPtr):
2916         (WebCore::FontFace::createWeakPtr const): Deleted.
2917         * css/FontFace.h:
2918         * css/StyleSheetContents.h:
2919         * dom/DataTransferItemList.cpp:
2920         (WebCore::DataTransferItemList::DataTransferItemList):
2921         (WebCore::DataTransferItemList::add):
2922         (WebCore::DataTransferItemList::ensureItems const):
2923         (WebCore::DataTransferItemList::didSetStringData):
2924         * dom/Document.cpp:
2925         (WebCore::Document::postTask):
2926         * dom/Document.h:
2927         (WebCore::Document::createWeakPtr):
2928         * html/HTMLMediaElement.cpp:
2929         (WebCore::HTMLMediaElement::HTMLMediaElement):
2930         * html/HTMLMediaElement.h:
2931         (WebCore::HTMLMediaElement::createWeakPtr):
2932         * html/HTMLPictureElement.h:
2933         * html/parser/HTMLResourcePreloader.h:
2934         (WebCore::HTMLResourcePreloader::HTMLResourcePreloader):
2935         (WebCore::HTMLResourcePreloader::createWeakPtr):
2936         * loader/LinkLoader.cpp:
2937         (WebCore::LinkLoader::LinkLoader):
2938         * loader/LinkLoader.h:
2939         (WebCore::LinkLoader::createWeakPtr):
2940         * loader/MediaResourceLoader.cpp:
2941         (WebCore::MediaResourceLoader::MediaResourceLoader):
2942         * loader/MediaResourceLoader.h:
2943         * page/DOMWindow.cpp:
2944         (WebCore::DOMWindow::DOMWindow):
2945         * page/DOMWindow.h:
2946         * platform/GenericTaskQueue.cpp:
2947         (WebCore::TaskDispatcher<Timer>::TaskDispatcher):
2948         (WebCore::TaskDispatcher<Timer>::postTask):
2949         * platform/GenericTaskQueue.h:
2950         (WebCore::GenericTaskQueue::GenericTaskQueue):
2951         (WebCore::GenericTaskQueue::enqueueTask):
2952         * platform/ScrollableArea.h:
2953         (WebCore::ScrollableArea::createWeakPtr):
2954         * platform/Scrollbar.cpp:
2955         (WebCore::Scrollbar::Scrollbar):
2956         * platform/Scrollbar.h:
2957         (WebCore::Scrollbar::createWeakPtr):
2958         * platform/Widget.h:
2959         (WebCore::Widget::createWeakPtr):
2960         * platform/audio/mac/AudioHardwareListenerMac.cpp:
2961         (WebCore::AudioHardwareListenerMac::AudioHardwareListenerMac):
2962         * platform/graphics/FontCascade.cpp:
2963         (WebCore::FontCascade::FontCascade):
2964         * platform/graphics/FontCascade.h:
2965         (WebCore::FontCascade::createWeakPtr const):
2966         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2967         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation):
2968         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
2969         (WebCore::MediaPlayerPrivateAVFoundation::createWeakPtr):
2970         * platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.h:
2971         (WebCore::CDMSessionAVFoundationObjC::createWeakPtr):
2972         * platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.mm:
2973         (WebCore::CDMSessionAVFoundationObjC::CDMSessionAVFoundationObjC):
2974         * platform/graphics/avfoundation/objc/CDMSessionAVStreamSession.mm:
2975         (WebCore::CDMSessionAVStreamSession::CDMSessionAVStreamSession):
2976         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
2977         (WebCore::MediaPlayerPrivateAVFoundationObjC::createWeakPtr):
2978         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2979         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
2980         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
2981         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::createWeakPtr):
2982         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
2983         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
2984         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::sizeWillChangeAtTime):
2985         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
2986         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
2987         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::MediaPlayerPrivateMediaStreamAVFObjC):
2988         * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
2989         * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
2990         (WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC):
2991         (WebCore::SourceBufferPrivateAVFObjC::append):
2992         (WebCore::SourceBufferPrivateAVFObjC::abort):
2993         * platform/graphics/cv/TextureCacheCV.mm:
2994         (WebCore::TextureCacheCV::TextureCacheCV):
2995         (WebCore::TextureCacheCV::textureFromImage):
2996         * platform/graphics/mac/DisplayRefreshMonitorMac.cpp:
2997         (WebCore::DisplayRefreshMonitorMac::DisplayRefreshMonitorMac):
2998         (WebCore::DisplayRefreshMonitorMac::displayLinkFired):
2999         * platform/ios/RemoteCommandListenerIOS.h:
3000         (WebCore::RemoteCommandListenerIOS::createWeakPtr):
3001         * platform/ios/RemoteCommandListenerIOS.mm:
3002         (WebCore::RemoteCommandListenerIOS::RemoteCommandListenerIOS):
3003         * platform/mac/RemoteCommandListenerMac.h:
3004         (WebCore::RemoteCommandListenerMac::createWeakPtr):
3005         * platform/mediastream/MediaStreamPrivate.cpp:
3006         (WebCore::MediaStreamPrivate::MediaStreamPrivate):
3007         * platform/mediastream/MediaStreamPrivate.h:
3008         (WebCore::MediaStreamPrivate::createWeakPtr):
3009         * platform/mediastream/RealtimeMediaSource.cpp:
3010         (WebCore::RealtimeMediaSource::RealtimeMediaSource):
3011         * platform/mediastream/RealtimeMediaSource.h:
3012         * platform/mock/MockMediaEndpoint.cpp:
3013         (WebCore::MockMediaEndpoint::MockMediaEndpoint):
3014         (WebCore::MockMediaEndpoint::generateDtlsInfo):
3015         * rendering/RenderMultiColumnSpannerPlaceholder.cpp:
3016         (WebCore::RenderMultiColumnSpannerPlaceholder::RenderMultiColumnSpannerPlaceholder):
3017         * rendering/RenderMultiColumnSpannerPlaceholder.h:
3018         * rendering/RenderView.cpp:
3019         (WebCore::RenderView::RenderView):
3020         * rendering/RenderView.h:
3021         * rendering/RenderWidget.cpp:
3022         (WebCore::RenderWidget::RenderWidget):
3023         * rendering/RenderWidget.h:
3024         (WebCore::RenderWidget::createWeakPtr):
3025         * rendering/RootInlineBox.cpp:
3026         (WebCore::RootInlineBox::RootInlineBox):
3027         * rendering/RootInlineBox.h:
3028         (WebCore::RootInlineBox::createWeakPtr):
3029         * svg/SVGPathElement.cpp:
3030         (WebCore::SVGPathElement::SVGPathElement):
3031         * svg/SVGPathElement.h:
3032         * svg/properties/SVGMatrixTearOff.h:
3033         * testing/MockCDMFactory.cpp:
3034         (WebCore::MockCDMFactory::MockCDMFactory):
3035         (WebCore::MockCDMFactory::createCDM):
3036         (WebCore::MockCDM::MockCDM):
3037         (WebCore::MockCDM::createInstance):
3038         (WebCore::m_weakPtrFactory): Deleted.
3039
3040 2017-09-22  Tim Horton  <timothy_horton@apple.com>
3041
3042         Add env() as an alias of constant()
3043         https://bugs.webkit.org/show_bug.cgi?id=177371
3044
3045         Reviewed by Simon Fraser.
3046
3047         * css/CSSValueKeywords.in:
3048         * css/CSSVariableData.cpp:
3049         (WebCore::CSSVariableData::checkVariablesForCyclesWithRange const):
3050         (WebCore::CSSVariableData::resolveTokenRange const):
3051         * css/parser/CSSVariableParser.cpp:
3052         (WebCore::classifyBlock):
3053         Add env() as an alias of constant() everywhere it is mentioned.
3054
3055 2017-09-22  Basuke Suzuki  <Basuke.Suzuki@sony.com>
3056
3057         [Curl] Use didReceiveBuffer instead of didReceiveData
3058         https://bugs.webkit.org/show_bug.cgi?id=177260
3059
3060         Reviewed by Alex Christensen.
3061
3062         * platform/network/curl/CurlCacheEntry.cpp:
3063         (WebCore::CurlCacheEntry::readCachedData):
3064         * platform/network/curl/MultipartHandle.cpp:
3065         (WebCore::MultipartHandle::didReceiveData):
3066         * platform/network/curl/ResourceHandleCurlDelegate.cpp:
3067         (WebCore::ResourceHandleCurlDelegate::didReceiveContentData):
3068         (WebCore::ResourceHandleCurlDelegate::handleDataURL):
3069         (WebCore::ResourceHandleCurlDelegate::didReceiveData):
3070         (WebCore::ResourceHandleCurlDelegate::didReceiveDataCallback):
3071         * platform/network/curl/ResourceHandleCurlDelegate.h:
3072
3073 2017-09-22  John Wilander  <wilander@apple.com>
3074
3075         Non-prevalent resources should be allowed access to existing cookies in a third-party context
3076         https://bugs.webkit.org/show_bug.cgi?id=177336
3077         <rdar://problem/34578257>
3078
3079         Reviewed by Brent Fulgham.
3080
3081         No new tests. I will update existing tests and add at least
3082         one new test in a follow-up patch,
3083         see https://bugs.webkit.org/show_bug.cgi?id=177337. Need to
3084         land this to meet submission deadline and fix the regression.
3085
3086         This patch restructures what is communicated to the network process,
3087         from two vectors - with user interaction and without user interaction -
3088         to three vectors - to partition, to block, to neither partition nor block.
3089         The previous two vectors did not allow proper categorization into which
3090         domains should be partitioned, blocked, or left alone. That was the cause
3091         of the regression where non-prevalent third-party domains erroneously had
3092         their cookies blocked when they should fall back to the old behavior of
3093         access but no new cookies allowed to be set.
3094
3095         * loader/ResourceLoadStatistics.cpp:
3096         (WebCore::ResourceLoadStatistics::toString const):
3097         (WebCore::ResourceLoadStatistics::merge):
3098         * loader/ResourceLoadStatistics.h:
3099         * platform/network/NetworkStorageSession.h:
3100         * platform/network/cf/NetworkStorageSessionCFNet.cpp:
3101         (WebCore::NetworkStorageSession::shouldPartitionCookies const):
3102         (WebCore::NetworkStorageSession::shouldBlockThirdPartyCookies const):
3103         (WebCore::NetworkStorageSession::shouldBlockCookies const):
3104         (WebCore::NetworkStorageSession::setPrevalentDomainsToPartitionOrBlockCookies):
3105         (WebCore::NetworkStorageSession::removePrevalentDomains):
3106         (WebCore::NetworkStorageSession::shouldAllowThirdPartyCookies const): Deleted.
3107         (WebCore::NetworkStorageSession::setPrevalentDomainsWithAndWithoutInteraction): Deleted.
3108         * platform/network/mac/CookieJarMac.mm:
3109         (WebCore::cookiesInBlockedForURL):
3110         (WebCore::cookiesForURL):
3111
3112 2017-09-22  Fujii Hironori  <Hironori.Fujii@sony.com>
3113
3114         [CMake][Win] EventTargetInterfaces.h are generated twice
3115         https://bugs.webkit.org/show_bug.cgi?id=177286
3116
3117         Reviewed by Brent Fulgham.
3118
3119         EventTargetInterfaces.h are generated twice in both
3120         WebCoreDerivedSources.vcxproj and WebCore.vcxproj. This causes
3121         unnecessary recompilation in CMake VisualStudio build.
3122
3123         WebCore target already has a dependency to WebCoreDerivedSources
3124         target by calling add_dependencies. WebCore target doesn't need to
3125         generate it.
3126
3127         * CMakeLists.txt: Don't ADD_SOURCE_WEBCORE_DERIVED_DEPENDENCIES with EventTargetInterfaces.h.
3128
3129 2017-09-22  Antti Koivisto  <antti@apple.com>
3130
3131         Add asserts against layout time render tree mutations
3132         https://bugs.webkit.org/show_bug.cgi?id=177361
3133
3134         Reviewed by Zalan Bujtas.
3135
3136         We don't have any mutations left. Add asserts.
3137
3138         * rendering/RenderElement.cpp:
3139         (WebCore::RenderElement::insertChildInternal):
3140         (WebCore::RenderElement::removeChildInternal):
3141
3142 2017-09-22  Chris Dumez  <cdumez@apple.com>
3143
3144         Use high resolution timestamp for event time
3145         https://bugs.webkit.org/show_bug.cgi?id=154246
3146         <rdar://problem/34333304>
3147
3148         Reviewed by Ryosuke Niwa.
3149
3150         Have event.timeStamp return a DOMHighResTimeStamp instead of a DOMResTimeStamp. It now
3151         has better precision, is monotonic and is relative to PerformanceTiming.navigationStart.
3152
3153         This is as per:
3154         - https://dom.spec.whatwg.org/#interface-event
3155
3156         Chrome, Firefox and Edge all already ship this so the compatibility risk should be low.
3157
3158         Also use WallTime / MonotonicTime instead of double type for clarity.
3159
3160         Test: imported/w3c/web-platform-tests/dom/events/Event-timestamp-high-resolution.html
3161
3162         * WebCore.xcodeproj/project.pbxproj:
3163         * dom/DOMHighResTimeStamp.h: Copied from Source/WebKit/Shared/WebTouchEvent.cpp.
3164         * dom/Element.cpp:
3165         (WebCore::Element::dispatchMouseForceWillBegin):
3166         * dom/Event.cpp:
3167         (WebCore::Event::Event):
3168         (WebCore::Event::timeStampForBindings const):
3169         * dom/Event.h:
3170         (WebCore::Event::timeStamp const):
3171         * dom/Event.idl:
3172         * dom/KeyboardEvent.cpp:
3173         (WebCore::KeyboardEvent::KeyboardEvent):
3174         * dom/MouseEvent.cpp:
3175         (WebCore::MouseEvent::create):
3176         (WebCore::MouseEvent::MouseEvent):
3177         * dom/MouseEvent.h:
3178         * dom/MouseRelatedEvent.cpp:
3179         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
3180         * dom/MouseRelatedEvent.h:
3181         * dom/SimulatedClick.cpp:
3182         * dom/TouchEvent.cpp:
3183         (WebCore::TouchEvent::TouchEvent):
3184         * dom/UIEvent.cpp:
3185         (WebCore::UIEvent::UIEvent):
3186         * dom/UIEvent.h:
3187         * dom/UIEventWithKeyState.h:
3188         (WebCore::UIEventWithKeyState::UIEventWithKeyState):
3189         * dom/WheelEvent.cpp:
3190         (WebCore::WheelEvent::WheelEvent):
3191         * html/TypeAhead.cpp:
3192         (WebCore::TypeAhead::TypeAhead):
3193         (WebCore::TypeAhead::handleEvent):
3194         * html/TypeAhead.h:
3195         * page/AutoscrollController.cpp:
3196         (WebCore::AutoscrollController::AutoscrollController):
3197         (WebCore::AutoscrollController::updateDragAndDrop):
3198         (WebCore::AutoscrollController::autoscrollTimerFired):
3199         * page/AutoscrollController.h:
3200         * page/ContextMenuController.cpp:
3201         (WebCore::ContextMenuController::showContextMenuAt):
3202         * page/DragController.cpp:
3203         (WebCore::createMouseEvent):
3204         * page/EventHandler.cpp:
3205         (WebCore::EventHandler::dispatchDragEvent):
3206         (WebCore::EventHandler::sendContextMenuEventForKey):
3207         (WebCore::EventHandler::fakeMouseMoveEventTimerFired):
3208         * page/EventHandler.h:
3209         * page/Performance.cpp:
3210         (WebCore::Performance::now const):
3211         (WebCore::Performance::relativeTimeFromTimeOriginInReducedResolution const):
3212         * page/Performance.h:
3213         * page/ios/EventHandlerIOS.mm:
3214         (WebCore::EventHandler::tryToBeginDataInteractionAtPoint):
3215         * page/win/EventHandlerWin.cpp:
3216         * platform/PlatformEvent.h:
3217         (WebCore::PlatformEvent::timestamp const):
3218         (WebCore::PlatformEvent::PlatformEvent):
3219         * platform/PlatformKeyboardEvent.h:
3220         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3221         * platform/PlatformMouseEvent.h:
3222         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3223         * platform/PlatformWheelEvent.h:
3224         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3225         * platform/cocoa/ScrollController.mm:
3226         (WebCore::ScrollController::handleWheelEvent):
3227         * platform/glib/EventHandlerGLib.cpp:
3228         * platform/gtk/ScrollAnimatorGtk.cpp:
3229         (WebCore::ScrollAnimatorGtk::computeVelocity):
3230         (WebCore::ScrollAnimatorGtk::handleWheelEvent):
3231         * platform/ios/PlatformEventFactoryIOS.mm:
3232         (WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
3233         (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
3234         (WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder):
3235         (WebCore::PlatformTouchEventBuilder::PlatformTouchEventBuilder):
3236         * platform/mac/PlatformEventFactoryMac.h:
3237         * platform/mac/PlatformEventFactoryMac.mm:
3238         (WebCore::eventTimeStampSince1970):
3239
3240 2017-09-22  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
3241
3242         [GTK] HTMLMediaElement resize event not fired when video size changes
3243         https://bugs.webkit.org/show_bug.cgi?id=174582
3244
3245         Reviewed by Xabier Rodriguez-Calvar.
3246
3247         Modify AppendPipeline to notify MediaPlayerPrivateGStreamerMSE that a track is detected
3248         not only for the initial track detection but also for subsequent in particular when the
3249         video size has changed.
3250
3251         Update test expectation for new passing tests.
3252
3253         * platform/graphics/gstreamer/mse/AppendPipeline.cpp:
3254         (WebCore::AppendPipeline::appsinkCapsChanged):
3255         (WebCore::AppendPipeline::connectDemuxerSrcPadToAppsink):
3256         * platform/graphics/gstreamer/mse/AppendPipeline.h:
3257         * platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp:
3258         (WebCore::MediaPlayerPrivateGStreamerMSE::trackDetected):
3259         * platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.h:
3260         * platform/graphics/gstreamer/mse/PlaybackPipeline.cpp:
3261         (WebCore::PlaybackPipeline::reattachTrack):
3262         * platform/graphics/gstreamer/mse/PlaybackPipeline.h:
3263
3264 2017-09-22  Ms2ger  <Ms2ger@igalia.com>
3265
3266         [GTK] Couple of pasteboard related tests are failing after r222228
3267         https://bugs.webkit.org/show_bug.cgi?id=177295
3268
3269         Reviewed by Michael Catanzaro.
3270
3271         Call writeToClipboard() from Pasteboard::writeString() on GTK.
3272
3273         When writePasteboard was replaced by commitToPasteboard in r222228,
3274         the call to writeToClipboard() did not make it into the
3275         platform-neutral code. This attempts to find another place in the
3276         GTK-specific code to make the call.
3277
3278         Tests: editing/pasteboard/copy-without-selection.html
3279                editing/pasteboard/pasting-empty-html-falls-back-to-text.html
3280
3281         * platform/gtk/PasteboardGtk.cpp:
3282         (WebCore::Pasteboard::writeString):
3283
3284 2017-09-21  Brent Fulgham  <bfulgham@apple.com>
3285
3286         REGRESSION (r221017): iCloud mail logs me out after looking at a few messages
3287         https://bugs.webkit.org/show_bug.cgi?id=177328
3288
3289         Reviewed by Daniel Bates.
3290         <rdar://problem/34288629>
3291
3292         Reviewed by Dan Bates.
3293
3294         This site was triggering a log-out because the page was loading insecure images. We don't treat that as a security
3295         issue for deciding to display mixed content since it can only affect pixels on screen, not trigger a change in
3296         program logic or persistent storage.
3297
3298         Consequently, we can correct thsi compatibility problem without relaxing the security fix by not blocking Secure cookies
3299         when we have merely displayed mixed content (i.e., encountered 'Inactive' mixed content), as opposed to executing mixed
3300         content (i.e., loaded 'Active' mixed content).
3301
3302         * Modules/geolocation/Geolocation.cpp:
3303         (WebCore::Geolocation::shouldBlockGeolocationRequests): Revise for new API.
3304         * dom/SecurityContext.h:
3305         (WebCore::SecurityContext::foundMixedContent const): Change to return an OptionSet of
3306         mixed content types.
3307         (WebCore::SecurityContext::setFoundMixedContent): Accept an enum stating the type of mixed content found.
3308         * loader/CookieJar.cpp:
3309         (WebCore::cookies): Only block Secure cookies for Active mixed content.
3310         (WebCore::cookieRequestHeaderFieldValue): Ditto.
3311         * loader/MixedContentChecker.cpp:
3312         (WebCore::MixedContentChecker::canDisplayInsecureContent const): Mark the context as having found 'Inactive'
3313         mixed content.
3314         (WebCore::MixedContentChecker::canRunInsecureContent const): Mark the context as having found 'Active'
3315         mixed content.
3316
3317 2017-09-21  Simon Fraser  <simon.fraser@apple.com>
3318
3319         Clean up RenderLayer z-order traversal code
3320         https://bugs.webkit.org/show_bug.cgi?id=177325
3321
3322         Reviewed by Zalan Bujtas.
3323
3324         Remove isStackingContainer() checks before accessing posZOrderList() or negZOrderList();
3325         we already have assertions in place to ensure that only stacking containers have non-null lists.
3326
3327         Use more auto.
3328
3329         No behavior change.
3330
3331         * rendering/RenderLayer.cpp:
3332         (WebCore::RenderLayer::update3DTransformedDescendantStatus):
3333         (WebCore::RenderLayer::calculateClipRects const):
3334         * rendering/RenderLayerBacking.cpp:
3335         (WebCore::traverseVisibleNonCompositedDescendantLayers):
3336         * rendering/RenderLayerCompositor.cpp:
3337         (WebCore::RenderLayerCompositor::addToOverlapMapRecursive):
3338         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
3339         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
3340         (WebCore::RenderLayerCompositor::updateLayerTreeGeometry):
3341         (WebCore::RenderLayerCompositor::updateCompositingDescendantGeometry):
3342         (WebCore::RenderLayerCompositor::recursiveRepaintLayer):
3343         (WebCore::RenderLayerCompositor::layerHas3DContent const):
3344         * rendering/RenderTreeAsText.cpp:
3345         (WebCore::writeLayers):
3346
3347 2017-09-21  Per Arne Vollan  <pvollan@apple.com>
3348
3349         Unreviewed Windows build fix after r222360.
3350
3351         * PlatformWin.cmake:
3352
3353 2017-09-21  Youenn Fablet  <youenn@apple.com>
3354
3355         Remove the need for SetterMayThrowException
3356         https://bugs.webkit.org/show_bug.cgi?id=177099
3357
3358         Reviewed by Sam Weinig.
3359
3360         No change of behavior.
3361         Introducing AttributeSetter to handle exception raising attribute setters,
3362         based on the C++ class method instead of SetterMayThrowException.
3363         A follow-up patch should remove SetterMayThrowException from the IDLs
3364
3365         * bindings/js/JSDOMAttribute.h:
3366         (WebCore::AttributeSetter<ExceptionOr<void>>::call):
3367         (WebCore::AttributeSetter<void>::call):
3368         * bindings/scripts/CodeGeneratorJS.pm:
3369         (GenerateAttributeSetterBodyDefinition):
3370         * bindings/scripts/test/JS/JSTestCEReactions.cpp:
3371         * bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:
3372         * bindings/scripts/test/JS/JSTestCallTracer.cpp:
3373         * bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:
3374         * bindings/scripts/test/JS/JSTestGlobalObject.cpp:
3375         * bindings/scripts/test/JS/JSTestInterface.cpp:
3376         * bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:
3377         * bindings/scripts/test/JS/JSTestNode.cpp:
3378         * bindings/scripts/test/JS/JSTestObj.cpp:
3379         * bindings/scripts/test/JS/JSTestSerialization.cpp:
3380         * bindings/scripts/test/JS/JSTestSerializationInherit.cpp:
3381         * bindings/scripts/test/JS/JSTestSerializationInheritFinal.cpp:
3382         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
3383         * bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:
3384         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
3385
3386 2017-09-21  Ryosuke Niwa  <rniwa@webkit.org>
3387
3388         DataTransfer.items should contain text/html and text/uri-list
3389         https://bugs.webkit.org/show_bug.cgi?id=176772
3390         <rdar://problem/34386899>
3391
3392         Reviewed by Darin Adler.
3393
3394         Expose text/html and text/uri-list in dataTransfer.items.
3395
3396         Tests: editing/pasteboard/datatransfer-items-copy-html.html
3397                editing/pasteboard/datatransfer-items-copy-url.html
3398
3399         * dom/DataTransferItemList.cpp:
3400         (WebCore::isSupportedType): Added both MIME types.
3401         (WebCore::DataTransferItemList::add): Fixed the bug that new data transfer item was using
3402         the original type string instead of the lowercased one.
3403
3404 2017-09-21  Per Arne Vollan  <pvollan@apple.com>
3405
3406         [Win] Compile error, PALHeaderDetection.h not found.
3407         https://bugs.webkit.org/show_bug.cgi?id=177309
3408
3409         Reviewed by Brent Fulgham.
3410
3411         Copy PAL header files to WebCore forwarding headers folder.
3412
3413         * PlatformWin.cmake:
3414
3415 2017-09-21  Joseph Pecoraro  <pecoraro@apple.com>
3416
3417         Web Inspector: Remove support for CSS Regions
3418         https://bugs.webkit.org/show_bug.cgi?id=177287
3419
3420         Reviewed by Matt Baker.
3421
3422         * inspector/InspectorCSSAgent.cpp:
3423         (WebCore::InspectorCSSAgent::getNamedFlowCollection): Deleted.
3424         * inspector/InspectorCSSAgent.h:
3425         * inspector/InspectorOverlay.cpp:
3426         (WebCore::buildRendererHighlight):
3427         (WebCore::buildNodeHighlight):
3428         (WebCore::InspectorOverlay::getHighlight const):
3429         (WebCore::buildArrayForRendererFragments):
3430         (WebCore::buildQuadObjectForCSSRegionContentClip): Deleted.
3431         * inspector/InspectorOverlayPage.js:
3432         (_createElementTitle):
3433         (_drawElementTitle):
3434         (_drawFragmentHighlight):
3435         (drawNodeHighlight):
3436         (_drawRegionNumber): Deleted.
3437         (_quadMidPoint): Deleted.
3438         (_drawRegionLink): Deleted.
3439         (_drawRegionsHighlight): Deleted.
3440
3441 2017-09-21  Antti Koivisto  <antti@apple.com>
3442
3443         Remove some more code from RenderFlowThread
3444         https://bugs.webkit.org/show_bug.cgi?id=177320
3445
3446         Reviewed by David Hyatt.
3447
3448         More dead code related to named flows.
3449
3450         * rendering/RenderFlowThread.cpp:
3451         (WebCore::RenderFlowThread::RenderFlowThread):
3452         (WebCore::RenderFlowThread::invalidateRegions):
3453         (WebCore::RenderFlowThread::layout):
3454         (WebCore::RenderFlowThread::logicalWidthChangedInRegionsForBlock):
3455         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
3456         (WebCore::RenderFlowThread::addForcedRegionBreak):
3457         (WebCore::RenderFlowThread::offsetFromLogicalTopOfFirstRegion const):
3458         (WebCore::RenderFlowThread::hasCachedOffsetFromLogicalTopOfFirstRegion const): Deleted.
3459         (WebCore::RenderFlowThread::cachedOffsetFromLogicalTopOfFirstRegion const): Deleted.
3460         (WebCore::RenderFlowThread::setOffsetFromLogicalTopOfFirstRegion): Deleted.
3461         (WebCore::RenderFlowThread::clearOffsetFromLogicalTopOfFirstRegion): Deleted.
3462         (WebCore::RenderFlowThread::currentActiveRenderBox const): Deleted.
3463         (WebCore::RenderFlowThread::pushFlowThreadLayoutState): Deleted.
3464         (WebCore::RenderFlowThread::popFlowThreadLayoutState): Deleted.
3465         * rendering/RenderFlowThread.h:
3466
3467 2017-09-21  Chris Dumez  <cdumez@apple.com>
3468
3469         eventInitDict parameter to GamepadEvent constructor should be optional
3470         https://bugs.webkit.org/show_bug.cgi?id=177308
3471
3472         Reviewed by Sam Weinig.
3473
3474         eventInitDict parameter to GamepadEvent constructor should be optional to match Firefox
3475         and Chrome. Having such dictionary parameter is also not valid Web IDL:
3476         """
3477         If the type of an argument is a dictionary type (or a union type that has a dictionary as one
3478         of its flattened member types), and that dictionary type and its ancestors have no required
3479         members, and the argument is either the final argument or is followed only by optional arguments,
3480         then the argument must be specified as optional. Such arguments are always considered to have a
3481         default value of an empty dictionary, unless otherwise specified.
3482         """
3483
3484         Test: gamepad/gamepad-event.html
3485
3486         * Modules/gamepad/GamepadEvent.idl:
3487
3488 2017-09-21  Brian Burg  <bburg@apple.com>
3489
3490         Web Inspector: keyboard shortcut for "Reload page from origin" doesn't match Safari, and doesn't work
3491         https://bugs.webkit.org/show_bug.cgi?id=177010
3492         <rdar://problem/33134548>
3493
3494         Reviewed by Joseph Pecoraro.
3495
3496         Use "reload from origin" nomenclature instead of "reload ignoring cache".
3497
3498         * inspector/InspectorPageAgent.cpp:
3499         (WebCore::InspectorPageAgent::reload):
3500         * inspector/InspectorPageAgent.h:
3501
3502 2017-09-21  Antti Koivisto  <antti@apple.com>
3503
3504         Remove RenderNamedFlowFragment
3505         https://bugs.webkit.org/show_bug.cgi?id=177299
3506
3507         Reviewed by David Hyatt.
3508
3509         Remove the remaining named flow rendering code.
3510
3511         The feature is already disabled, no functional changes.
3512
3513         * WebCore.xcodeproj/project.pbxproj:
3514         * rendering/RenderBlock.cpp:
3515         (WebCore::RenderBlock::paint):
3516         (WebCore::RenderBlock::selectionGaps):
3517         (WebCore::RenderBlock::nodeAtPoint):
3518         * rendering/RenderBlockFlow.cpp:
3519         (WebCore::RenderBlockFlow::insertedIntoTree):
3520         (WebCore::RenderBlockFlow::willBeDestroyed):
3521         (WebCore::RenderBlockFlow::layoutBlock):
3522         (WebCore::RenderBlockFlow::styleDidChange):
3523         (WebCore::RenderBlockFlow::updateLogicalHeight):
3524         (WebCore::RenderBlockFlow::positionForPoint):
3525         (WebCore::RenderBlockFlow::createRenderNamedFlowFragmentIfNeeded): Deleted.
3526         (WebCore::RenderBlockFlow::canHaveChildren const): Deleted.
3527         (WebCore::RenderBlockFlow::canHaveGeneratedChildren const): Deleted.
3528         (WebCore::RenderBlockFlow::namedFlowFragmentNeedsUpdate const): Deleted.
3529         (WebCore::RenderBlockFlow::setRenderNamedFlowFragment): Deleted.
3530         * rendering/RenderBlockFlow.h:
3531         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
3532         (WebCore::RenderBlockFlow::renderNamedFlowFragment const): Deleted.
3533         (WebCore::RenderElement::isRenderNamedFlowFragmentContainer const): Deleted.
3534         * rendering/RenderBox.cpp:
3535         (WebCore::RenderBox::nodeAtPoint):
3536         (WebCore::RenderBox::paintBoxDecorations):
3537         (WebCore::RenderBox::pushContentsClip):
3538         (WebCore::RenderBox::mapLocalToContainer const):
3539         (WebCore::RenderBox::isUnsplittableForPagination const):
3540         (WebCore::RenderBox::overflowRectForPaintRejection const):
3541         * rendering/RenderBox.h:
3542         * rendering/RenderBoxModelObject.cpp:
3543         (WebCore::RenderBoxModelObject::paintMaskForTextFillBox):
3544         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3545         * rendering/RenderBoxModelObject.h:
3546         * rendering/RenderElement.h:
3547         (WebCore::RenderElement::generatingElement const):
3548         * rendering/RenderFlowThread.cpp:
3549         (WebCore::RenderFlowThread::RenderFlowThread):
3550         (WebCore::RenderFlowThread::invalidateRegions):
3551         (WebCore::RenderFlowThread::validateRegions):
3552         (WebCore::RenderFlowThread::layout):
3553         (WebCore::RenderFlowThread::adjustedPositionRelativeToOffsetParent const):
3554         (WebCore::RenderFlowThread::clearRenderBoxRegionInfoAndCustomStyle):
3555         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
3556         (WebCore::RenderFlowThread::addForcedRegionBreak):
3557         (WebCore::RenderFlowThread::hasCompositingRegionDescendant const): Deleted.
3558         (WebCore::RenderFlowThread::getLayerListForRegion const): Deleted.
3559         (WebCore::RenderFlowThread::regionForCompositedLayer const): Deleted.
3560         (WebCore::RenderFlowThread::cachedRegionForCompositedLayer const): Deleted.
3561         (WebCore::RenderFlowThread::updateLayerToRegionMappings): Deleted.
3562         (WebCore::RenderFlowThread::updateAllLayerToRegionMappings): Deleted.
3563         (WebCore::RenderFlowThread::collectsGraphicsLayersUnderRegions const): Deleted.
3564         (WebCore::RenderFlowThread::isAutoLogicalHeightRegionsCountConsistent const): Deleted.
3565         (WebCore::RenderFlowThread::initializeRegionsComputedAutoHeight): Deleted.
3566         (WebCore::RenderFlowThread::markAutoLogicalHeightRegionsForLayout): Deleted.
3567         (WebCore::RenderFlowThread::incrementAutoLogicalHeightRegions): Deleted.
3568         (WebCore::RenderFlowThread::decrementAutoLogicalHeightRegions): Deleted.
3569         * rendering/RenderFlowThread.h:
3570         * rendering/RenderLayer.cpp:
3571         (WebCore::RenderLayer::updateLayerPositions):
3572         (WebCore::expandClipRectForDescendantsAndReflection):
3573         (WebCore::RenderLayer::paintLayer):
3574         (WebCore::RenderLayer::paintLayerContents):
3575         (WebCore::RenderLayer::paintList):
3576         (WebCore::isHitCandidate):
3577         (WebCore::RenderLayer::hitTestLayer):
3578         (WebCore::RenderLayer::hitTestList):
3579         (WebCore::RenderLayer::calculateClipRects const):
3580         (WebCore::expandClipRectForRegionAndReflection): Deleted.
3581         (WebCore::RenderLayer::isFlowThreadCollectingGraphicsLayersUnderRegions const): Deleted.
3582         (WebCore::RenderLayer::mapLayerClipRectsToFragmentationLayer const): Deleted.
3583         * rendering/RenderLayer.h:
3584         * rendering/RenderLayerBacking.cpp:
3585         (WebCore::RenderLayerBacking::shouldClipCompositedBounds const):
3586         (WebCore::RenderLayerBacking::computeParentGraphicsLayerRect const):
3587         (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer const):
3588         (WebCore::RenderLayerBacking::adjustAncestorCompositingBoundsForFlowThread const): Deleted.
3589         * rendering/RenderLayerBacking.h:
3590         * rendering/RenderLayerCompositor.cpp:
3591         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
3592         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
3593         (WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason const):
3594         (WebCore::RenderLayerCompositor::styleChangeMayAffectIndirectCompositingReasons):
3595         (WebCore::RenderLayerCompositor::requiresCompositingForPosition const):
3596         (WebCore::RenderLayerCompositor::computeRegionCompositingRequirements): Deleted.
3597         (WebCore::RenderLayerCompositor::rebuildRegionCompositingLayerTree): Deleted.
3598         * rendering/RenderLayerCompositor.h:
3599         * rendering/RenderNamedFlowFragment.cpp: Removed.
3600         * rendering/RenderNamedFlowFragment.h: Removed.
3601         * rendering/RenderObject.cpp:
3602         (WebCore::RenderObject::containerForRepaint const):
3603         (WebCore::RenderObject::fixedPositionedWithNamedFlowContainingBlock const): Deleted.
3604         (WebCore::hasFixedPosInNamedFlowContainingBlock): Deleted.
3605         (WebCore::RenderObject::currentRenderNamedFlowFragment const): Deleted.
3606         * rendering/RenderObject.h:
3607         (WebCore::RenderObject::isRenderRegion const):
3608         (WebCore::RenderObject::isAnonymousBlock const):
3609         (WebCore::RenderObject::isRenderNamedFlowFragment const): Deleted.
3610         * rendering/RenderRegion.cpp:
3611         * rendering/RenderRegion.h:
3612         (WebCore::RenderRegion::hasAutoLogicalHeight const): Deleted.
3613         * rendering/RenderReplaced.cpp:
3614         (WebCore::RenderReplaced::shouldPaint):
3615         * rendering/RenderTable.cpp:
3616         (WebCore::RenderTable::overflowClipRect):
3617         (WebCore::RenderTable::nodeAtPoint):
3618         * rendering/RenderTableSection.cpp:
3619         (WebCore::RenderTableSection::nodeAtPoint):
3620         * rendering/RenderTreeAsText.cpp:
3621         (WebCore::writeLayers):
3622         * rendering/RenderView.cpp:
3623         (WebCore::RenderView::layout):
3624         (WebCore::RenderView::pushLayoutState):
3625         (WebCore::RenderView::pushLayoutStateForPaginationIfNeeded):
3626         (WebCore::RenderView::layoutContentInAutoLogicalHeightRegions): Deleted.
3627         (WebCore::RenderView::checkTwoPassLayoutForAutoHeightRegions const): Deleted.
3628         (WebCore::RenderView::pushLayoutStateForCurrentFlowThread): Deleted.
3629         (WebCore::RenderView::popLayoutStateForCurrentFlowThread): Deleted.
3630         * rendering/RenderView.h:
3631         * rendering/RootInlineBox.cpp:
3632         (WebCore::RootInlineBox::paint):
3633         * rendering/svg/RenderSVGRoot.cpp:
3634         (WebCore::RenderSVGRoot::paintReplaced):
3635
3636 2017-09-21  Alex Christensen  <achristensen@webkit.org>
3637
3638         Fix all builds after r222325
3639
3640         * loader/DocumentLoader.h:
3641         WebKit needs this, too.
3642
3643 2017-09-21  Yoshiaki Jitsukawa  <Yoshiaki.Jitsukawa@sony.com>
3644
3645         [PAL] Move MediaTimeAVFoundation into PAL
3646         https://bugs.webkit.org/show_bug.cgi?id=177222
3647
3648         Reviewed by Myles C. Maxfield.
3649
3650         No new tests. No change in behavior..
3651
3652         * Configurations/WebCore.unexp:
3653         * PlatformAppleWin.cmake:
3654         * WebCore.xcodeproj/project.pbxproj:
3655         * platform/audio/mac/AudioSampleDataSource.mm:
3656         (WebCore::AudioSampleDataSource::pushSamples):
3657         * platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm:
3658         (WebCore::AudioSourceProviderAVFObjC::process):
3659         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
3660         (WebCore::InbandTextTrackPrivateAVF::readNativeSampleBuffer):
3661         * platform/graphics/avfoundation/MediaSampleAVFObjC.h:
3662         * platform/graphics/avfoundation/cf/InbandTextTrackPrivateAVCF.cpp:
3663         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
3664         (WebCore::MediaPlayerPrivateAVFoundationCF::platformDuration const):
3665         (WebCore::MediaPlayerPrivateAVFoundationCF::currentMediaTime const):
3666         (WebCore::MediaPlayerPrivateAVFoundationCF::platformBufferedTimeRanges const):
3667         (WebCore::MediaPlayerPrivateAVFoundationCF::platformMinTimeSeekable const):
3668         (WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeSeekable const):
3669         (WebCore::MediaPlayerPrivateAVFoundationCF::platformMaxTimeLoaded const):
3670         (WebCore::AVFWrapper::seekToTime):
3671         (WebCore::AVFWrapper::legibleOutputCallback):
3672         (WebCore::AVFWrapper::createImageForTimeInRect):
3673         * platform/graphics/avfoundation/objc/ImageDecoderAVFObjC.mm:
3674         (WebCore::ImageDecoderAVFObjC::readSampleMetadata):
3675         (WebCore::ImageDecoderAVFObjC::storeSampleBuffer):
3676         (WebCore::ImageDecoderAVFObjC::createFrameImageAtIndex):
3677         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
3678         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration const):
3679         (WebCore::MediaPlayerPrivateAVFoundationObjC::currentMediaTime const):
3680         (WebCore::MediaPlayerPrivateAVFoundationObjC::seekToTime):
3681         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformBufferedTimeRanges const):
3682         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformMinTimeSeekable const):
3683         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeSeekable const):
3684         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeLoaded const):
3685         (WebCore::MediaPlayerPrivateAVFoundationObjC::metadataDidArrive):
3686         (-[WebCoreAVFMovieObserver observeValueForKeyPath:ofObject:change:context:]):
3687         (-[WebCoreAVFMovieObserver legibleOutput:didOutputAttributedStrings:nativeSampleBuffers:forItemTime:]):
3688         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
3689         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
3690         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentMediaTime const):
3691         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):
3692         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationChanged):
3693         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::sizeWillChangeAtTime):
3694         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
3695         (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::calculateTimelineOffset):
3696         * platform/graphics/avfoundation/objc/MediaSampleAVFObjC.mm:
3697         (WebCore::MediaSampleAVFObjC::presentationTime const):
3698         (WebCore::MediaSampleAVFObjC::outputPresentationTime const):
3699         (WebCore::MediaSampleAVFObjC::decodeTime const):
3700         (WebCore::MediaSampleAVFObjC::duration const):
3701         (WebCore::MediaSampleAVFObjC::outputDuration const):
3702         (WebCore::MediaSampleAVFObjC::offsetTimestampsBy):
3703         (WebCore::MediaSampleAVFObjC::setTimestamps):
3704         (WebCore::MediaSampleAVFObjC::divide):
3705         * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
3706         (WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset):
3707         * platform/graphics/cocoa/WebCoreDecompressionSession.mm:
3708         (WebCore::WebCoreDecompressionSession::handleDecompressionOutput):
3709         (WebCore::WebCoreDecompressionSession::automaticDequeue):
3710         (WebCore::WebCoreDecompressionSession::enqueueDecodedSample):
3711         (WebCore::WebCoreDecompressionSession::imageForTime):
3712         * platform/mac/PlatformClockCM.mm:
3713         (PlatformClockCM::setCurrentMediaTime):
3714         (PlatformClockCM::currentMediaTime const):
3715         * platform/mac/PlaybackSessionInterfaceMac.mm:
3716         (WebCore::timeRangesToArray):
3717         * platform/mac/VideoFullscreenInterfaceMac.mm:
3718         * platform/mediastream/mac/CoreAudioCaptureSource.cpp:
3719         * platform/mediastream/mac/MockRealtimeAudioSourceMac.mm:
3720         (WebCore::MockRealtimeAudioSourceMac::emitSampleBuffers):
3721         * platform/mediastream/mac/RealtimeIncomingAudioSource.cpp:
3722         (WebCore::RealtimeIncomingAudioSource::OnData):
3723         * platform/mediastream/mac/WebAudioSourceProviderAVFObjC.mm:
3724
3725 2017-09-21  Alex Christensen  <achristensen@webkit.org>
3726
3727         Fix ASAN build after r222306
3728         https://bugs.webkit.org/show_bug.cgi?id=177255
3729
3730         * loader/DocumentLoader.cpp:
3731         (WebCore::DocumentLoader::setCustomHeaderFields):
3732         * loader/DocumentLoader.h:
3733         (WebCore::DocumentLoader::setCustomHeaderFields): Deleted.
3734         Moving a Vector of a type requires more than just a forward declaration of the type, but only in ASAN builds.  Weird.
3735
3736 2017-09-21  Zhifei FANG  <facetothefate@gmail.com>
3737
3738         In regular block layout, the width of a child's margin box should always be equal to that of its containing block
3739         Merge from Blink https://bugs.chromium.org/p/chromium/issues/detail?id=708751
3740         https://bugs.webkit.org/show_bug.cgi?id=176620
3741
3742         Reviewed by Zalan Bujtas.
3743
3744         Test: fast/block/over-constrained-auto-margin.html
3745
3746         * rendering/RenderBox.cpp:
3747         (WebCore::RenderBox::computeLogicalWidthInRegion const):
3748
3749 2017-09-21  Javier Fernandez  <jfernandez@igalia.com>
3750
3751         Unpredictable selection when dragging out of float elements children of in-flow block-level box
3752         https://bugs.webkit.org/show_bug.cgi?id=176096
3753
3754         Reviewed by David Hyatt.
3755
3756         In order to improve Selection across float elements we need to
3757         consider them as HitTest candidates.  Additionally, since
3758         out-of-flow elements must not affect how in-flow elements are
3759         rendered we have to deal with some special cases when implementing
3760         the positionForPoint logic.
3761
3762         This patch addresses the issues caused by the fact that an in-flow
3763         box's logicalBottom does not consider the out-of-flow children, as
3764         they don't affect its height. Hence, we should add the lowest float
3765         logical bottom to figure out the box the point is actually hitting.
3766
3767         Tests: editing/selection/select-out-of-floated-non-editable-01.html
3768                editing/selection/select-out-of-floated-non-editable-02.html
3769                editing/selection/select-out-of-floated-non-editable-03.html
3770                editing/selection/select-out-of-floated-non-editable-04.html
3771                editing/selection/select-out-of-floated-non-editable-05.html
3772                editing/selection/select-out-of-floated-non-editable-06.html
3773                editing/selection/select-out-of-floated-non-editable-07.html
3774                editing/selection/select-out-of-floated-non-editable-08.html
3775                editing/selection/select-out-of-floated-non-editable-09.html
3776                editing/selection/select-out-of-floated-non-editable-10.html
3777                editing/selection/select-out-of-floated-non-editable-11.html
3778                editing/selection/select-out-of-floated-non-editable-12.html
3779
3780         * rendering/RenderBlock.cpp:
3781         (WebCore::isChildHitTestCandidate):
3782         (WebCore::RenderBlock::positionForPoint):
3783
3784 2017-09-21  Zan Dobersek  <zdobersek@igalia.com>
3785
3786         [WebCrypto] Support Elliptic Curve P-521
3787         https://bugs.webkit.org/show_bug.cgi?id=169231
3788         <rdar://problem/30881703>
3789
3790         Reviewed by Jiewen Tan.
3791
3792         Add support for the P-521 elliptic curve to the CryptoKeyEC class, but
3793         allow the underlying platform-specific implementations to opt out of
3794         supporting this feature.
3795
3796         This is achieved with the platformSupportedCurve() static function that
3797         each platform has to implement, returning true if the passed-in curve
3798         type is supported. The function is called at each CryptoKeyEC entrypoint,
3799         that is in each static function that could generate a new CryptoKeyEC
3800         object. These functions return a NotSupportedError exception in case the
3801         platformSupportedCurve() call returns false.
3802
3803         While the libgcrypt-based implementation will support P-521 curves in
3804         the near future, the CommonCrypto-based implementation might not. The use
3805         of platformSupportedCurve() ensures that the implementations that don't
3806         support EC P-521 continue to return the NotSupportedError exception at
3807         these entrypoints, instead of the OperationError exception that's returned
3808         when the platform-specific extensions of these entrypoints fail due to the
3809         specified elliptic curve not being supported.
3810
3811         Both libgcrypt-based and CommonCrypto-based implementations mark P-256 and
3812         P-384 curves as supported. Switch statements handling NamedCurve values
3813         must now also handle the NamedCurve::P521 value, but both implementations
3814         treat that as an unreachable case since support is not indicated in
3815         platformSupportedCurve(), and all CryptoKeyEC operations should have
3816         returned with an NotSupportedError exception before entering
3817         platform-specific code. The common CryptoKeyEC constructor similarly asserts
3818         that the specified curve is supported by the underlying implementation.
3819
3820         CryptoAlgorithmECDSA is modified to now also support 'ES512' as the algorithm
3821         identifier, matching it against the 'P-521' curve value.
3822
3823         No new tests -- tests covering EC P-521 already exist, but no platform
3824         runs them yet due to missing implementations.
3825
3826         * crypto/algorithms/CryptoAlgorithmECDSA.cpp:
3827         (WebCore::CryptoAlgorithmECDSA::importKey):
3828         * crypto/gcrypt/CryptoKeyECGCrypt.cpp:
3829         (WebCore::curveName):
3830         (WebCore::curveIdentifier):
3831         (WebCore::curveSize):
3832         (WebCore::curveUncompressedFieldElementSize):
3833         (WebCore::CryptoKeyEC::platformSupportedCurve):
3834         * crypto/keys/CryptoKeyEC.cpp:
3835         (WebCore::toNamedCurve):
3836         (WebCore::CryptoKeyEC::CryptoKeyEC):
3837         (WebCore::CryptoKeyEC::generatePair):
3838         (WebCore::CryptoKeyEC::importRaw):
3839         (WebCore::CryptoKeyEC::importJwk):
3840         (WebCore::CryptoKeyEC::importSpki):
3841         (WebCore::CryptoKeyEC::importPkcs8):
3842         (WebCore::CryptoKeyEC::exportJwk const):
3843         (WebCore::CryptoKeyEC::namedCurveString const):
3844         (WebCore::CryptoKeyEC::algorithm const):
3845         * crypto/keys/CryptoKeyEC.h:
3846         * crypto/mac/CryptoKeyECMac.cpp:
3847         (WebCore::doesUncompressedPointMatchNamedCurve):
3848         (WebCore::doesFieldElementMatchNamedCurve):
3849         (WebCore::getKeySizeFromNamedCurve):
3850         (WebCore::CryptoKeyEC::platformSupportedCurve):
3851         (WebCore::getOID):
3852
3853 2017-09-20  Antti Koivisto  <antti@apple.com>
3854
3855         inspector/dom/content-node-region-info.html and inspector/dom/content-flow tests crashing
3856         https://bugs.webkit.org/show_bug.cgi?id=177249
3857         <rdar://problem/34559968>
3858
3859         Unreviewed.
3860
3861         * inspector/InspectorCSSAgent.cpp:
3862         (WebCore::InspectorCSSAgent::getNamedFlowCollection):
3863
3864             Fix crashing by adding a few lines of removed code back.
3865
3866 2017-09-20  Zalan Bujtas  <zalan@apple.com>
3867
3868         Remove redundant SelectionSubtreeData functions.
3869         https://bugs.webkit.org/show_bug.cgi?id=177288
3870
3871         Reviewed by Simon Fraser.
3872
3873         No change in functionality.
3874
3875         * rendering/SelectionSubtreeRoot.h:
3876         (WebCore::SelectionSubtreeRoot::SelectionSubtreeData::SelectionSubtreeData):
3877         (WebCore::SelectionSubtreeRoot::SelectionSubtreeData::selectionEndPos const):
3878         (WebCore::SelectionSubtreeRoot::SelectionSubtreeData::selectionClear const): Deleted.
3879         (WebCore::SelectionSubtreeRoot::SelectionSubtreeData::setSelectionStart): Deleted.
3880         (WebCore::SelectionSubtreeRoot::SelectionSubtreeData::setSelectionStartPos): Deleted.
3881         (WebCore::SelectionSubtreeRoot::SelectionSubtreeData::setSelectionEnd): Deleted.
3882         (WebCore::SelectionSubtreeRoot::SelectionSubtreeData::setSelectionEndPos): Deleted.
3883         (): Deleted.
3884
3885 2017-09-20  Alex Christensen  <achristensen@webkit.org>
3886
3887         Add infrastructure for adding custom headers to requests per website
3888         https://bugs.webkit.org/show_bug.cgi?id=177255
3889
3890         Reviewed by Geoffrey Garen.
3891
3892 &n