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