6823e8e01ca654e3d0e72a25b24f325729ddf92f
[WebKit-https.git] / Source / WebKit / mac / ChangeLog
1 2017-07-03  Tim Horton  <timothy_horton@apple.com>
2
3         Expose unobscuredSafeAreaInsets on WebView
4         https://bugs.webkit.org/show_bug.cgi?id=174075
5         <rdar://problem/33096997>
6
7         Reviewed by Beth Dakin.
8
9         * WebView/WebView.mm:
10         (-[WebView _setUnobscuredSafeAreaInsets:]):
11         (-[WebView _unobscuredSafeAreaInsets]):
12         * WebView/WebViewPrivate.h:
13         Expose unobscuredSafeAreaInsets as a new private property on WebView,
14         similar to how it is exposed in WebKit2.
15
16 2017-07-03  Andy Estes  <aestes@apple.com>
17
18         [Xcode] Add an experimental setting to build with ccache
19         https://bugs.webkit.org/show_bug.cgi?id=173875
20
21         Reviewed by Tim Horton.
22
23         * Configurations/DebugRelease.xcconfig: Included ccache.xcconfig.
24
25 2017-07-03  Tim Horton  <timothy_horton@apple.com>
26
27         Expose WebPreferences for viewport-fit and constant() properties
28         https://bugs.webkit.org/show_bug.cgi?id=174072
29         <rdar://problem/33096639>
30
31         Reviewed by Ryosuke Niwa.
32
33         * WebView/WebPreferenceKeysPrivate.h:
34         * WebView/WebPreferences.mm:
35         (-[WebPreferences viewportFitEnabled]):
36         (-[WebPreferences setViewportFitEnabled:]):
37         (-[WebPreferences constantPropertiesEnabled]):
38         (-[WebPreferences setConstantPropertiesEnabled:]):
39         * WebView/WebPreferencesPrivate.h:
40         * WebView/WebView.mm:
41         (-[WebView _preferencesChanged:]):
42
43 2017-07-01  Tim Horton  <timothy_horton@apple.com>
44
45         Expose viewport-fit value to UIKit via viewport arguments dictionary
46         https://bugs.webkit.org/show_bug.cgi?id=174071
47         <rdar://problem/33096620>
48
49         Reviewed by Wenson Hsieh.
50
51         * History/WebHistoryItem.mm:
52         * History/WebHistoryItemPrivate.h:
53         Add another dictionary key and three values.
54
55 2017-07-01  Dan Bernstein  <mitz@apple.com>
56
57         [iOS] Remove code only needed when building for iOS 9.x
58         https://bugs.webkit.org/show_bug.cgi?id=174068
59
60         Reviewed by Tim Horton.
61
62         * Configurations/FeatureDefines.xcconfig:
63
64 2017-07-01  Ryosuke Niwa  <rniwa@webkit.org>
65
66         Frame.h doesn't need to include FrameLoader.h, IntRect.h, and NavigationScheduler.h
67         https://bugs.webkit.org/show_bug.cgi?id=174004
68
69         Reviewed by Simon Fraser.
70
71         * WebCoreSupport/WebPluginInfoProvider.mm:
72
73 2017-07-01  Dan Bernstein  <mitz@apple.com>
74
75         [macOS] Remove code only needed when building for OS X Yosemite
76         https://bugs.webkit.org/show_bug.cgi?id=174067
77
78         Reviewed by Tim Horton.
79
80         * Configurations/Base.xcconfig:
81         * Configurations/DebugRelease.xcconfig:
82         * Configurations/FeatureDefines.xcconfig:
83         * Configurations/Version.xcconfig:
84         * Plugins/WebBasePluginPackage.mm:
85         (-[WebBasePluginPackage getPluginInfoFromPLists]):
86         * WebCoreSupport/PopupMenuMac.mm:
87         (PopupMenuMac::show):
88         * WebCoreSupport/WebInspectorClient.mm:
89         (WebInspectorFrontendClient::startWindowDrag):
90         (-[WebInspectorWindowController window]):
91         * WebView/WebView.mm:
92         (-[WebView _animationControllerForDictionaryLookupPopupInfo:]):
93
94 2017-06-30  Daniel Bates  <dabates@apple.com>
95
96         API::FrameInfo should know the web page that contains the frame; add API property webView to WKFrameInfo
97         https://bugs.webkit.org/show_bug.cgi?id=165160
98         <rdar://problem/29451999>
99
100         Reviewed by Brady Eidson.
101
102         Pass the document that is requesting the load to the loader.
103
104         * WebView/WebPDFView.mm:
105         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
106
107 2017-06-29  Jer Noble  <jer.noble@apple.com>
108
109         Make Legacy EME API controlled by RuntimeEnabled setting.
110         https://bugs.webkit.org/show_bug.cgi?id=173994
111
112         Reviewed by Sam Weinig.
113
114         Add a new preference used to control WebCore's new RuntimeEnabledFeature setting.
115
116         * Configurations/FeatureDefines.xcconfig:
117         * WebView/WebPreferenceKeysPrivate.h:
118         * WebView/WebPreferences.mm:
119         (+[WebPreferences initialize]):
120         (-[WebPreferences legacyEncryptedMediaAPIEnabled]):
121         (-[WebPreferences setLegacyEncryptedMediaAPIEnabled:]):
122         * WebView/WebPreferencesPrivate.h:
123         * WebView/WebView.mm:
124         (-[WebView _preferencesChanged:]):
125
126 2017-06-30  Chris Dumez  <cdumez@apple.com>
127
128         ResourceLoadObserver does not need a ResourceLoadStatisticsStore
129         https://bugs.webkit.org/show_bug.cgi?id=174013
130
131         Reviewed by Brent Fulgham.
132
133         ResourceLoadObserver does not need a ResourceLoadStatisticsStore. ResourceLoadStatisticsStore is too complicated for its needs.
134         ResourceLoadStatisticsStore can then be moved to WebKit2/UIProcess in a follow-up.
135
136         * WebView/WebView.mm:
137         (-[WebView _commonInitializationWithFrameName:groupName:]):
138
139 2017-06-30  Wenson Hsieh  <wenson_hsieh@apple.com>
140
141         [iOS DnD] Drag caret rect is incorrectly computed when dropping in editable content in iframes
142         https://bugs.webkit.org/show_bug.cgi?id=174017
143         <rdar://problem/32959782>
144
145         Reviewed by Simon Fraser.
146
147         Use root view coordinates when computing the drag caret rect.
148
149         * WebView/WebView.mm:
150         (-[WebView _dataInteractionCaretRect]):
151
152 2017-06-28  Simon Fraser  <simon.fraser@apple.com>
153
154         Mark the GraphicsContext as accelerated when the WebHTMLView's layer is drawing asynchronously
155         https://bugs.webkit.org/show_bug.cgi?id=173899
156         rdar://problem/32994474
157
158         Reviewed by Tim Horton.
159
160         When the WebHTMLView is layer-backed, and -drawsAsynchronously on its layer is YES,
161         then mark the GraphicsContext that WebCore is using for drawing as accelerated, so
162         that ImageBuffer::createCompatibleBuffer() creates appropriately matched buffers.
163
164         Also clean up WebFrame a little, sharing code that checks whether the WebFrame's
165         documentView is a WebHTMLView.
166
167         * WebView/WebFrame.mm:
168         (-[WebFrame _webHTMLDocumentView]):
169         (-[WebFrame _paintBehaviorForDestinationContext:]):
170         (-[WebFrame _drawRect:contentsOnly:]):
171         (-[WebFrame setTimeoutsPaused:]):
172         (-[WebFrame prepareForPause]):
173         (-[WebFrame resumeFromPause]):
174         (-[WebFrame resetTextAutosizingBeforeLayout]):
175         * WebView/WebHTMLView.mm:
176         (-[WebHTMLView drawLayer:inContext:]):
177         (-[WebHTMLView _web_isDrawingIntoAcceleratedLayer]):
178         * WebView/WebHTMLViewInternal.h:
179
180 2017-06-27  Wenson Hsieh  <wenson_hsieh@apple.com>
181
182         [iOS DnD] Support dragging out of contenteditable areas without a prior selection
183         https://bugs.webkit.org/show_bug.cgi?id=173854
184         <rdar://problem/32236827>
185
186         Reviewed by Ryosuke Niwa and Tim Horton.
187
188         Vends some information from the DragItem passed into -[WebView _startDrag:] through the WebView as SPI for
189         WebKit1 clients. No behavior change with these changes alone -- see <rdar://problem/32991062> for more detail.
190
191         * WebView/WebView.mm:
192         (-[WebView _startDrag:]):
193         (-[WebView _dragSourceAction]):
194         (-[WebView _draggedLinkTitle]):
195         (-[WebView _draggedLinkURL]):
196         (-[WebView _draggedElementBounds]):
197         (-[WebView _endedDataInteraction:global:]):
198         * WebView/WebViewData.h:
199         * WebView/WebViewPrivate.h:
200
201 2017-06-26  Wenson Hsieh  <wenson_hsieh@apple.com>
202
203         Refactor drag start codepaths to plumb a DragItem to client layers
204         https://bugs.webkit.org/show_bug.cgi?id=173832
205         Work towards <rdar://problem/32236827>
206
207         Reviewed by Ryosuke Niwa and Tim Horton.
208
209         Refactor code used to start a drag in WebKit1 to plumb a single DragItem from DragController to the client layer
210         in WebDragClient that contains all the information needed to begin a drag. Also renames _setDataInteractionData:
211         to _startDrag: to match logic used to start a drag on other platforms.
212
213         No behavior change -- the same information should be propagated to AppKit and UIKit when beginning a drag, only
214         through the DragItem struct.
215
216         * WebCoreSupport/WebDragClient.h:
217         * WebCoreSupport/WebDragClient.mm:
218         (WebDragClient::startDrag):
219         (WebDragClient::dragSourceActionMaskForPoint):
220         (WebDragClient::willPerformDragSourceAction):
221         (WebDragClient::beginDrag):
222         * WebView/WebView.mm:
223         (-[WebView _startDrag:]):
224         (-[WebView _setDataInteractionData:textIndicator:atClientPosition:anchorPoint:action:]): Deleted.
225         * WebView/WebViewInternal.h:
226
227 2017-06-25  Konstantin Tokarev  <annulen@yandex.ru>
228
229         Remove excessive headers from JavaScriptCore
230         https://bugs.webkit.org/show_bug.cgi?id=173812
231
232         Reviewed by Darin Adler.
233
234         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
235         * WebView/WebView.mm:
236
237 2017-06-23  Tim Horton  <timothy_horton@apple.com>
238
239         Remove an unused typedef from WebFrameLoaderClient
240         https://bugs.webkit.org/show_bug.cgi?id=173795
241
242         Reviewed by Simon Fraser.
243
244         * WebCoreSupport/WebFrameLoaderClient.h:
245         This unused typedef in the global namespace conflicts with one in a macOS system header.
246         Also... it's unused.
247         Remove it.
248
249 2017-06-23  Konstantin Tokarev  <annulen@yandex.ru>
250
251         Remove excessive headers from WebCore/{bindings,css,dom}
252         https://bugs.webkit.org/show_bug.cgi?id=173766
253
254         Reviewed by Simon Fraser.
255
256         * DOM/DOMInternal.mm:
257
258 2017-06-22  Daniel Bates  <dabates@apple.com>
259
260         Make FrameLoadRequest a move-only type
261         https://bugs.webkit.org/show_bug.cgi?id=173682
262
263         Reviewed by Alex Christensen and Darin Adler.
264
265         A FrameLoadRequest groups together the information to perform a load into a single object
266         that is more manageable to pass around than its constituent parts. Code that receives a
267         FrameLoadRequest is expected to extract out the information it needs to complete its task.
268         And it does not make sense to re-use the same FrameLoadRequest object for more than one
269         load. Therefore, it is sufficient to make FrameLoadRequest a move-only type.
270
271         * Plugins/WebPluginController.mm:
272         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
273         * WebView/WebPDFView.mm:
274         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
275
276 2017-06-21  Antoine Quint  <graouts@apple.com>
277
278         Ensure DRT always logs rAF suspension debugging code
279         https://bugs.webkit.org/show_bug.cgi?id=173681
280
281         Reviewed by Tim "Mr. T" Horton.
282
283         * WebView/WebPreferenceKeysPrivate.h:
284         * WebView/WebPreferences.mm:
285         (+[WebPreferences initialize]):
286         (-[WebPreferences shouldLogScriptedAnimationControllerSuspensionChange]): Deleted.
287         (-[WebPreferences setShouldLogScriptedAnimationControllerSuspensionChange:]): Deleted.
288         * WebView/WebPreferencesPrivate.h:
289         * WebView/WebView.mm:
290         (-[WebView _preferencesChanged:]):
291
292 2017-06-21  Daniel Bates  <dabates@apple.com>
293
294         Cleanup FrameLoadRequest
295         https://bugs.webkit.org/show_bug.cgi?id=173564
296         <rdar://problem/32903570>
297
298         Reviewed by Brent Fulgham.
299
300         * WebView/WebPDFView.mm:
301         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Move FrameLoadRequest instantiation
302         into a local variable and use C++11 brace initialization syntax to make it easier to identify
303         the arguments passed to FrameLoader::loadFrameRequest().
304
305 2017-06-21  Antoine Quint  <graouts@apple.com>
306
307         Add logging to identify when the Page suspends scripted animations
308         https://bugs.webkit.org/show_bug.cgi?id=173626
309
310         Reviewed by Tim Horton.
311
312         Add a new preference to control the new shouldLogScriptedAnimationControllerSuspensionChange settings
313         through WebKit. This is specific to WK1 since the issue we're trying to pinpoint only occurs on WK1 bots.
314
315         * WebView/WebPreferenceKeysPrivate.h:
316         * WebView/WebPreferences.mm:
317         (+[WebPreferences initialize]):
318         (-[WebPreferences shouldLogScriptedAnimationControllerSuspensionChange]):
319         (-[WebPreferences setShouldLogScriptedAnimationControllerSuspensionChange:]):
320         * WebView/WebPreferencesPrivate.h:
321         * WebView/WebView.mm:
322         (-[WebView _preferencesChanged:]):
323
324 2017-06-20  Myles C. Maxfield  <mmaxfield@apple.com>
325
326         Disable font variations on macOS Sierra and iOS 10
327         https://bugs.webkit.org/show_bug.cgi?id=173618
328         <rdar://problem/32879164>
329
330         Reviewed by Jon Lee.
331
332         * Configurations/FeatureDefines.xcconfig:
333
334 2017-06-20  Daniel Bates  <dabates@apple.com>
335
336         Have FrameLoadRequest takes a Frame& instead of a Frame*
337         https://bugs.webkit.org/show_bug.cgi?id=173614
338         <rdar://problem/32884890>
339
340         Reviewed by Brent Fulgham.
341
342         * Plugins/WebPluginController.mm:
343         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
344         * WebView/WebFrame.mm:
345         (-[WebFrame loadRequest:]):
346         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
347
348 2017-06-19  Frederic Wang  <fwang@igalia.com>
349
350         [Mac] Add an experimental feature setting for async frame scrolling
351         https://bugs.webkit.org/show_bug.cgi?id=173359
352
353         Reviewed by Simon Fraser.
354
355         * WebView/WebPreferenceKeysPrivate.h: Declare key for async frame scrolling preference.
356         * WebView/WebPreferences.mm:
357         (+[WebPreferences initialize]): Initialize async frame scrolling preference to false.
358         (-[WebPreferences asyncFrameScrollingEnabled]): Define getter for async frame scrolling.
359         (-[WebPreferences setAsyncFrameScrollingEnabled:]): Define setter for async frame scrolling.
360         * WebView/WebPreferencesPrivate.h: Declare setter and getter.
361         * WebView/WebView.mm:
362         (-[WebView _preferencesChanged:]): Take into account preference update for async frame
363         scrolling.
364
365 2017-06-19  Chris Dumez  <cdumez@apple.com>
366
367         Use WTF::Function instead of std::function in more places in WebCore/
368         https://bugs.webkit.org/show_bug.cgi?id=173535
369
370         Reviewed by Antti Koivisto.
371
372         Use WTF::Function instead of std::function in more places in WebCore/ to avoid copying.
373
374         * WebCoreSupport/WebFrameLoaderClient.h:
375         * WebCoreSupport/WebFrameLoaderClient.mm:
376         (WebFrameLoaderClient::dispatchDecidePolicyForResponse):
377         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
378         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
379         (WebFrameLoaderClient::dispatchWillSubmitForm):
380         (WebFrameLoaderClient::setUpPolicyListener):
381         (-[WebFramePolicyListener initWithFrame:policyFunction:]):
382         (-[WebFramePolicyListener initWithFrame:policyFunction:appLinkURL:]):
383
384 2017-05-14 Frederic Wang  <fwang@igalia.com>
385
386         Add heuristic to avoid flattening "fullscreen" iframes
387         https://bugs.webkit.org/show_bug.cgi?id=171914
388
389         Reviewed by Simon Fraser.
390
391         This commit adjusts the mac/ios preference interface to treat frame flattening as an enum.
392
393         * WebView/WebPreferenceKeysPrivate.h: Rename the key.
394         * WebView/WebPreferences.mm:
395         (+[WebPreferences initialize]): Handle frame flattening as an enum.
396         (-[WebPreferences isFrameFlatteningEnabled]): Ditto.
397         (-[WebPreferences setFrameFlatteningEnabled:]): Ditto.
398         (-[WebPreferences frameFlattening]): New function to get frame flattening as an enum.
399         (-[WebPreferences setFrameFlattening:]): New function to set frame flattening as an enum.
400         * WebView/WebPreferencesPrivate.h: Ditto.
401         * WebView/WebView.mm:
402         (-[WebView _preferencesChanged:]): Ditto.
403         * WebView/WebPreferencesPrivate.h: Add new enum definition.
404
405 2017-06-17  Chris Dumez  <cdumez@apple.com>
406
407         Use WTF::Function instead of std::function in WebKit2/
408         https://bugs.webkit.org/show_bug.cgi?id=173504
409
410         Reviewed by Darin Adler.
411
412         Use WTF::Function instead of std::function in WebKit2/ to avoid
413         unnecessary copying.
414
415         * Plugins/Hosted/HostedNetscapePluginStream.h:
416         * Plugins/Hosted/HostedNetscapePluginStream.mm:
417         (WebKit::HostedNetscapePluginStream::willSendRequest):
418         * Plugins/WebNetscapePluginStream.h:
419         * Plugins/WebNetscapePluginStream.mm:
420         (WebNetscapePluginStream::willSendRequest):
421         * WebCoreSupport/WebPaymentCoordinatorClient.h:
422         * WebCoreSupport/WebPaymentCoordinatorClient.mm:
423         (WebPaymentCoordinatorClient::canMakePaymentsWithActiveCard):
424         (WebPaymentCoordinatorClient::openPaymentSetup):
425
426 2017-06-16  Sam Weinig  <sam@webkit.org>
427
428         [WebIDL] Remove custom bindings for HTMLDocument
429         https://bugs.webkit.org/show_bug.cgi?id=173444
430
431         Reviewed by Darin Adler.
432
433         * DOM/DOMHTMLDocument.mm:
434         (-[DOMHTMLDocument linkColor]):
435         (-[DOMHTMLDocument setLinkColor:]):
436         (-[DOMHTMLDocument write:]):
437         (-[DOMHTMLDocument writeln:]):
438         Update for new signature of write/writeln and rename of linkColor to linkColorForBindings.
439
440 2017-06-16  Wenson Hsieh  <wenson_hsieh@apple.com>
441
442         [iOS DnD] Upstream iOS drag and drop implementation into OpenSource WebKit
443         https://bugs.webkit.org/show_bug.cgi?id=173366
444         <rdar://problem/32767014>
445
446         Reviewed by Tim Horton.
447
448         Move pieces of iOS WebKit1 drag and drop implementation into OpenSource. No change in behavior.
449
450         * Configurations/FeatureDefines.xcconfig:
451         * WebCoreSupport/WebDragClient.mm:
452         (WebDragClient::useLegacyDragClient):
453         (WebDragClient::willPerformDragDestinationAction):
454         (WebDragClient::dragSourceActionMaskForPoint):
455         (WebDragClient::willPerformDragSourceAction):
456         (WebDragClient::startDrag):
457         (WebDragClient::beginDrag):
458         (WebDragClient::declareAndWriteDragImage):
459         (WebDragClient::declareAndWriteAttachment):
460         (WebDragClient::didConcludeEditDrag):
461         * WebView/WebView.mm:
462         (-[WebView _setDataInteractionData:textIndicator:atClientPosition:anchorPoint:action:]):
463         (-[WebView _getDataInteractionData]):
464         (-[WebView dragDataForSession:client:global:operation:]):
465         (-[WebView _enteredDataInteraction:client:global:operation:]):
466         (-[WebView _updatedDataInteraction:client:global:operation:]):
467         (-[WebView _exitedDataInteraction:client:global:operation:]):
468         (-[WebView _performDataInteraction:client:global:operation:]):
469         (-[WebView _tryToPerformDataInteraction:client:global:operation:]):
470         (-[WebView _endedDataInteraction:global:]):
471         (-[WebView _didConcludeEditDataInteraction]):
472         (floatRectsForCGRectArray): Deleted.
473         (-[WebView _createImageWithPlatterForImage:boundingRect:contentScaleFactor:clippingRects:]): Deleted.
474         * WebView/WebViewData.h:
475         * WebView/WebViewData.mm:
476         (-[WebViewPrivate dealloc]):
477         * WebView/WebViewPrivate.h:
478
479 2017-06-15  Wenson Hsieh  <wenson_hsieh@apple.com>
480
481         [iOS DnD] [WK1] Dropping links onto UIWebViews should not trigger navigation by default
482         https://bugs.webkit.org/show_bug.cgi?id=173454
483         <rdar://problem/31720671>
484
485         Reviewed by Tim Horton.
486
487         Adds -webView:dragDestinationActionMaskForSession: as SPI to WebUIDelegate.
488         If unimplemented, the default UI delegate allows all actions except for URL loading.
489
490         * DefaultDelegates/WebDefaultUIDelegate.mm:
491         (-[WebDefaultUIDelegate webView:dragDestinationActionMaskForSession:]):
492         * WebView/WebUIDelegatePrivate.h:
493         * WebView/WebView.mm:
494         (-[WebView dragDestinationActionMaskForSession:]):
495
496 2017-06-15  Wenson Hsieh  <wenson_hsieh@apple.com>
497
498         Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading
499         https://bugs.webkit.org/show_bug.cgi?id=173338
500         <rdar://problem/32777720>
501
502         Reviewed by Tim Horton.
503
504         Rename updatePreferredTypeIdentifiers to updateSupportedTypeIdentifiers.
505
506         * WebCoreSupport/WebPlatformStrategies.h:
507         * WebCoreSupport/WebPlatformStrategies.mm:
508         (WebPlatformStrategies::updateSupportedTypeIdentifiers):
509         (WebPlatformStrategies::updatePreferredTypeIdentifiers): Deleted.
510
511 2017-06-13  Daniel Bates  <dabates@apple.com>
512
513         Implement W3C Secure Contexts Draft Specification
514         https://bugs.webkit.org/show_bug.cgi?id=158121
515         <rdar://problem/26012994>
516
517         Reviewed by Brent Fulgham.
518
519         Part 4
520
521         Adds a preference to toggle the runtime enabled feature flag isSecureContextAttributeEnabled.
522
523         * WebView/WebPreferenceKeysPrivate.h:
524         * WebView/WebPreferences.mm:
525         (+[WebPreferences initialize]):
526         (-[WebPreferences isSecureContextAttributeEnabled]):
527         (-[WebPreferences setIsSecureContextAttributeEnabled:]):
528         * WebView/WebPreferencesPrivate.h:
529         * WebView/WebView.mm:
530         (-[WebView _preferencesChanged:]):
531
532 2017-06-13  Sam Weinig  <sam@webkit.org>
533
534         Rename JSDOMWindowShell to JSDOMWindowProxy to match the HTML5 spec.
535         https://bugs.webkit.org/show_bug.cgi?id=80733
536
537         Reviewed by Chris Dumez.
538
539         * DOM/DOMUtility.mm:
540         (createDOMWrapper):
541         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
542         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
543         * WebView/WebFrame.mm:
544         (-[WebFrame _attachScriptDebugger]):
545         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
546
547 2017-06-12  Jiewen Tan  <jiewen_tan@apple.com>
548
549         [WebCrypto] Remove experimental feature flag of SubtleCrypto
550         https://bugs.webkit.org/show_bug.cgi?id=173197
551         <rdar://problem/32688148>
552
553         Reviewed by Brent Fulgham.
554
555         * WebView/WebPreferences.mm:
556         (+[WebPreferences initialize]):
557         (-[WebPreferences subtleCryptoEnabled]): Deleted.
558         (-[WebPreferences setSubtleCryptoEnabled:]): Deleted.
559         * WebView/WebPreferencesPrivate.h:
560         * WebView/WebView.mm:
561         (-[WebView _preferencesChanged:]):
562
563 2017-06-10  Dan Bernstein  <mitz@apple.com>
564
565         Reverted r218056 because it made the IDE reindex constantly.
566
567         * Configurations/DebugRelease.xcconfig:
568
569 2017-06-10  Dan Bernstein  <mitz@apple.com>
570
571         [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
572         https://bugs.webkit.org/show_bug.cgi?id=173223
573
574         Reviewed by Sam Weinig.
575
576         The rebuilds were happening due to a difference in the compiler options that the IDE and
577         xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
578         xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
579         specify an appropriate path in CLANG_INDEX_STORE_PATH.
580
581         * Configurations/DebugRelease.xcconfig:
582
583 2017-06-09  Wenson Hsieh  <wenson_hsieh@apple.com>
584
585         [iOS DnD] Add a hook to perform two-step drops in editable content
586         https://bugs.webkit.org/show_bug.cgi?id=172992
587         <rdar://problem/32590174>
588
589         Reviewed by Tim Horton.
590
591         Adds a new SPI to WebUIKitDelegate to allow WK1 clients to override default drop behavior. Returning YES from
592         -performTwoStepDrop:atDestination:isMove: will prevent content from being inserted on drop in WebKit; otherwise,
593         returning NO will continue with default WebKit behavior.
594
595         * WebCoreSupport/WebEditorClient.h:
596         * WebCoreSupport/WebEditorClient.mm:
597         (WebEditorClient::performTwoStepDrop):
598
599 2017-06-08  Jer Noble  <jer.noble@apple.com>
600
601         Clients of the WK2 C-API don't have their mediaContentTypesRequiringHardwareSupport setting initialized correctly.
602         https://bugs.webkit.org/show_bug.cgi?id=173091
603
604         Reviewed by Eric Carlson.
605
606         * WebView/WebPreferences.mm:
607         (+[WebPreferences initialize]):
608
609 2017-06-07  Jer Noble  <jer.noble@apple.com>
610
611         Clean-up: RenderElement.h includes headers it doesn't use
612         https://bugs.webkit.org/show_bug.cgi?id=173046
613
614         Reviewed by Andy Estes.
615
616         * WebView/WebImmediateActionController.mm:
617
618 2017-06-07  Zalan Bujtas  <zalan@apple.com>
619
620         [iOS WK1 WebThread] Do not call out to the main thread for device orientation.
621         https://bugs.webkit.org/show_bug.cgi?id=173044
622         <rdar://problem/32449338>
623
624         Reviewed by Tim Horton.
625
626         Cache the current device orientation so that we don't have to lift the WebThread lock
627         to collect it.
628
629         * WebView/WebFrame.mm:
630         (-[WebFrame deviceOrientationChanged]):
631         * WebView/WebView.mm:
632         (-[WebView _commonInitializationWithFrameName:groupName:]):
633         (-[WebView _setDeviceOrientation:]):
634         (-[WebView _deviceOrientation]):
635         * WebView/WebViewData.h:
636         * WebView/WebViewInternal.h:
637
638 2017-06-06  Jer Noble  <jer.noble@apple.com>
639
640         [Cocoa] Set defaults for mediaContentTypesRequiringHardwareSupport setting
641         https://bugs.webkit.org/show_bug.cgi?id=173008
642
643         Reviewed by Eric Carlson.
644
645         Add a private preference (with default) for the mediaContentTypesRequiringHardwareSupport WebCore setting.
646
647         * WebView/WebPreferenceKeysPrivate.h:
648         * WebView/WebPreferences.mm:
649         (+[WebPreferences initialize]):
650         (-[WebPreferences mediaUserGestureInheritsFromDocument]):
651         (-[WebPreferences setMediaUserGestureInheritsFromDocument:]):
652         * WebView/WebPreferencesPrivate.h:
653         * WebView/WebView.mm:
654         (-[WebView _preferencesChanged:]):
655
656 2017-06-06  Youenn Fablet  <youenn@apple.com>
657
658         Add an option to disable getUserMedia prompt in case of mock capture sources
659         https://bugs.webkit.org/show_bug.cgi?id=172981
660         <rdar://problem/32580325>
661
662         Reviewed by Eric Carlson.
663
664         Defining the option, getter and setter.
665
666         * WebView/WebPreferences.mm:
667         (+[WebPreferences initialize]):
668         (-[WebPreferences mockCaptureDevicesPromptEnabled]):
669         (-[WebPreferences setMockCaptureDevicesPromptEnabled:]):
670         * WebView/WebPreferencesPrivate.h:
671
672 2017-06-05  Dan Bernstein  <mitz@apple.com>
673
674         Tried to fix the build when targrting macOS 10.12 using the macOS 10.13 developer beta SDK.
675
676         * WebView/WebView.mm:
677         (-[WebView updateMediaTouchBar]):
678         * WebView/WebViewData.h:
679
680 2017-06-03  Darin Adler  <darin@apple.com>
681
682         Streamline handling of attributes, using references as much as possible
683         https://bugs.webkit.org/show_bug.cgi?id=172899
684
685         Reviewed by Chris Dumez.
686
687         * WebView/WebHTMLRepresentation.mm:
688         (matchLabelsAgainstElement): Added handling of nullptr since nothing guarantees the
689         passed in element can't be null. Removed unnecessary conversion from NSString to String
690         and then back to NSString.
691
692 2017-06-01  Andy Estes  <aestes@apple.com>
693
694         REGRESSION (r217626): ENABLE_APPLE_PAY_SESSION_V3 was disabled by mistake
695         https://bugs.webkit.org/show_bug.cgi?id=172828
696
697         Reviewed by Beth Dakin.
698
699         * Configurations/FeatureDefines.xcconfig:
700
701 2017-05-31  Andy Estes  <aestes@apple.com>
702
703         Rename ENABLE_APPLE_PAY_DELEGATE to ENABLE_APPLE_PAY_SESSION_V3 and bump the supported version number
704         https://bugs.webkit.org/show_bug.cgi?id=172366
705
706         Reviewed by Daniel Bates.
707
708         * Configurations/FeatureDefines.xcconfig:
709
710 2017-05-30  Ryosuke Niwa  <rniwa@webkit.org>
711
712         Only include DataDetectorsUI headers in iOS
713         https://bugs.webkit.org/show_bug.cgi?id=172633
714
715         Reviewed by David Kilzer.
716
717         Enable data detectors only on iOS and not other variants of iOS.
718
719         * WebCoreSupport/WebFrameLoaderClient.mm:
720
721 2017-05-30  Alex Christensen  <achristensen@webkit.org>
722
723         Update libwebrtc configuration
724         https://bugs.webkit.org/show_bug.cgi?id=172727
725
726         Reviewed by Geoffrey Garen.
727
728         * Configurations/FeatureDefines.xcconfig:
729
730 2017-05-28  Dan Bernstein  <mitz@apple.com>
731
732         [Xcode] ALWAYS_SEARCH_USER_PATHS is set to YES
733         https://bugs.webkit.org/show_bug.cgi?id=172691
734
735         Reviewed by Tim Horton.
736
737         * Configurations/Base.xcconfig: Set ALWAYS_SEARCH_USER_PATHS to NO.
738
739 2017-05-26  Brent Fulgham  <bfulgham@apple.com>
740
741         [WK2] Address thread safety issues with ResourceLoadStatistics
742         https://bugs.webkit.org/show_bug.cgi?id=172519
743         <rdar://problem/31707642>
744
745         Reviewed by Chris Dumez.
746
747         Create a new WorkQueue for the ResourceLoadStatistics store to use for processing data.
748
749         * WebView/WebView.mm:
750         (WebKitInitializeApplicationStatisticsStoragePathIfNecessary): Pass WorkQueue to the observer.
751
752 2017-05-25  Myles C. Maxfield  <mmaxfield@apple.com>
753
754         [WK1] iframes in layer-backed NSViews are not cleared between successive draws
755         https://bugs.webkit.org/show_bug.cgi?id=172554
756         <rdar://problem/31247133>
757
758         Reviewed by Simon Fraser.
759
760         Update an overridden internal AppKit function to the new signature.
761
762         * WebView/WebHTMLView.mm:
763         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:_recursive:displayRectIgnoringOpacity:inContext:topView:]):
764         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:shouldChangeFontReferenceColor:_recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]):
765         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]): Deleted.
766         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]): Deleted.
767
768 2017-05-24  Jer Noble  <jer.noble@apple.com>
769
770         Rename DisplaySleepDisabler -> SleepDisabler
771         https://bugs.webkit.org/show_bug.cgi?id=172478
772
773         Reviewed by Sam Weinig.
774
775         * WebView/WebFullScreenController.h:
776
777 2017-05-23  Simon Fraser  <simon.fraser@apple.com>
778
779         Stop consulting -viewsNeedDisplay when doing layer flushing in WebKit1
780         https://bugs.webkit.org/show_bug.cgi?id=172522
781         rdar://problem/31071812
782
783         Reviewed by Tim Horton.
784
785         There's no need to consult -[NSWindow viewsNeedDisplay] on newer OSes. It was
786         added in r58623, and modified in r61204 for Carbon apps, but with more recent AppKit
787         versions this synchronization is no longer required.
788
789         * WebView/WebView.mm:
790         (LayerFlushController::flushLayers):
791
792 2017-05-22  Simon Fraser  <simon.fraser@apple.com>
793
794         Snapshotting via -renderInContext: should do synchronous image decodes
795         https://bugs.webkit.org/show_bug.cgi?id=172485
796         rdar://problem/32276146
797
798         Reviewed by Tim Horton.
799
800         Remove the _setIncludesFlattenedCompositingLayersWhenDrawingToBitmap: SPI that no longer
801         has any callers.
802
803         * Plugins/WebBaseNetscapePluginView.h:
804         * Plugins/WebBaseNetscapePluginView.mm:
805         (-[WebBaseNetscapePluginView inFlatteningPaint]): Deleted.
806         * WebView/WebFrame.mm:
807         (-[WebFrame _paintBehaviorForDestinationContext:]):
808         (-[WebFrame _drawRect:contentsOnly:]):
809         (-[WebFrame _shouldFlattenCompositingLayers:]): Deleted.
810         * WebView/WebHTMLView.mm:
811         (imageFromRect):
812         * WebView/WebView.mm:
813         (-[WebView _commonInitializationWithFrameName:groupName:]):
814         (-[WebView _setIncludesFlattenedCompositingLayersWhenDrawingToBitmap:]): Deleted.
815         (-[WebView _includesFlattenedCompositingLayersWhenDrawingToBitmap]): Deleted.
816         * WebView/WebViewData.h:
817         * WebView/WebViewPrivate.h:
818
819 2017-05-23  Myles C. Maxfield  <mmaxfield@apple.com>
820
821         Remove dead ENABLE(FONT_LOAD_EVENTS) code
822         https://bugs.webkit.org/show_bug.cgi?id=172517
823
824         Rubber-stamped by Simon Fraser.
825
826         * Configurations/FeatureDefines.xcconfig:
827
828 2017-05-23  Emilio Cobos Álvarez  <ecobos@igalia.com>
829
830         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
831         https://bugs.webkit.org/show_bug.cgi?id=171984
832
833         Reviewed by Antti Koivisto.
834
835         * WebView/WebPreferenceKeysPrivate.h:
836         * WebView/WebPreferences.mm:
837         (+[WebPreferences initialize]):
838         (-[WebPreferences displayContentsEnabled]):
839         (-[WebPreferences setDisplayContentsEnabled:]):
840         * WebView/WebPreferencesPrivate.h:
841         * WebView/WebView.mm:
842         (-[WebView _preferencesChanged:]):
843
844 2017-05-22  Youenn Fablet  <youenn@apple.com>
845
846         Remove AVAudioCaptureSource
847         https://bugs.webkit.org/show_bug.cgi?id=172360
848
849         Reviewed by Sam Weinig.
850
851         Removing the handling of AVAudio/CoreAudio capture source dynamic switch.
852
853         * WebView/WebPreferenceKeysPrivate.h:
854         * WebView/WebPreferences.mm:
855         (+[WebPreferences initialize]):
856         (-[WebPreferences useAVFoundationAudioCapture]): Deleted.
857         (-[WebPreferences setUseAVFoundationAudioCapture:]): Deleted.
858         * WebView/WebPreferencesPrivate.h:
859         * WebView/WebView.mm:
860         (-[WebView _preferencesChanged:]):
861
862 2017-05-22  Sam Weinig  <sam@webkit.org>
863
864         [WebIDL] Support callbacks with arbitrary return types
865         https://bugs.webkit.org/show_bug.cgi?id=172407
866
867         Reviewed by Chris Dumez.
868
869         * DOM/DOM.mm:
870         (-[DOMNodeFilter acceptNode:]):
871         Update for CallbackResult adoption in the base class.
872
873         * DOM/DOMNodeIterator.mm:
874         * DOM/DOMTreeWalker.mm:
875         Update to account for new WebCore implementation return types. We return nil
876         if there was an exception, since retains the existing behavior if a javascript
877         NodeFilter had been used (an exception would cause all nodes to be rejected,
878         thus returning nullptr).
879
880         * DOM/ObjCNodeFilterCondition.h:
881         * DOM/ObjCNodeFilterCondition.mm:
882         Update to match new interface of NodeFilterCondition.
883
884 2017-05-18  Sam Weinig  <sam@webkit.org>
885
886         [WebIDL] Remove the need for the generator to know about native type mapping
887         https://bugs.webkit.org/show_bug.cgi?id=172310
888
889         Reviewed by Darin Adler.
890
891         * DOM/DOM.mm:
892         (-[DOMNodeFilter acceptNode:]):
893         Update to pass Node by reference.
894
895 2017-05-19  Yusuke Suzuki  <utatane.tea@gmail.com>
896
897         [JSC][DFG][DOMJIT] Extend CheckDOM to CheckSubClass
898         https://bugs.webkit.org/show_bug.cgi?id=172098
899
900         Reviewed by Saam Barati.
901
902         * Plugins/Hosted/ProxyInstance.mm:
903         * Plugins/Hosted/ProxyRuntimeObject.mm:
904
905 2017-05-18  Andy Estes  <aestes@apple.com>
906
907         ENABLE(APPLE_PAY_DELEGATE) should be NO on macOS Sierra and earlier
908         https://bugs.webkit.org/show_bug.cgi?id=172305
909
910         Reviewed by Anders Carlsson.
911
912         * Configurations/FeatureDefines.xcconfig:
913
914 2017-05-18  Commit Queue  <commit-queue@webkit.org>
915
916         Unreviewed, rolling out r217031, r217032, and r217037.
917         https://bugs.webkit.org/show_bug.cgi?id=172293
918
919         cause linking errors in Windows (Requested by yusukesuzuki on
920         #webkit).
921
922         Reverted changesets:
923
924         "[JSC][DFG][DOMJIT] Extend CheckDOM to CheckSubClass"
925         https://bugs.webkit.org/show_bug.cgi?id=172098
926         http://trac.webkit.org/changeset/217031
927
928         "Unreviewed, rebaseline for newly added ClassInfo"
929         https://bugs.webkit.org/show_bug.cgi?id=172098
930         http://trac.webkit.org/changeset/217032
931
932         "Unreviewed, fix debug and non-JIT build"
933         https://bugs.webkit.org/show_bug.cgi?id=172098
934         http://trac.webkit.org/changeset/217037
935
936 2017-05-16  Yusuke Suzuki  <utatane.tea@gmail.com>
937
938         [JSC][DFG][DOMJIT] Extend CheckDOM to CheckSubClass
939         https://bugs.webkit.org/show_bug.cgi?id=172098
940
941         Reviewed by Saam Barati.
942
943         * Plugins/Hosted/ProxyInstance.mm:
944         * Plugins/Hosted/ProxyRuntimeObject.mm:
945
946 2017-05-17  Matt Lewis  <jlewis3@apple.com>
947
948         Unreviewed, rolling out r216974.
949
950         Revision caused consistent timeouts on all platforms.
951
952         Reverted changeset:
953
954         "Add a RuntimeEnabledFeature for display: contents, defaulted
955         to false."
956         https://bugs.webkit.org/show_bug.cgi?id=171984
957         http://trac.webkit.org/changeset/216974
958
959 2017-05-17  Emilio Cobos Álvarez  <ecobos@igalia.com>
960
961         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
962         https://bugs.webkit.org/show_bug.cgi?id=171984
963
964         Reviewed by Antti Koivisto.
965
966         * WebView/WebPreferenceKeysPrivate.h:
967         * WebView/WebPreferences.mm:
968         (+[WebPreferences initialize]):
969         (-[WebPreferences displayContentsEnabled]):
970         (-[WebPreferences setDisplayContentsEnabled:]):
971         * WebView/WebPreferencesPrivate.h:
972         * WebView/WebView.mm:
973         (-[WebView _preferencesChanged:]):
974
975 2017-05-16  Sam Weinig  <sam@webkit.org>
976
977         Bring Notification.idl up to spec
978         https://bugs.webkit.org/show_bug.cgi?id=172156
979
980         Reviewed by Chris Dumez.
981
982         * WebCoreSupport/WebNotificationClient.h:
983         * WebCoreSupport/WebNotificationClient.mm:
984         (generateNotificationID):
985         (WebNotificationClient::show):
986         (WebNotificationClient::cancel):
987         (WebNotificationClient::clearNotifications):
988         (WebNotificationClient::notificationObjectDestroyed):
989         (WebNotificationClient::requestPermission):
990         (WebNotificationClient::hasPendingPermissionRequests):
991         (WebNotificationClient::checkPermission):
992         (-[WebNotificationPolicyListener allow]):
993         (-[WebNotificationPolicyListener deny]):
994         * WebView/WebNotification.mm:
995         (-[WebNotification iconURL]):
996         (-[WebNotification dir]):
997         Simplify #ifdefs and update for enum vs String usage.
998
999 2017-05-15  Said Abou-Hallawa  <sabouhallawa@apple.com>
1000
1001         Do not delete asynchronously decoded frames for large images if their clients are in the viewport
1002         https://bugs.webkit.org/show_bug.cgi?id=170640
1003
1004         Reviewed by Simon Fraser.
1005
1006         Enable the async decoding for large images.
1007
1008         * WebView/WebView.mm:
1009         (-[WebView _preferencesChanged:]):
1010
1011 2017-05-15  Jer Noble  <jer.noble@apple.com>
1012
1013         Add experimental setting to allow document gesture interaction to fulfill media playback gesture requirement
1014         https://bugs.webkit.org/show_bug.cgi?id=172131
1015
1016         Reviewed by Eric Carlson.
1017
1018         * WebView/WebPreferenceKeysPrivate.h:
1019         * WebView/WebPreferences.mm:
1020         (+[WebPreferences initialize]):
1021         (-[WebPreferences mediaUserGestureInheritsFromDocument]):
1022         (-[WebPreferences setMediaUserGestureInheritsFromDocument:]):
1023         * WebView/WebPreferencesPrivate.h:
1024
1025 2017-05-12  Chris Dumez  <cdumez@apple.com>
1026
1027         Drop uses of PassRefPtr in WebKit/mac
1028         https://bugs.webkit.org/show_bug.cgi?id=172066
1029
1030         Reviewed by Sam Weinig.
1031
1032         * History/WebBackForwardListInternal.h:
1033         * History/WebHistoryItem.mm:
1034         (kit):
1035         (-[WebHistoryItem initWithWebCoreHistoryItem:]):
1036         * History/WebHistoryItemInternal.h:
1037         * Plugins/Hosted/HostedNetscapePluginStream.h:
1038         (WebKit::HostedNetscapePluginStream::create):
1039         * Plugins/Hosted/NetscapePluginHostManager.h:
1040         * Plugins/Hosted/NetscapePluginHostManager.mm:
1041         (WebKit::NetscapePluginHostManager::instantiatePlugin):
1042         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
1043         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1044         (WebKit::NetscapePluginInstanceProxy::PluginRequest::create):
1045         (WebKit::NetscapePluginInstanceProxy::create):
1046         (WebKit::NetscapePluginInstanceProxy::setManualStream):
1047         * Plugins/Hosted/ProxyInstance.h:
1048         (WebKit::ProxyInstance::create):
1049         * Plugins/Hosted/ProxyInstance.mm:
1050         (WebKit::ProxyInstance::ProxyInstance):
1051         (WebKit::ProxyInstance::newRuntimeObject):
1052         * Plugins/Hosted/ProxyRuntimeObject.h:
1053         (WebKit::ProxyRuntimeObject::create):
1054         * Plugins/Hosted/ProxyRuntimeObject.mm:
1055         (WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
1056         * Plugins/Hosted/WebHostedNetscapePluginView.h:
1057         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1058         (-[WebHostedNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:]):
1059         * Plugins/WebBaseNetscapePluginView.h:
1060         * Plugins/WebBaseNetscapePluginView.mm:
1061         (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:]):
1062         * Plugins/WebNetscapePluginStream.h:
1063         (WebNetscapePluginStream::create):
1064         * Plugins/WebNetscapePluginView.h:
1065         * Plugins/WebNetscapePluginView.mm:
1066         (-[WebNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:]):
1067         * WebCoreSupport/WebChromeClient.mm:
1068         * WebCoreSupport/WebEditorClient.mm:
1069         * WebCoreSupport/WebNotificationClient.mm:
1070         (WebNotificationClient::requestPermission):
1071         (-[WebNotificationPolicyListener initWithCallback:]):
1072         * WebCoreSupport/WebOpenPanelResultListener.mm:
1073         * WebCoreSupport/WebUserMediaClient.mm:
1074         (WebUserMediaClient::requestUserMediaAccess):
1075         (WebUserMediaClient::enumerateMediaDevices):
1076         (-[WebUserMediaPolicyListener initWithUserMediaRequest:]):
1077         (-[WebUserMediaPolicyCheckerListener initWithMediaDevicesEnumerationRequest:]):
1078         * WebView/WebArchive.mm:
1079         (-[WebArchivePrivate initWithCoreArchive:]):
1080         (-[WebArchivePrivate setCoreArchive:]):
1081         (-[WebArchive initWithData:]):
1082         (-[WebArchive subframeArchives]):
1083         (-[WebArchive _initWithCoreLegacyWebArchive:]):
1084         * WebView/WebArchiveInternal.h:
1085         * WebView/WebDataSource.mm:
1086         (WebDataSourcePrivate::WebDataSourcePrivate):
1087         (WebDataSourcePrivate::~WebDataSourcePrivate):
1088         (-[WebDataSource _initWithDocumentLoader:]):
1089         * WebView/WebDataSourceInternal.h:
1090         * WebView/WebDeviceOrientation.mm:
1091         (-[WebDeviceOrientation initWithCoreDeviceOrientation:]):
1092         * WebView/WebDeviceOrientationInternal.h:
1093         * WebView/WebFrame.mm:
1094         (-[WebFrame _convertToDOMRange:]):
1095         (-[WebFrame _convertToDOMRange:rangeIsRelativeTo:]):
1096         * WebView/WebFrameInternal.h:
1097         * WebView/WebFullScreenController.h:
1098         * WebView/WebFullScreenController.mm:
1099         (-[WebFullScreenController setElement:]):
1100         * WebView/WebGeolocationPosition.mm:
1101         (-[WebGeolocationPositionInternal initWithCoreGeolocationPosition:]):
1102         (-[WebGeolocationPosition initWithGeolocationPosition:]):
1103         * WebView/WebHTMLView.mm:
1104         (currentKeyboardEvent):
1105         * WebView/WebResource.mm:
1106         * WebView/WebScriptWorld.mm:
1107         (-[WebScriptWorld initWithWorld:]):
1108         (+[WebScriptWorld standardWorld]):
1109         (+[WebScriptWorld findOrCreateWorld:]):
1110         * WebView/WebViewData.h:
1111         (LayerFlushController::create):
1112
1113 2017-05-11  Chris Dumez  <cdumez@apple.com>
1114
1115         Drop remaining uses of PassRefPtr in WebCore
1116         https://bugs.webkit.org/show_bug.cgi?id=172013
1117
1118         Reviewed by Yusuke Suzuki.
1119
1120         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
1121         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1122         (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
1123         (WebKit::NetscapePluginInstanceProxy::createBindingsInstance):
1124         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1125         (-[WebHostedNetscapePluginView createPluginBindingsInstance:]):
1126
1127 2017-05-11  Tim Horton  <timothy_horton@apple.com>
1128
1129         Mail spins launching spell checker when typing
1130         https://bugs.webkit.org/show_bug.cgi?id=171986
1131         <rdar://problem/26305327>
1132
1133         Reviewed by Beth Dakin.
1134
1135         * WebView/WebView.mm:
1136         (-[WebView setEditable:]):
1137         Asynchronously pre-warm the spell checker when a WebView becomes editable.
1138
1139 2017-05-09  Sam Weinig  <sam@webkit.org>
1140
1141         Remove support for legacy Notifications
1142         https://bugs.webkit.org/show_bug.cgi?id=171487
1143
1144         Reviewed by Jon Lee.
1145
1146         * Configurations/FeatureDefines.xcconfig:
1147         * WebCoreSupport/WebNotificationClient.h:
1148         * WebCoreSupport/WebNotificationClient.mm:
1149         * WebView/WebNotification.mm:
1150         * WebView/WebNotificationInternal.h:
1151         * WebView/WebView.mm:
1152         (-[WebView _commonInitializationWithFrameName:groupName:]):
1153         (-[WebView _notificationIDForTesting:]):
1154         Remove legacy notification specific code.
1155
1156 2017-05-10  Chris Dumez  <cdumez@apple.com>
1157
1158         Simplify relationship between Attr and Element now that Attr is childless
1159         https://bugs.webkit.org/show_bug.cgi?id=171909
1160
1161         Reviewed by Ryosuke Niwa.
1162
1163         Build fix.
1164
1165         * DOM/DOMAttr.mm:
1166         (-[DOMAttr value]):
1167         (-[DOMAttr setValue:]):
1168
1169 2017-05-08  Chris Dumez  <cdumez@apple.com>
1170
1171         Move 'style' from Element to HTMLElement / SVGElement and make it settable
1172         https://bugs.webkit.org/show_bug.cgi?id=171795
1173
1174         Reviewed by Alex Christensen.
1175
1176         Build fix.
1177
1178         * DOM/DOMElement.mm:
1179         (-[DOMElement style]):
1180         * WebCoreSupport/WebEditorClient.mm:
1181         (WebEditorClient::shouldApplyStyle):
1182         * WebView/WebFrame.mm:
1183         (-[WebFrame _typingStyle]):
1184
1185 2017-05-06  Chris Dumez  <cdumez@apple.com>
1186
1187         Align our IDL files with the latest DOM specification
1188         https://bugs.webkit.org/show_bug.cgi?id=171777
1189
1190         Reviewed by Sam Weinig.
1191
1192         Build fix.
1193
1194         * DOM/DOMDocument.mm:
1195         (-[DOMDocument readyState]):
1196
1197 2017-05-05  Jeremy Jones  <jeremyj@apple.com>
1198
1199         REGRESSION (r215951): LayoutTest media/modern-media-controls/placard-support/placard-support-pip.html is a flaky crash
1200         https://bugs.webkit.org/show_bug.cgi?id=171610
1201         <rdar://problem/31976820>
1202
1203         Reviewed by Eric Carlson.
1204
1205         Fullscreen state gets confused because WK1 WebChromeClient doesn't implement exitVideoFullscreenToModeWithoutAnimation.
1206
1207         * WebCoreSupport/WebChromeClient.h:
1208         * WebCoreSupport/WebChromeClient.mm:
1209         (WebChromeClient::exitVideoFullscreenToModeWithoutAnimation):
1210
1211 2017-05-04  Commit Queue  <commit-queue@webkit.org>
1212
1213         Unreviewed, rolling out r216206.
1214         https://bugs.webkit.org/show_bug.cgi?id=171714
1215
1216         Multiple LayoutTests crashing in Document::page() (Requested
1217         by ap on #webkit).
1218
1219         Reverted changeset:
1220
1221         "Remove support for legacy Notifications"
1222         https://bugs.webkit.org/show_bug.cgi?id=171487
1223         http://trac.webkit.org/changeset/216206
1224
1225 2017-05-04  Jeremy Jones  <jeremyj@apple.com>
1226
1227         UIColor +whiteColor and +clearColor are ambiguous and need to be casted when soft linked.
1228         https://bugs.webkit.org/show_bug.cgi?id=171704
1229
1230         Reviewed by Jer Noble.
1231
1232         Fix build by casting result of +whiteColor to UIColor.
1233
1234         * WebView/WebView.mm:
1235         (-[WebView _createImageWithPlatterForImage:boundingRect:contentScaleFactor:clippingRects:]):
1236
1237 2017-05-04  Sam Weinig  <sam@webkit.org>
1238
1239         Remove support for legacy Notifications
1240         https://bugs.webkit.org/show_bug.cgi?id=171487
1241
1242         Reviewed by Jon Lee.
1243
1244         * Configurations/FeatureDefines.xcconfig:
1245         * WebCoreSupport/WebNotificationClient.h:
1246         * WebCoreSupport/WebNotificationClient.mm:
1247         * WebView/WebNotification.mm:
1248         * WebView/WebNotificationInternal.h:
1249         * WebView/WebView.mm:
1250         (-[WebView _commonInitializationWithFrameName:groupName:]):
1251         (-[WebView _notificationIDForTesting:]):
1252         Remove legacy notification specific code.
1253
1254 2017-05-03  Joseph Pecoraro  <pecoraro@apple.com>
1255
1256         [Cocoa] Stop exporting symbols for ivars that were made private
1257         https://bugs.webkit.org/show_bug.cgi?id=171631
1258
1259         Reviewed by Dan Bernstein.
1260
1261         * WebKit.exp:
1262
1263 2017-05-01  Chris Dumez  <cdumez@apple.com>
1264
1265         Remove some usage of PassRefPtr in editing code
1266         https://bugs.webkit.org/show_bug.cgi?id=171490
1267
1268         Reviewed by Darin Adler.
1269
1270         * WebView/WebFrame.mm:
1271         (-[WebFrame dictationResultMetadataForRange:]):
1272         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
1273
1274 2017-05-01  Beth Dakin  <bdakin@apple.com>
1275
1276         On-screen panel for candidate bar is in the wrong place when the caret is at the 
1277         start of a paragraph
1278         https://bugs.webkit.org/show_bug.cgi?id=171453
1279         -and corresponding-
1280         rdar://problem/29779764
1281
1282         Reviewed by Tim Horton.
1283
1284         This bug only happens when the caret is at the beginning of the paragraph, and it 
1285         is because Range::absoluteTextQuads() returns no quads in this case. I think it 
1286         might be correct that absoluteTextQuads() returns no quads in this case, so this 
1287         patch fixes the bug at the call site by using absoluteCaretBounds() in this case.
1288
1289         * WebCoreSupport/WebEditorClient.mm:
1290         (WebEditorClient::handleRequestedCandidates):
1291
1292 2017-04-30  Dan Bernstein  <mitz@apple.com>
1293
1294         [Cocoa] Replaces uses of [get…() alloc] with alloc…Instance()
1295         https://bugs.webkit.org/show_bug.cgi?id=171485
1296
1297         Reviewed by Geoffrey Garen.
1298
1299         * WebView/WebView.mm:
1300         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
1301         (-[WebUITextIndicatorData initWithImage:scale:]):
1302
1303 2017-04-28  Youenn Fablet  <youenn@apple.com>
1304
1305         Adding a runtime flag specific to MediaDevices
1306         https://bugs.webkit.org/show_bug.cgi?id=171433
1307
1308         Reviewed by Geoffrey Garen.
1309
1310         Adding a preference for MediaDevices.
1311         Setting media devices runtime flag to false by default.
1312         Setting peer connection and media stream flags to true by default.
1313
1314         * WebView/WebPreferenceKeysPrivate.h:
1315         * WebView/WebPreferences.mm:
1316         (+[WebPreferences initialize]):
1317         (-[WebPreferences mediaDevicesEnabled]):
1318         (-[WebPreferences setMediaDevicesEnabled:]):
1319         * WebView/WebPreferencesPrivate.h:
1320         * WebView/WebView.mm:
1321         (-[WebView _preferencesChanged:]):
1322
1323 2017-04-27  Chris Dumez  <cdumez@apple.com>
1324
1325         Align colspan/rowspan limits with the latest HTML specification
1326         https://bugs.webkit.org/show_bug.cgi?id=171322
1327
1328         Reviewed by Darin Adler.
1329
1330         ObjC bindings build fix.
1331
1332         * DOM/DOMHTMLTableCellElement.mm:
1333         (-[DOMHTMLTableCellElement colSpan]):
1334         (-[DOMHTMLTableCellElement setColSpan:]):
1335
1336 2017-04-27  Said Abou-Hallawa  <sabouhallawa@apple.com>
1337
1338         REGRESSION(r213764): Async decoding of animated images is disabled for ImageDocument
1339         https://bugs.webkit.org/show_bug.cgi?id=170333
1340
1341         Reviewed by Simon Fraser.
1342
1343         Disbale the async decoding for large images for now.
1344
1345         * WebView/WebView.mm:
1346         (-[WebView _preferencesChanged:]):
1347
1348 2017-04-27  Alex Christensen  <achristensen@webkit.org>
1349
1350         Modernize Frame.h
1351         https://bugs.webkit.org/show_bug.cgi?id=171357
1352
1353         Reviewed by Andy Estes.
1354
1355         * WebCoreSupport/WebEditorClient.h:
1356         * WebCoreSupport/WebEditorClient.mm:
1357         (WebEditorClient::isSelectTrailingWhitespaceEnabled):
1358
1359 2017-04-27  Wenson Hsieh  <wenson_hsieh@apple.com>
1360
1361         [WK1] Tweak the data interaction SPI to indicate whether or not a data interaction was handled
1362         https://bugs.webkit.org/show_bug.cgi?id=171369
1363         <rdar://problem/31858853>
1364
1365         Reviewed by Dan Bernstein.
1366
1367         Introduce a new SPI hook intended to replace performDataInteraction:client:global:operation: that
1368         returns whether or not the data interaction was handled. Due to the difference only in return type
1369         and some staging constraints, this version is prefixed with "_tryTo".
1370
1371         * WebView/WebView.mm:
1372         (-[WebView _tryToPerformDataInteraction:client:global:operation:]):
1373         * WebView/WebViewPrivate.h:
1374
1375 2017-04-26  Wenson Hsieh  <wenson_hsieh@apple.com>
1376
1377         WebItemProviderPasteboard should not synchronously load provided data
1378         https://bugs.webkit.org/show_bug.cgi?id=171341
1379         <rdar://problem/31614010>
1380
1381         Reviewed by Tim Horton.
1382
1383         Adds client-layer plumbing for updatePreferredTypeIdentifiers. See WebCore ChangeLog for more details.
1384
1385         * WebCoreSupport/WebPlatformStrategies.h:
1386         * WebCoreSupport/WebPlatformStrategies.mm:
1387         (WebPlatformStrategies::updatePreferredTypeIdentifiers):
1388
1389 2017-04-26  Zalan Bujtas  <zalan@apple.com>
1390
1391         RTL: recent searches popover is displayed in incorrect location
1392         https://bugs.webkit.org/show_bug.cgi?id=171338
1393         <rdar://problem/31377807>
1394
1395         Reviewed by Dean Jackson.
1396
1397         Add RTL support for the pop-under branch.
1398
1399         * WebCoreSupport/PopupMenuMac.mm:
1400         (PopupMenuMac::show):
1401
1402 2017-04-25  Brent Fulgham  <bfulgham@apple.com>
1403
1404         Limit allowed size of document.title to avoid locking WebKit clients
1405         https://bugs.webkit.org/show_bug.cgi?id=165113
1406         <rdar://problem/28324389>
1407
1408         Reviewed by Darin Adler.
1409
1410         When a web application attempts to set an extremely long title, truncate the
1411         title to a more reasonable size.
1412
1413         We do this at at the presentation layer, rather than in the DOM, so that we do
1414         not affect script function. Instead, we merely limit display to a level that is
1415         reasonable for normal GUI widgets. Anything else needs to be truncated in the UI
1416         layer, so it is a waste of effort to send across IPC.
1417
1418         * WebCoreSupport/WebFrameLoaderClient.h:
1419         * WebCoreSupport/WebFrameLoaderClient.mm:
1420         (WebFrameLoaderClient::dispatchDidReceiveTitle):
1421
1422 2017-04-25  Daniel Bates  <dabates@apple.com>
1423
1424         [Cocoa][Win] Enable of X-Content-Type-Options: nosniff header
1425         https://bugs.webkit.org/show_bug.cgi?id=136452
1426         <rdar://problem/23412620>
1427
1428         Reviewed by Brent Fulgham.
1429
1430         Enable X-Content-Type-Options: nosniff on Mac, iOS and Windows platforms.
1431
1432         * Configurations/FeatureDefines.xcconfig:
1433
1434 2017-04-25  Wenson Hsieh  <wenson_hsieh@apple.com>
1435
1436         Support reading NSURL titles from the pasteboard when performing data interaction
1437         https://bugs.webkit.org/show_bug.cgi?id=171156
1438         <rdar://problem/31356937>
1439
1440         Reviewed by Tim Horton.
1441
1442         Add a new WK1 SPI property, -[WebFrame hasRichlyEditableDragCaret].
1443
1444         * WebCoreSupport/WebPlatformStrategies.h:
1445         * WebCoreSupport/WebPlatformStrategies.mm:
1446         (WebPlatformStrategies::readURLFromPasteboard):
1447         * WebView/WebFrame.mm:
1448         (-[WebFrame hasRichlyEditableDragCaret]):
1449         * WebView/WebFramePrivate.h:
1450
1451 2017-04-24  Andy VanWagoner  <thetalecrafter@gmail.com>
1452
1453         Clean up ICU headers
1454         https://bugs.webkit.org/show_bug.cgi?id=170997
1455
1456         Reviewed by JF Bastien.
1457
1458         Update all icu headers to 55.1
1459
1460         * icu/README: Explain ICU headers for OS X better
1461         * icu/unicode/localpointer.h:
1462         (LocalPointer::LocalPointer):
1463         (LocalPointer::adoptInsteadAndCheckErrorCode):
1464         * icu/unicode/platform.h:
1465         * icu/unicode/putil.h:
1466         * icu/unicode/uchar.h:
1467         * icu/unicode/uconfig.h:
1468         * icu/unicode/ucurr.h:
1469         * icu/unicode/uidna.h:
1470         * icu/unicode/umachine.h:
1471         * icu/unicode/urename.h:
1472         * icu/unicode/uscript.h:
1473         * icu/unicode/ustring.h:
1474         * icu/unicode/utf8.h:
1475         * icu/unicode/utypes.h:
1476         * icu/unicode/uvernum.h:
1477
1478 2017-04-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1479
1480         Respect fidelity order when reading web content from item providers
1481         https://bugs.webkit.org/show_bug.cgi?id=171155
1482         <rdar://problem/31356937>
1483
1484         Reviewed by Tim Horton.
1485
1486         Adjusts for changes in WebCore (see WebCore/ChangeLog for more details).
1487
1488         * WebCoreSupport/WebPlatformStrategies.h:
1489         * WebCoreSupport/WebPlatformStrategies.mm:
1490         (WebPlatformStrategies::getTypesByFidelityForItemAtIndex):
1491
1492 2017-04-24  Alex Christensen  <achristensen@webkit.org>
1493
1494         Reduce copies and allocations in SharedBuffer::append
1495         https://bugs.webkit.org/show_bug.cgi?id=170956
1496
1497         Reviewed by Andreas Kling.
1498
1499         * WebView/WebArchive.mm:
1500         (-[WebArchive initWithData:]):
1501         * WebView/WebFrame.mm:
1502         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
1503         * WebView/WebResource.mm:
1504         (-[WebResource initWithCoder:]):
1505         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
1506
1507 2017-04-24  Dan Bernstein  <mitz@apple.com>
1508
1509         [Cocoa] Some ivars are needlessly @protected
1510         https://bugs.webkit.org/show_bug.cgi?id=171208
1511
1512         Reviewed by Anders Carlsson
1513
1514         Made ivars @private where possible.
1515
1516         * Misc/WebUserContentURLPattern.h:
1517         * Plugins/WebPluginDatabase.h:
1518         * Storage/WebDatabaseQuotaManager.h:
1519         * WebCoreSupport/WebSecurityOriginPrivate.h:
1520         * WebInspector/WebInspector.h:
1521         * WebView/WebDeviceOrientation.h:
1522         * WebView/WebDeviceOrientationProviderMock.h:
1523         * WebView/WebGeolocationPosition.h:
1524         * WebView/WebHTMLRepresentation.h:
1525         * WebView/WebNotification.h:
1526
1527 2017-04-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1528
1529         Support writing link titles to the pasteboard when beginning data interaction on a link
1530         https://bugs.webkit.org/show_bug.cgi?id=171154
1531         <rdar://problem/31356937>
1532
1533         Reviewed by Andy Estes.
1534
1535         Adjust for some changes in WebCore to introduce a separate codepath for writing PasteboardURLs. See WebCore
1536         and WebKit2 ChangeLogs for more details.
1537
1538         * WebCoreSupport/WebPlatformStrategies.h:
1539         * WebCoreSupport/WebPlatformStrategies.mm:
1540         (WebPlatformStrategies::writeToPasteboard):
1541
1542 2017-04-21  Michael Catanzaro  <mcatanzaro@igalia.com>
1543
1544         Unreviewed, rolling out r215608.
1545
1546         Hundreds of test failures on GTK bot
1547
1548         Reverted changeset:
1549
1550         "Reduce copies and allocations in SharedBuffer::append"
1551         https://bugs.webkit.org/show_bug.cgi?id=170956
1552         http://trac.webkit.org/changeset/215608
1553
1554 2017-04-21  Alex Christensen  <achristensen@webkit.org>
1555
1556         Reduce copies and allocations in SharedBuffer::append
1557         https://bugs.webkit.org/show_bug.cgi?id=170956
1558
1559         Reviewed by Andreas Kling.
1560
1561         * WebView/WebArchive.mm:
1562         (-[WebArchive initWithData:]):
1563         * WebView/WebFrame.mm:
1564         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
1565         * WebView/WebResource.mm:
1566         (-[WebResource initWithCoder:]):
1567         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
1568
1569 2017-04-20  Dewei Zhu  <dewei_zhu@apple.com>
1570
1571         Build fix to start using C++14.
1572         https://bugs.webkit.org/show_bug.cgi?id=171038
1573
1574         Reviewed by Alex Christensen.
1575
1576         Use 'c++14' instead of 'c++11' in order to use 'auto' in lambda.
1577
1578         * Configurations/WebKitLegacy.xcconfig:
1579
1580 2017-04-19  Youenn Fablet  <youenn@apple.com>
1581
1582         [Mac] Allow customizing H264 encoder
1583         https://bugs.webkit.org/show_bug.cgi?id=170829
1584
1585         Reviewed by Alex Christensen.
1586
1587         * Configurations/FeatureDefines.xcconfig:
1588
1589 2017-04-19  Anders Carlsson  <andersca@apple.com>
1590
1591         Stop using deprecated APIs, part 3
1592         https://bugs.webkit.org/show_bug.cgi?id=171003
1593         rdar://problem/31589635
1594
1595         Reviewed by Tim Horton.
1596
1597         * WebCoreSupport/WebPaymentCoordinatorClient.h:
1598         * WebCoreSupport/WebPaymentCoordinatorClient.mm:
1599         (WebPaymentCoordinatorClient::cancelPaymentSession):
1600         Update for WebCore changes.
1601
1602 2017-04-18  Wenson Hsieh  <wenson_hsieh@apple.com>
1603
1604         [WK2] Support DataTransfer::files() when performing a DHTML data interaction
1605         https://bugs.webkit.org/show_bug.cgi?id=170880
1606         <rdar://problem/31314689>
1607
1608         Reviewed by Tim Horton.
1609
1610         Adjust for a change in PasteboardStrategy. See WebCore ChangeLog for more details.
1611
1612         * WebCoreSupport/WebPlatformStrategies.h:
1613         * WebCoreSupport/WebPlatformStrategies.mm:
1614         (WebPlatformStrategies::getFilenamesForDataInteraction):
1615
1616 2017-04-17  Youenn Fablet  <youenn@apple.com>
1617
1618         Disable outdated WritableStream API
1619         https://bugs.webkit.org/show_bug.cgi?id=170749
1620         <rdar://problem/31446233>
1621
1622         Reviewed by Alex Christensen.
1623
1624         Replacing READABLE_STREAM_API, READABLE_BYTE_STREAM_API and WRITABLE_STREAM_API compilation flag by:
1625         - A STREAMS_API compilation flag.
1626         - A ReadableByteStreamAPI and WritableStreamAPI runtime flags, turned off except for RWT and DRT.
1627
1628         * Configurations/FeatureDefines.xcconfig:
1629         * WebView/WebPreferenceKeysPrivate.h:
1630         * WebView/WebPreferences.mm:
1631         (+[WebPreferences initialize]):
1632         (-[WebPreferences readableByteStreamAPIEnabled]):
1633         (-[WebPreferences setReadableByteStreamAPIEnabled:]):
1634         (-[WebPreferences writableStreamAPIEnabled]):
1635         (-[WebPreferences setWritableStreamAPIEnabled:]):
1636         * WebView/WebPreferencesPrivate.h:
1637         * WebView/WebView.mm:
1638         (-[WebView _preferencesChanged:]):
1639
1640 2017-04-15  Wenson Hsieh  <wenson_hsieh@apple.com>
1641
1642         [WK2] Support data interaction of files into file inputs
1643         https://bugs.webkit.org/show_bug.cgi?id=170803
1644         <rdar://problem/31286130>
1645
1646         Reviewed by Tim Horton.
1647
1648         Add boilerplate plumbing for fetching the number of files in the pasteboard.
1649
1650         * WebCoreSupport/WebPlatformStrategies.h:
1651         * WebCoreSupport/WebPlatformStrategies.mm:
1652         (WebPlatformStrategies::getNumberOfFiles):
1653
1654 2017-04-14  Mark Lam  <mark.lam@apple.com>
1655
1656         Update architectures in xcconfig files.
1657         https://bugs.webkit.org/show_bug.cgi?id=170867
1658         <rdar://problem/31628104>
1659
1660         Reviewed by Joseph Pecoraro.
1661
1662         * Configurations/FeatureDefines.xcconfig:
1663
1664 2017-04-14  Wenson Hsieh  <wenson_hsieh@apple.com>
1665
1666         [WK2] Support Icon creation from file URLs on iOS
1667         https://bugs.webkit.org/show_bug.cgi?id=170809
1668         <rdar://problem/31286130>
1669
1670         Reviewed by Tim Horton.
1671
1672         Adjust for changes in the ChromeClient in WebCore.
1673
1674         * WebCoreSupport/WebChromeClient.h:
1675         * WebCoreSupport/WebChromeClient.mm:
1676         (WebChromeClient::loadIconForFiles):
1677         (WebChromeClient::createIconForFiles):
1678
1679 2017-04-12  Dan Bernstein  <mitz@apple.com>
1680
1681         [Mac] Future-proof .xcconfig files
1682         https://bugs.webkit.org/show_bug.cgi?id=170802
1683
1684         Reviewed by Tim Horton.
1685
1686         * Configurations/Base.xcconfig:
1687         * Configurations/DebugRelease.xcconfig:
1688         * Configurations/FeatureDefines.xcconfig:
1689         * Configurations/Version.xcconfig:
1690
1691 2017-04-12  Beth Dakin  <bdakin@apple.com>
1692
1693         Build fix.
1694
1695         * WebView/WebViewData.h:
1696
1697 2017-04-12  Brian Weinstein  <bweinstein@apple.com>
1698
1699         Should always override -[WebStorageManager init].
1700         https://bugs.webkit.org/show_bug.cgi?id=170787
1701         -and corresponding-
1702         rdar://problem/31371835
1703
1704         Reviewed by Anders Carlsson.
1705
1706         * Storage/WebStorageManager.mm:
1707         (-[WebStorageManager init]):
1708
1709 2017-04-12  Beth Dakin  <bdakin@apple.com>
1710
1711         Speculative build fix. 
1712
1713         * WebView/WebViewData.h:
1714
1715 2017-04-12  Beth Dakin  <bdakin@apple.com>
1716
1717         Adopt AVKit name change from AVFunctionBar* to AVTouchBar*
1718         https://bugs.webkit.org/show_bug.cgi?id=170693
1719         -and corresponding-
1720         rdar://problem/31230018
1721
1722         Reviewed by Sam Weinig.
1723
1724         Since the new names only apply to some versions of macOS, this patch uses typedefs 
1725         for the older OS’s. SO:
1726
1727         AVFunctionBarScrubber is now AVTouchBarScrubber
1728
1729         AVFunctionBarPlaybackControlsProvider is now AVTouchBarPlaybackControlsProvider
1730
1731         AVFunctionBarMediaSelectionOption is now AVTouchBarMediaSelectionOption
1732
1733         And the protocol AVFunctionBarPlaybackControlsControlling is now 
1734         AVTouchBarPlaybackControlsControlling
1735
1736         Soft links and allocations cannot use the typedefs.
1737         * WebView/WebView.mm:
1738         (-[WebView updateMediaTouchBar]):
1739         * WebView/WebViewData.h:
1740
1741 2017-04-11  Dean Jackson  <dino@apple.com>
1742
1743         Disable outdated WritableStream API
1744         https://bugs.webkit.org/show_bug.cgi?id=170749
1745         <rdar://problem/31446233>
1746
1747         Reviewed by Tim Horton.
1748
1749         The API we implement is no longer accurate. Disable it until we
1750         are compatible with the new specification
1751
1752         * Configurations/FeatureDefines.xcconfig:
1753
1754 2017-04-11  Dan Bernstein  <mitz@apple.com>
1755
1756         [iOS] Simple HTML documents should allow non-markup JavaScript
1757         https://bugs.webkit.org/show_bug.cgi?id=170734
1758
1759         Reviewed by Sam Weinig.
1760
1761         * WebView/WebView.mm:
1762         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]): Enabled scripting
1763           but disabled scripting markup.
1764
1765 2017-04-10  Alex Christensen  <achristensen@webkit.org>
1766
1767         Revert r215217
1768         https://bugs.webkit.org/show_bug.cgi?id=170703
1769
1770         * Configurations/FeatureDefines.xcconfig:
1771
1772 2017-04-10  Alex Christensen  <achristensen@webkit.org>
1773
1774         Continue enabling WebRTC
1775         https://bugs.webkit.org/show_bug.cgi?id=170703
1776
1777         Reviewed by Youenn Fablet.
1778
1779         * Configurations/FeatureDefines.xcconfig:
1780
1781 2017-04-10  Anders Carlsson  <andersca@apple.com>
1782
1783         Remove call to WKShowKeyAndMain
1784         https://bugs.webkit.org/show_bug.cgi?id=170691
1785         rdar://problem/31050032
1786
1787         Reviewed by Beth Dakin.
1788
1789         * Carbon/CarbonWindowAdapter.mm:
1790         (-[CarbonWindowAdapter makeKeyWindow]):
1791
1792 2017-04-10  Jeremy Jones  <jeremyj@apple.com>
1793
1794         Add CoreAudioCaptureSource.
1795         https://bugs.webkit.org/show_bug.cgi?id=170112
1796         rdar://problem/30293338
1797
1798         Reviewed by Eric Carlson.
1799
1800         Add UseAVFoundationAudioCapture preference to switch back from the new default of CoreAudio.
1801
1802         * WebView/WebPreferenceKeysPrivate.h:
1803         * WebView/WebPreferences.mm:
1804         (+[WebPreferences initialize]):
1805         (-[WebPreferences useAVFoundationAudioCapture]):
1806         (-[WebPreferences setUseAVFoundationAudioCapture:]):
1807         * WebView/WebPreferencesPrivate.h:
1808         * WebView/WebView.mm:
1809         (-[WebView _preferencesChanged:]):
1810
1811 2017-04-10  Chris Dumez  <cdumez@apple.com>
1812
1813         Drop Timer::startOneShot() overload taking a double
1814         https://bugs.webkit.org/show_bug.cgi?id=170659
1815
1816         Reviewed by Yusuke Suzuki.
1817
1818         Drop Timer::startOneShot() overload taking a double as people should use Seconds type now.
1819
1820         * Plugins/WebNetscapePluginView.mm:
1821         (PluginTimer::start):
1822         * Storage/WebStorageManager.mm:
1823         (+[WebStorageManager setStorageDatabaseIdleInterval:]):
1824
1825 2017-04-09  Chris Dumez  <cdumez@apple.com>
1826
1827         Drop Timer::startRepeating() overload taking a double
1828         https://bugs.webkit.org/show_bug.cgi?id=170656
1829
1830         Reviewed by Yusuke Suzuki.
1831
1832         Drop Timer::startRepeating() overload taking a double as people should use Seconds type now.
1833
1834         * Plugins/WebNetscapePluginView.mm:
1835         (PluginTimer::start):
1836
1837 2017-04-09  Chris Dumez  <cdumez@apple.com>
1838
1839         Start dropping Timer API dealing with double
1840         https://bugs.webkit.org/show_bug.cgi?id=170649
1841
1842         Reviewed by Yusuke Suzuki.
1843
1844         Start dropping Timer API dealing with double as people should use Seconds now.
1845
1846         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1847         (WebKit::NetscapePluginInstanceProxy::requestTimerFired):
1848         (WebKit::NetscapePluginInstanceProxy::loadRequest):
1849         * Plugins/WebNetscapePluginStream.mm:
1850         (WebNetscapePluginStream::deliverData):
1851
1852 2017-04-08  Chris Dumez  <cdumez@apple.com>
1853
1854         Drop std::chrono support from Timer class
1855         https://bugs.webkit.org/show_bug.cgi?id=170645
1856
1857         Reviewed by Sam Weinig.
1858
1859         Drop std::chrono support from Timer class now that we prefer using Seconds type.
1860
1861         * WebView/WebView.mm:
1862         (+[WebView _setCacheModel:]):
1863
1864 2017-04-08  Youenn Fablet  <youenn@apple.com>
1865
1866         WebRTC tests gardening
1867         https://bugs.webkit.org/show_bug.cgi?id=170508
1868
1869         Reviewed by Eric Carlson.
1870
1871         * Configurations/FeatureDefines.xcconfig:
1872
1873 2017-04-06  Ryan Haddad  <ryanhaddad@apple.com>
1874
1875         Unreviewed, rolling out r215046.
1876
1877         This change broke internal builds.
1878
1879         Reverted changeset:
1880
1881         "WebRTC tests gardening"
1882         https://bugs.webkit.org/show_bug.cgi?id=170508
1883         http://trac.webkit.org/changeset/215046
1884
1885 2017-04-06  Tim Horton  <timothy_horton@apple.com>
1886
1887         Obj-C bindings build fails with CSS_DEVICE_ADAPTATION turned on
1888         https://bugs.webkit.org/show_bug.cgi?id=170566
1889
1890         Reviewed by Simon Fraser.
1891
1892         * DOM/DOMCSS.mm:
1893         (kitClass):
1894         Use the WebCore-side enum for this, since that's actually what we're switching over.
1895         This allows us to handle values here without adding them to the API header.
1896         All of the other kitClass() functions work the same way.
1897         Also, unindent for style purposes.
1898
1899 2017-04-06  Youenn Fablet  <youenn@apple.com>
1900
1901         WebRTC tests gardening
1902         https://bugs.webkit.org/show_bug.cgi?id=170508
1903
1904         Reviewed by Eric Carlson.
1905
1906         * Configurations/FeatureDefines.xcconfig:
1907
1908 2017-04-04  Megan Gardner  <megan_gardner@apple.com>
1909
1910         Fix leaks in WebUITextIndicatorData
1911         https://bugs.webkit.org/show_bug.cgi?id=170480
1912
1913         Reviewed by Wenson Hsieh.
1914
1915         Removes extraneous retains.
1916
1917         * WebView/WebView.mm:
1918         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
1919
1920 2017-04-04  Tim Horton  <timothy_horton@apple.com>
1921
1922         [Mac] -[WKWebView findMatchesForString:relativeToMatch:findOptions:maxResults:resultCollector:] invokes the resultCollector with didWrap = NO even when it wraps
1923         https://bugs.webkit.org/show_bug.cgi?id=165801
1924         <rdar://problem/29649535>
1925
1926         Reviewed by Wenson Hsieh.
1927
1928         * WebView/WebView.mm:
1929         (incrementFrame):
1930         Adjust to the new CanWrap enum.
1931
1932 2017-03-27  Joseph Pecoraro  <pecoraro@apple.com>
1933
1934         Web Inspector: Saving files should not suggest the top level directory
1935         https://bugs.webkit.org/show_bug.cgi?id=170085
1936         <rdar://problem/30197794>
1937
1938         Reviewed by Matt Baker.
1939
1940         * WebCoreSupport/WebInspectorClient.mm:
1941         (WebInspectorFrontendClient::save):
1942         Don't set panel.directoryURL unless we have a good suggestion.
1943
1944 2017-03-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1945
1946         [WK2] Add a UI delegate SPI hook to enable or disable navigation on drop
1947         https://bugs.webkit.org/show_bug.cgi?id=169168
1948         <rdar://problem/30688374>
1949
1950         Reviewed by Tim Horton.
1951
1952         Refactors WebDragClient::actionMaskForDrag to take platform data only, rather than the entire DragData. See the
1953         WebCore ChangeLog entry for more details. Also renames WebDefaultUIDelegate.m to WebDefaultUIDelegate.mm, since
1954         we need to import a C++ header for linkedOnOrAfter().
1955
1956         The default delegate implementation of webView:dragDestinationActionMaskForDraggingInfo: now checks if the current
1957         application is linking against 10.12 or earlier, and if so, will allow any drag destination action instead of
1958         the new default value of everything but DragDestinationActionLoad.
1959
1960         * DefaultDelegates/WebDefaultUIDelegate.mm: Renamed from Source/WebKit/mac/DefaultDelegates/WebDefaultUIDelegate.m.
1961         (-[WebDefaultUIDelegate webView:dragDestinationActionMaskForDraggingInfo:]):
1962         * Misc/WebKitVersionChecks.h:
1963         * WebCoreSupport/WebDragClient.h:
1964         * WebCoreSupport/WebDragClient.mm:
1965         (WebDragClient::actionMaskForDrag): Deleted.
1966         * WebView/WebView.mm:
1967         (-[WebView draggingEntered:]):
1968         (-[WebView draggingUpdated:]):
1969
1970 2017-03-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1971
1972         Add support for showing the platform data interaction caret
1973         https://bugs.webkit.org/show_bug.cgi?id=169898
1974         <rdar://problem/31146295>
1975
1976         Reviewed by Beth Dakin.
1977
1978         Plumb the dataInteractionCaretRect through WebView SPI to WebKit1 clients.
1979
1980         * WebView/WebView.mm:
1981         (-[WebView _dataInteractionCaretRect]):
1982         * WebView/WebViewPrivate.h:
1983
1984 2017-03-22  Dan Bernstein  <mitz@apple.com>
1985
1986         [iOS] downloadableBinaryFontsEnabled is set to false in -initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:
1987         https://bugs.webkit.org/show_bug.cgi?id=169967
1988         <rdar://problem/30406898>
1989
1990         Reviewed by Anders Carlsson.
1991
1992         * WebView/WebView.mm:
1993         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]): Removed call to
1994           Settings::downloadableBinaryFontsEnabled. The default is true.
1995
1996 2017-03-22  Andy Estes  <aestes@apple.com>
1997
1998         [QuickLook] Rename QuickLookHandle to PreviewLoader
1999         https://bugs.webkit.org/show_bug.cgi?id=169961
2000
2001         Reviewed by Andreas Kling.
2002
2003         * WebCoreSupport/WebFrameLoaderClient.h:
2004         * WebCoreSupport/WebFrameLoaderClient.mm:
2005         (WebFrameLoaderClient::createPreviewLoaderClient):
2006         (WebFrameLoaderClient::createQuickLookHandleClient): Deleted.
2007
2008 2017-03-21  Anders Carlsson  <andersca@apple.com>
2009
2010         Remove bogus availability annotations from DOM SPI headers.
2011         rdar://problem/31015675
2012
2013         Rubber-stamped by Dan Bernstein.
2014
2015         * DOM/DOMHTMLMediaElement.h:
2016         * DOM/DOMHTMLVideoElement.h:
2017         * DOM/DOMMediaError.h:
2018         * DOM/DOMTextEvent.h:
2019         * DOM/DOMTimeRanges.h:
2020         * DOM/DOMTokenList.h:
2021
2022 2017-03-19  Wenson Hsieh  <wenson_hsieh@apple.com>
2023
2024         Teach TextIndicator to estimate the background color of the given Range
2025         https://bugs.webkit.org/show_bug.cgi?id=169869
2026         <rdar://problem/31127272>
2027
2028         Reviewed by Anders Carlsson and Simon Fraser.
2029
2030         Plumb the estimated background color for WebKit1 clients through a new property in WebUITextIndicatorData.
2031
2032         * WebView/WebView.mm:
2033         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
2034         (-[WebUITextIndicatorData dealloc]):
2035         * WebView/WebViewPrivate.h:
2036
2037 2017-03-20  Dan Bernstein  <mitz@apple.com>
2038
2039         [Xcode] Incremental builds of WebKitLegacy are slow because of the Postprocess Headers phase
2040         https://bugs.webkit.org/show_bug.cgi?id=169861
2041
2042         Reviewed by Sam Weinig.
2043
2044         * MigrateHeaders.make: Touch the PrivateHeaders directory when migrating a header into it.
2045         * postprocess-headers.sh: Preserve the timestamp on the headers directories. Write out the
2046           timestamp file used by the Xcode project to determine whether to run the script.
2047
2048 2017-03-19  Alexey Proskuryakov  <ap@apple.com>
2049
2050         WebHTMLView is useless as WebResourceHandler
2051         https://bugs.webkit.org/show_bug.cgi?id=169857
2052
2053         Reviewed by Dan Bernstein.
2054
2055         * WebView/WebHTMLView.mm:
2056         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
2057         WebHTMLView doesnt implement any of WebResourceHandler methods.
2058
2059 2017-03-17  Michael Saboff  <msaboff@apple.com>
2060
2061         Use USE_INTERNAL_SDK to compute ENABLE_FAST_JIT_PERMISSIONS instead of HAVE_INTERNAL_SDK
2062         https://bugs.webkit.org/show_bug.cgi?id=169817
2063
2064         Reviewed by Filip Pizlo.
2065
2066         * Configurations/FeatureDefines.xcconfig:
2067
2068 2017-03-17  Antti Koivisto  <antti@apple.com>
2069
2070         Add a reload policy where only expired subresources are revalidated
2071         https://bugs.webkit.org/show_bug.cgi?id=169756
2072
2073         Reviewed by Andreas Kling.
2074
2075         * WebView/WebFrame.mm:
2076         (toWebFrameLoadType):
2077         (-[WebFrame reload]):
2078         (-[WebFrame reloadFromOrigin]):
2079
2080 2017-03-17  Wenson Hsieh  <wenson_hsieh@apple.com>
2081
2082         [WK1] Support animated transitions when performing a data interaction operation
2083         https://bugs.webkit.org/show_bug.cgi?id=169805
2084         <rdar://problem/31045767>
2085
2086         Reviewed by Beth Dakin and Megan Gardner.
2087
2088         Adds WebKit1 support for animated transitions when performing a data interaction operation. See per-method changes
2089         for more details.
2090
2091         * DOM/DOMElement.h:
2092         * DOM/DOMElement.mm:
2093         (-[DOMElement boundsInRootViewSpace]):
2094
2095         Introduce -[DOMElement boundsInRootViewSpace], which returns the bounds of the element in root view coordinates.
2096
2097         * WebCoreSupport/WebDragClient.h:
2098         (): Deleted.
2099         * WebCoreSupport/WebDragClient.mm:
2100         (WebDragClient::didConcludeEditDrag):
2101
2102         Add boilerplate plumbing.
2103
2104         * WebView/WebView.mm:
2105         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
2106
2107         Add contentImageWithoutSelection and contentImageWithoutSelectionRectInRootViewCoordinates to WebUITextIndicatorData.
2108
2109         (floatRectsForCGRectArray):
2110         (-[WebView _createImageWithPlatterForImage:boundingRect:contentScaleFactor:clippingRects:]):
2111
2112         Introduces a SPI helper method in WebView that clients can use to generate an image of a text platter given an
2113         image of some text, as well as clipping rects to apply to the image.
2114
2115         (-[WebView _dataOperationTextIndicator]):
2116
2117         Add SPI to fetch the text indicator used to drive animations for the current data operation.
2118
2119         (-[WebView _didConcludeEditDataInteraction]):
2120         * WebView/WebViewData.h:
2121         * WebView/WebViewInternal.h:
2122         * WebView/WebViewPrivate.h:
2123
2124 2017-03-16  Simon Fraser  <simon.fraser@apple.com>
2125
2126         Improve the system tracing points
2127         https://bugs.webkit.org/show_bug.cgi?id=169790
2128
2129         Reviewed by Zalan Bujtas.
2130
2131         Use a more cohesive set of system trace points that give a good overview of what
2132         WebKit is doing. Added points for resource loading, render tree building, sync messages
2133         to the web process, async image decode, WASM and fetching cookies.
2134
2135         * WebView/WebHTMLView.mm:
2136         (-[WebHTMLView drawRect:]):
2137
2138 2017-03-16  Youenn Fablet  <youenn@apple.com>
2139
2140         Wrap legacy WebRTC API in runtime flag
2141         https://bugs.webkit.org/show_bug.cgi?id=169646
2142
2143         Reviewed by Alex Christensen.
2144
2145         * WebView/WebPreferenceKeysPrivate.h:
2146         * WebView/WebPreferences.mm:
2147         (+[WebPreferences initialize]):
2148         (-[WebPreferences webRTCLegacyAPIEnabled]):
2149         (-[WebPreferences setWebRTCLegacyAPIEnabled:]):
2150         * WebView/WebPreferencesPrivate.h:
2151         * WebView/WebView.mm:
2152         (-[WebView _preferencesChanged:]):
2153
2154 2017-03-14  Megan Gardner  <megan_gardner@apple.com>
2155
2156         Correctly export WebItemProviderPasteboard
2157         https://bugs.webkit.org/show_bug.cgi?id=169578
2158
2159         Reviewed by Tim Horton.
2160
2161         * MigrateHeaders.make:
2162
2163 2017-03-14  Wenson Hsieh  <wenson_hsieh@apple.com>
2164
2165         [WK2] Data interaction tests occasionally hit assertions in debug builds
2166         https://bugs.webkit.org/show_bug.cgi?id=169002
2167         <rdar://problem/30994806>
2168
2169         Reviewed by Tim Horton.
2170
2171         Renames setIgnoreCompositionSelectionChange to setIgnoreSelectionChanges. See WebCore ChangeLog for more details.
2172
2173         * WebView/WebHTMLView.mm:
2174         (-[WebHTMLView _updateSelectionForInputManager]):
2175         * WebView/WebView.mm:
2176         (-[WebView updateTextTouchBar]):
2177
2178 2017-03-13  Anders Carlsson  <andersca@apple.com>
2179
2180         Fix build warnings.
2181
2182         * WebCoreSupport/WebInspectorClient.mm:
2183         (WebInspectorFrontendClient::save):
2184         (-[WebInspectorWindowController webView:runOpenPanelForFileButtonWithResultListener:allowMultipleFiles:]):
2185
2186 2017-03-11  Brady Eidson  <beidson@apple.com>
2187
2188         Cleanup "addCookie" and its sole user.
2189         https://bugs.webkit.org/show_bug.cgi?id=169486
2190
2191         Reviewed by Brian Burg.
2192
2193         * WebCoreSupport/WebPlatformStrategies.h:
2194         * WebCoreSupport/WebPlatformStrategies.mm:
2195         (WebPlatformStrategies::addCookie): Deleted.
2196
2197 2017-03-10  Alex Christensen  <achristensen@webkit.org>
2198
2199         Fix watch and tv builds after r213294
2200         https://bugs.webkit.org/show_bug.cgi?id=169508
2201
2202         Reviewed by Dan Bernstein.
2203
2204         * Configurations/FeatureDefines.xcconfig:
2205
2206 2017-03-10  Alex Christensen  <achristensen@webkit.org>
2207
2208         Fix CMake build.
2209
2210         * WebView/WebNotification.h:
2211         Don't assume we have already included something that includes NSObject.h.
2212
2213 2017-03-09  Daniel Bates  <dabates@apple.com>
2214
2215         Guard Credential Management implementation behind a runtime enabled feature flag
2216         https://bugs.webkit.org/show_bug.cgi?id=169364
2217         <rdar://problem/30957425>
2218
2219         Reviewed by Brent Fulgham.
2220
2221         Add WebKit preference for Credential Management (disabled by default).
2222
2223         * WebView/WebPreferenceKeysPrivate.h:
2224         * WebView/WebPreferences.mm:
2225         (+[WebPreferences initialize]):
2226         (-[WebPreferences credentialManagementEnabled]): Added.
2227         (-[WebPreferences setCredentialManagementEnabled:]): Added.
2228         * WebView/WebPreferencesPrivate.h:
2229         * WebView/WebView.mm:
2230         (-[WebView _preferencesChanged:]):
2231
2232 2017-03-09  Anders Carlsson  <andersca@apple.com>
2233
2234         Add delegate support to WebCore
2235         https://bugs.webkit.org/show_bug.cgi?id=169427
2236         Part of rdar://problem/28880714.
2237
2238         Reviewed by Geoffrey Garen.
2239
2240         * Configurations/FeatureDefines.xcconfig:
2241         Add feature define.
2242
2243 2017-03-08  Megan Gardner  <megan_gardner@apple.com>
2244
2245         Fix DataInteraction guards
2246         https://bugs.webkit.org/show_bug.cgi?id=169404
2247
2248         Reviewed by Wenson Hsieh.
2249
2250         * WebCoreSupport/WebDragClient.mm:
2251
2252 2017-03-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2253
2254         Add plumbing for WebCore to notify WebKit2 when an edit drag has concluded
2255         https://bugs.webkit.org/show_bug.cgi?id=169392
2256         <rdar://problem/30882974>
2257
2258         Reviewed by Tim Horton.
2259
2260         Add a stub implementation of WebDragClient::didConcludeEditDrag.
2261
2262         * WebCoreSupport/WebDragClient.h:
2263
2264 2017-03-08  Anders Carlsson  <andersca@apple.com>
2265
2266         Simplify the PaymentCoordinator interface
2267         https://bugs.webkit.org/show_bug.cgi?id=169382
2268         Part of rdar://problem/28880714.
2269
2270         Reviewed by Tim Horton.
2271
2272         Update for PaymentCoordinatorClient changes.
2273
2274         * WebCoreSupport/WebPaymentCoordinatorClient.h:
2275         * WebCoreSupport/WebPaymentCoordinatorClient.mm:
2276         (WebPaymentCoordinatorClient::completeShippingMethodSelection):
2277         (WebPaymentCoordinatorClient::completeShippingContactSelection):
2278         (WebPaymentCoordinatorClient::completePaymentMethodSelection):
2279         (WebPaymentCoordinatorClient::completePaymentSession):
2280
2281 2017-03-08  Megan Gardner  <megan_gardner@apple.com>
2282
2283         Fix for dependency fix
2284         https://bugs.webkit.org/show_bug.cgi?id=169369
2285
2286         Reviewed by Beth Dakin.
2287
2288         * WebView/WebViewPrivate.h:
2289
2290 2017-03-07  Megan Gardner  <megan_gardner@apple.com>
2291
2292         Fix Project Dependency
2293         https://bugs.webkit.org/show_bug.cgi?id=169340
2294
2295         Unreviewed Dependency Fix.
2296
2297         * WebView/WebViewPrivate.h:
2298
2299 2017-03-07  Alexey Proskuryakov  <ap@apple.com>
2300
2301         WebKitLegacy should re-export symbols from WebCore on watchos and tvos
2302         https://bugs.webkit.org/show_bug.cgi?id=169341
2303         <rdar://problem/30913788>
2304
2305         Reviewed by Dan Bernstein.
2306
2307         * MigrateHeaders.make:
2308
2309 2017-03-07  Simon Fraser  <simon.fraser@apple.com>
2310
2311         Have fixedPositionCreatesStackingContext be on by default everywhere
2312         https://bugs.webkit.org/show_bug.cgi?id=169334
2313
2314         Reviewed by Zalan Bujtas.
2315
2316         It makes no sense to have web-exposed CSS functionality be different based on setting,
2317         and other browser are now aligned with having position:fixed create stacking context.
2318
2319         So remove the fixedPositionCreatesStackingContext setting and have StyleResolver::adjustRenderStyle()
2320         always force stacking context for position:fixed.
2321
2322         * WebView/WebView.mm:
2323         (-[WebView _preferencesChanged:]):
2324
2325 2017-03-06  Simon Fraser  <simon.fraser@apple.com>
2326
2327         Initialize the subpixelAntialiasedLayerTextEnabled Setting in WebKit1
2328         https://bugs.webkit.org/show_bug.cgi?id=169230
2329
2330         Reviewed by Tim Horton.
2331
2332         * WebView/WebView.mm:
2333         (-[WebView _preferencesChanged:]):
2334
2335 2017-03-07  Simon Fraser  <simon.fraser@apple.com>
2336
2337         Enable SubpixelAntialiasedLayerTextEnabled by default on some versions of macOS
2338         https://bugs.webkit.org/show_bug.cgi?id=169329
2339
2340         Reviewed by Tim Horton.
2341
2342         If the macOS version is > 101300, enable subpixelAntialiasedLayerTextEnabled.
2343
2344         * WebView/WebPreferences.mm:
2345         (+[WebPreferences initialize]):
2346
2347 2017-03-07  Megan Gardner  <megan_gardner@apple.com>
2348
2349         Additional DataInteraction Support
2350         https://bugs.webkit.org/show_bug.cgi?id=169316
2351         <rdar://problem/30884234>
2352
2353         Reviewed by Wenson Hsieh.
2354
2355         Add stub implementations to WebView for methods that handle data interaction
2356
2357         * WebView/WebView.mm:
2358         (-[WebView _enteredDataInteraction:client:global:operation:]):
2359         (-[WebView _updatedDataInteraction:client:global:operation:]):
2360         (-[WebView _exitedDataInteraction:client:global:operation:]):
2361         (-[WebView _performDataInteraction:client:global:operation:]):
2362         (-[WebView _endedDataInteraction:global:]):
2363         * WebView/WebViewPrivate.h:
2364
2365 2017-03-07  Dean Jackson  <dino@apple.com>
2366
2367         Some platforms won't be able to create a GPUDevice
2368         https://bugs.webkit.org/show_bug.cgi?id=169314
2369         <rdar://problems/30907521>
2370
2371         Reviewed by Jon Lee.
2372
2373         Disable WEB_GPU on the iOS Simulator.
2374
2375         * Configurations/FeatureDefines.xcconfig:
2376
2377 2017-03-07  Maureen Daum  <mdaum@apple.com>
2378
2379         Correctly check for an empty database file.
2380         <rdar://problem/30542242> Removing Website Data not working (WebSQL directories being left behind)
2381         https://bugs.webkit.org/show_bug.cgi?id=169256
2382
2383         Reviewed by Brady Eidson.
2384
2385         Check if the folder for an origin's WebSQL databases is empty after trying to delete
2386         all of its files. Currently we check if the deletedDatabaseFileCount matches the number
2387         of files that were in the folder. However, when we delete the actual database file in
2388         DatabaseTracker::deleteDatabaseFileIfEmpty(), the shm and wal files get deleted along with
2389         the database file, but deletedDatabaseFileCount only gets incremented once.
2390
2391         * Storage/WebDatabaseManager.mm:
2392         (+[WebDatabaseManager removeEmptyDatabaseFiles]):
2393         Delete the folder if it is empty.
2394
2395 2017-03-06  Michael Saboff  <msaboff@apple.com>
2396
2397         Unreviewed build fix to add
2398         -isystem $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders
2399         for objective C++ files.
2400
2401         * Configurations/WebKitLegacy.xcconfig:
2402
2403 2017-03-06  Michael Saboff  <msaboff@apple.com>
2404
2405         Take advantage of fast permissions switching of JIT memory for devices that support it
2406         https://bugs.webkit.org/show_bug.cgi?id=169155
2407
2408         Reviewed by Saam Barati.
2409
2410         Updated the Xcode config files to match what is in the JavaScriptCore ones.
2411
2412         * Configurations/FeatureDefines.xcconfig:
2413
2414 2017-03-06  Myles C. Maxfield  <mmaxfield@apple.com>
2415
2416         Expand font-weight and font-stretch to take any number
2417         https://bugs.webkit.org/show_bug.cgi?id=168889
2418
2419         Reviewed by Simon Fraser.
2420
2421         Migrate off old enum types.
2422
2423         * WebCoreSupport/PopupMenuMac.mm:
2424         (PopupMenuMac::populate):
2425         * WebView/WebHTMLView.mm:
2426         (fontNameForDescription):
2427         * WebView/WebView.mm:
2428         (-[WebView updateTextTouchBar]):
2429
2430 2017-03-03  Dean Jackson  <dino@apple.com>
2431
2432         Add WebGPU compile flag and experimental feature flag
2433         https://bugs.webkit.org/show_bug.cgi?id=169161
2434         <rdar://problem/30846689>
2435
2436         Reviewed by Tim Horton.
2437
2438         Add ENABLE_WEBGPU, an experimental feature flag, a RuntimeEnabledFeature,
2439         and an InternalSetting.
2440
2441         * Configurations/FeatureDefines.xcconfig:
2442         * WebView/WebPreferenceKeysPrivate.h:
2443         * WebView/WebPreferences.mm:
2444         (+[WebPreferences initialize]):
2445         (-[WebPreferences webGPUEnabled]):
2446         (-[WebPreferences setWebGPUEnabled:]):
2447         * WebView/WebPreferencesPrivate.h:
2448         * WebView/WebView.mm:
2449         (-[WebView _preferencesChanged:]):
2450
2451 2017-03-03  Alexey Proskuryakov  <ap@apple.com>
2452
2453         Build fix
2454         rdar://problem/30825660
2455
2456         Suggested by Dan Bernstein.
2457
2458         * Configurations/WebKitLegacy.xcconfig:
2459
2460 2017-03-02  Sam Weinig  <sam@webkit.org>
2461
2462         Rename htmlediting.h/cpp to Editing.h/cpp
2463         https://bugs.webkit.org/show_bug.cgi?id=169103
2464
2465         Reviewed by Alex Christensen.
2466
2467         * DOM/DOMUIKitExtensions.mm:
2468         * WebView/WebFrame.mm:
2469         * WebView/WebView.mm:
2470
2471 2017-03-02  Megan Gardner  <megan_gardner@apple.com>
2472
2473         Fix 32-bit
2474         https://bugs.webkit.org/show_bug.cgi?id=169114
2475
2476         Reviewed by Alex Christensen.
2477
2478         * WebView/WebView.mm:
2479
2480 2017-03-02  Megan Gardner  <megan_gardner@apple.com>
2481
2482         More guard fixing
2483         https://bugs.webkit.org/show_bug.cgi?id=169112
2484
2485         Reviewed by Alex Christensen.
2486
2487         Fixed an internal build.
2488
2489         * WebView/WebView.mm:
2490         * WebView/WebViewPrivate.h:
2491
2492 2017-03-02  Megan Gardner  <megan_gardner@apple.com>
2493
2494         Data Interaction build fixes
2495         https://bugs.webkit.org/show_bug.cgi?id=169096
2496
2497         Reviewed by Tim Horton.
2498
2499         Guards weren't all correct, also missed a selector name change.
2500
2501         * WebView/WebView.mm:
2502         (-[WebView _setDataInteractionData:textIndicator:atClientPosition:anchorPoint:action:]):
2503         * WebView/WebViewData.h:
2504         * WebView/WebViewData.mm:
2505         (-[WebViewPrivate dealloc]):
2506
2507 2017-03-02  Alex Christensen  <achristensen@webkit.org>
2508
2509         Continue enabling WebRTC
2510         https://bugs.webkit.org/show_bug.cgi?id=169056
2511
2512         Reviewed by Jon Lee.
2513
2514         * Configurations/FeatureDefines.xcconfig:
2515
2516 2017-03-01  Megan Gardner  <megan_gardner@apple.com>
2517
2518         Data interaction support for WK1
2519         https://bugs.webkit.org/show_bug.cgi?id=169062
2520
2521         Reviewed by Wenson Hsieh.
2522
2523         Support for data interaction in WebKit1
2524
2525         * WebCoreSupport/WebDragClient.mm:
2526         * WebView/WebView.mm:
2527         (-[WebUITextIndicatorData initWithImage:TextIndicatorData:scale:]):
2528         (-[WebUITextIndicatorData initWithImage:scale:]):
2529         (-[WebUITextIndicatorData dealloc]):
2530         (-[WebView _requestStartDataInteraction:globalPosition:]):
2531         (-[WebView _setDataInteractionData:textIndicator:atClientPosition:anchorPoint:action:]):
2532         (-[WebView _getDataInteractionData]):
2533         * WebView/WebViewData.h:
2534         * WebView/WebViewData.mm:
2535         (-[WebViewPrivate dealloc]):
2536         * WebView/WebViewInternal.h:
2537         * WebView/WebViewPrivate.h:
2538
2539 2017-03-02  Youenn Fablet  <youenn@apple.com>
2540
2541         [WebRTC] Activate ICE candidate privacy policy
2542         https://bugs.webkit.org/show_bug.cgi?id=168975
2543
2544         Reviewed by Alex Christensen.
2545
2546         * WebView/WebPreferenceKeysPrivate.h:
2547         * WebView/WebPreferences.mm:
2548         (-[WebPreferences enumeratingAllNetworkInterfacesEnabled]):
2549         (-[WebPreferences setEnumeratingAllNetworkInterfacesEnabled:]):
2550         (-[WebPreferences iceCandidateFilteringEnabled]):
2551         (-[WebPreferences setIceCandidateFilteringEnabled:]):
2552         * WebView/WebPreferencesPrivate.h:
2553
2554 2017-03-01  Alex Christensen  <achristensen@webkit.org>
2555
2556         Unreviewed, rolling out r213259.
2557
2558         Broke an internal build
2559
2560         Reverted changeset:
2561
2562         "Continue enabling WebRTC"
2563         https://bugs.webkit.org/show_bug.cgi?id=169056
2564         http://trac.webkit.org/changeset/213259
2565
2566 2017-03-01  Alex Christensen  <achristensen@webkit.org>
2567
2568         Continue enabling WebRTC
2569         https://bugs.webkit.org/show_bug.cgi?id=169056
2570
2571         Reviewed by Jon Lee.
2572
2573         * Configurations/FeatureDefines.xcconfig:
2574
2575 2017-02-27  Alex Christensen  <achristensen@webkit.org>
2576
2577         Begin enabling WebRTC on 64-bit
2578         https://bugs.webkit.org/show_bug.cgi?id=168915
2579
2580         Reviewed by Eric Carlson.
2581
2582         * Configurations/FeatureDefines.xcconfig:
2583
2584 2017-02-27  Aakash Jain  <aakash_jain@apple.com>
2585
2586         Enable SUPPORTS_TEXT_BASED_API in WebKitLegacy for iOS
2587         https://bugs.webkit.org/show_bug.cgi?id=168919
2588
2589         Reviewed by Tim Horton.
2590
2591         * Configurations/WebKitLegacy.xcconfig: Enable SUPPORTS_TEXT_BASED_API.
2592         * migrate-headers.sh: Run the migrate-headers script for installapi phase.
2593
2594 2017-02-27  Alex Christensen  <achristensen@webkit.org>
2595
2596         [libwebrtc] Enable WebRTC in some Production Builds
2597         https://bugs.webkit.org/show_bug.cgi?id=168858
2598
2599         * Configurations/FeatureDefines.xcconfig:
2600
2601 2017-02-26  Alexey Proskuryakov  <ap@apple.com>
2602
2603         Don't import RetainPtr in WebNotification.h
2604         https://bugs.webkit.org/show_bug.cgi?id=168876
2605
2606         Reviewed by Dan Bernstein.
2607
2608         This is an Objective-C SPI header.
2609
2610         * WebView/WebNotification.h:
2611         * WebView/WebNotification.mm:
2612         (-[WebNotification initWithCoreNotification:notificationID:]):
2613         (-[WebNotification dealloc]):
2614
2615 2017-02-26  Aakash Jain  <aakash_jain@apple.com>
2616
2617         Simplify EXPORTED_SYMBOLS_FILE variables in WebKitLegacy.xcconfig
2618         https://bugs.webkit.org/show_bug.cgi?id=168819
2619
2620         Reviewed by Dan Bernstein.
2621
2622         * Configurations/WebKitLegacy.xcconfig:
2623
2624 2017-02-22  Aakash Jain  <aakash_jain@apple.com>
2625
2626         Export Objective-C symbols for variables in Webkit SPI
2627         https://bugs.webkit.org/show_bug.cgi?id=168758
2628
2629         Reviewed by Alexey Proskuryakov.
2630
2631         * Configurations/WebKitLegacy.xcconfig: using separate .exp file for i386.
2632         * WebKit.exp: Added various Objective-C symbols.
2633
2634 2017-02-22  Aakash Jain  <aakash_jain@apple.com>
2635
2636         Move instance members from WKQuadObject to implementation file
2637         https://bugs.webkit.org/show_bug.cgi?id=168740
2638
2639         Reviewed by Tim Horton.
2640
2641         * DOM/DOM.mm: Moving instance member to implementation file.
2642         * DOM/DOMExtensions.h: Ditto.
2643
2644 2017-02-22  Aakash Jain  <aakash_jain@apple.com>
2645
2646         Move iOS specific symbols to WebKit.ios.exp
2647         https://bugs.webkit.org/show_bug.cgi?id=168726
2648
2649         Reviewed by Alexey Proskuryakov.
2650
2651         * WebKit.exp:
2652
2653 2017-02-21  Youenn Fablet  <youenn@apple.com>
2654
2655         [WebRTC][Mac] Activate libwebrtc
2656         https://bugs.webkit.org/show_bug.cgi?id=167293
2657         <rdar://problem/30401864>
2658
2659         Reviewed by Alex Christensen.
2660
2661         * Configurations/FeatureDefines.xcconfig:
2662
2663 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
2664
2665         Export various NSString symbols from WebFramePrivate.h
2666         https://bugs.webkit.org/show_bug.cgi?id=168702
2667
2668         Reviewed by Alexey Proskuryakov.
2669
2670         * WebKit.exp:
2671
2672 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
2673
2674         Export various NSString symbols from WebPreferencesPrivate.h
2675         https://bugs.webkit.org/show_bug.cgi?id=168701
2676
2677         Reviewed by Alexey Proskuryakov.
2678
2679         * WebKit.exp:
2680
2681 2017-02-21  Joseph Pecoraro  <pecoraro@apple.com>
2682
2683         Add missing WebConsoleMessage string key
2684         https://bugs.webkit.org/show_bug.cgi?id=168690
2685
2686         Reviewed by Alexey Proskuryakov.
2687
2688         * WebKit.exp:
2689         * WebView/WebUIDelegatePrivate.h:
2690         This key has an implementation but was not extern / exported like the others.
2691
2692 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
2693
2694         Export various NSString symbols from WebViewPrivate.h
2695         https://bugs.webkit.org/show_bug.cgi?id=168689
2696
2697         Reviewed by Alexey Proskuryakov.
2698
2699         * WebKit.exp:
2700
2701 2017-02-21  Commit Queue  <commit-queue@webkit.org>
2702
2703         Unreviewed, rolling out r212768.
2704         https://bugs.webkit.org/show_bug.cgi?id=168698
2705
2706         Rolling out since this would break other projects. (Requested
2707         by aakashjain on #webkit).
2708
2709         Reverted changeset:
2710
2711         "[iOS] Remove old WebKit1 MemoryMeasure helper."
2712         https://bugs.webkit.org/show_bug.cgi?id=168675
2713         http://trac.webkit.org/changeset/212768
2714
2715 2017-02-20  Simon Fraser  <simon.fraser@apple.com>
2716
2717         Add support to PlatformCALayer/GraphicsLayerCA for subpixel-antialiased text, with a Setting and a MiniBrowser switch
2718         https://bugs.webkit.org/show_bug.cgi?id=168620
2719         <rdar://problem/30617772>
2720
2721         Reviewed by Tim Horton.
2722
2723         * WebView/WebPreferenceKeysPrivate.h:
2724         * WebView/WebPreferences.mm:
2725         (+[WebPreferences initialize]):
2726         (-[WebPreferences subpixelAntialiasedLayerTextEnabled]):
2727         (-[WebPreferences setSubpixelAntialiasedLayerTextEnabled:]):
2728         * WebView/WebPreferencesPrivate.h:
2729
2730 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
2731
2732         Export various NSString symbols from WebUIDelegatePrivate.h
2733         https://bugs.webkit.org/show_bug.cgi?id=168679
2734
2735         Reviewed by Joseph Pecoraro.
2736
2737         * WebKit.exp:
2738
2739 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
2740
2741         Export symbols for various classes present in webkit SPI
2742         https://bugs.webkit.org/show_bug.cgi?id=168674
2743
2744         Reviewed by Dan Bernstein.
2745
2746         * WebKit.exp:
2747
2748 2017-02-21  Andreas Kling  <akling@apple.com>
2749
2750         [iOS] Remove old WebKit1 MemoryMeasure helper.
2751         <https://webkit.org/b/168675>
2752
2753         Reviewed by Sam Weinig.
2754
2755         * Configurations/WebKitLegacy.xcconfig:
2756         * Misc/WebCache.mm:
2757         (+[WebCache emptyInMemoryResources]):
2758         * WebView/WebView.mm:
2759
2760 2017-02-21  Andreas Kling  <akling@apple.com>
2761
2762         [iOS] WebKit1 should use shared memory pressure handler code.
2763         <https://webkit.org/b/168653>
2764
2765         Reviewed by Antti Koivisto.
2766
2767         Register a WebThread-aware memory callback with the shared MemoryPressureHandler
2768         and get rid of the old iOS WebKit1 specific implementation. Some of it was even
2769         dead code since MobileSafari has been using WebKit2 for quite a while.
2770
2771         * WebView/WebView.h:
2772         * WebView/WebView.mm:
2773         (WebInstallMemoryPressureHandler):
2774         (+[WebView _handleMemoryWarning]): Deleted.
2775         (+[WebView registerForMemoryNotifications]): Deleted.
2776         (+[WebView releaseFastMallocMemoryOnCurrentThread]): Deleted.
2777         (+[WebView garbageCollectNow]): Deleted.
2778         (+[WebView purgeInactiveFontData]): Deleted.
2779         (+[WebView drainLayerPool]): Deleted.
2780         (+[WebView discardAllCompiledCode]): Deleted.
2781         (+[WebView _clearMemoryPressure]): Deleted.
2782         (+[WebView _shouldWaitForMemoryClearMessage]): Deleted.
2783         * WebView/WebViewPrivate.h:
2784
2785 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
2786
2787         Stop exporting interface WebCoreScrollView on iOS
2788         https://bugs.webkit.org/show_bug.cgi?id=168536
2789
2790         Reviewed by Dan Bernstein.
2791
2792         * WebKit.exp: Moved symbol for WebCoreScrollView interface to mac specific file.
2793         * WebKit.mac.exp: Ditto.
2794         * WebView/WebHTMLView.mm: WebCoreScrollView shouldn't be defined for iOS platform.
2795
2796 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
2797
2798         Exclude various mac-specific header files from iOS build
2799         https://bugs.webkit.org/show_bug.cgi?id=168621
2800
2801         Reviewed by Dan Bernstein.
2802
2803         * Configurations/WebKitLegacy.xcconfig:
2804
2805 2017-02-20  Wenson Hsieh  <wenson_hsieh@apple.com>
2806
2807         Add plumbing to the UI process for TextIndicatorData when computing the drag image
2808         https://bugs.webkit.org/show_bug.cgi?id=168583
2809         Work towards <rdar://problem/30313681>
2810
2811         Accounts for changes in WebCore -- see Source/WebCore/ChangeLog for more details.
2812
2813         Reviewed by Tim Horton.
2814
2815         * WebView/WebHTMLView.mm:
2816         (-[WebHTMLView _selectionDraggingImage]):
2817         (-[WebHTMLView selectionImageForcingBlackText:selectionImageForcingBlackText:]):
2818
2819 2017-02-17  Anders Carlsson  <andersca@apple.com>
2820
2821         Add a new drag code path and use it for dragging plain text
2822         https://bugs.webkit.org/show_bug.cgi?id=168534
2823
2824         Reviewed by Geoffrey Garen.
2825
2826         * WebCoreSupport/WebDragClient.h:
2827         Add new members.
2828
2829         * WebCoreSupport/WebDragClient.mm:
2830         (WebDragClient::useLegacyDragClient):
2831         Return false here.
2832
2833         (WebDragClient::beginDrag):
2834         New client member function. Create an NSDraggingItem and use it to begin a dragging session.
2835
2836         * WebView/WebHTMLView.mm:
2837         (-[WebHTMLView draggingSession:sourceOperationMaskForDraggingContext:]):
2838         Get the source operation mask from WebCore.
2839
2840         (-[WebHTMLView draggingSession:endedAtPoint:operation:]):
2841         Send a fake mouse up event.
2842
2843         * WebView/WebHTMLViewInternal.h:
2844         Declare that WebHTMLView conforms to NSDraggingSource.
2845
2846 2017-02-20  Alexey Proskuryakov  <ap@apple.com>
2847
2848         List of WebCore symbols to re-export from WebKitLegacy should be built automatically
2849         https://bugs.webkit.org/show_bug.cgi?id=168342
2850         rdar://problem/26182266
2851
2852         Reviewed by Tim Horton.
2853
2854         * MigrateHeaders.make: On iOS only, process re-exported headers to build a list of
2855         symbols to re-export.
2856
2857 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
2858
2859         Stop exporting DOMTokenList from WebKit
2860         https://bugs.webkit.org/show_bug.cgi?id=168544
2861
2862         Reviewed by Alexey Proskuryakov.
2863
2864         * WebKit.exp:
2865
2866 2017-02-20  Alexey Proskuryakov  <ap@apple.com>
2867
2868         Clean up how WebKit exports _WebCreateFragment
2869         https://bugs.webkit.org/show_bug.cgi?id=168579
2870
2871         Reviewed by Dan Bernstein.
2872
2873         * WebCoreSupport/WebCreateFragmentInternal.h: Added a private header.
2874         * WebCoreSupport/WebEditorClient.mm: Include the new header that declares _WebCreateFragment.
2875
2876 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
2877
2878         Stop exporting DOMNodeFilter
2879         https://bugs.webkit.org/show_bug.cgi?id=168542
2880
2881         Reviewed by Alexey Proskuryakov.
2882
2883         * WebKit.exp:
2884
2885 2017-02-20  Manuel Rego Casasnovas  <rego@igalia.com>
2886
2887         [css-grid] Remove compilation flag ENABLE_CSS_GRID_LAYOUT
2888         https://bugs.webkit.org/show_bug.cgi?id=167693
2889
2890         Reviewed by Sergio Villar Senin.
2891
2892         * Configurations/FeatureDefines.xcconfig:
2893         * WebView/WebPreferences.mm:
2894         (+[WebPreferences initialize]):
2895         * WebView/WebView.mm:
2896         (-[WebView _preferencesChanged:]):
2897
2898 2017-02-15  Brady Eidson  <beidson@apple.com>
2899
2900         Stop backing up localStorage databases to iCloud by default.
2901         <rdar://problem/29045531> and https://bugs.webkit.org/show_bug.cgi?id=168388
2902
2903         Reviewed by Geoffrey Garen.
2904
2905         * Misc/WebKitVersionChecks.h:
2906         * Misc/WebKitVersionChecks.mm: Renamed from Source/WebKit/mac/Misc/WebKitVersionChecks.m.
2907         (WebKitLinkedOnOrAfter):
2908         (setWebKitLinkTimeVersion):
2909         (WebKitLinkTimeVersion):
2910         (linkedOnOrAfter):
2911
2912         * Storage/WebStorageManager.mm:
2913         (WebKitInitializeStorageIfNecessary):
2914
2915 2017-02-16  Daniel Bates  <dabates@apple.com>
2916
2917         Remove Chromium-specific code to call FrameLoaderClient::redirectDataToPlugin(nullptr)
2918         https://bugs.webkit.org/show_bug.cgi?id=168417
2919         <rdar://problem/30541748>
2920
2921         Reviewed by Brent Fulgham.
2922
2923         Update override of FrameLoaderClient::redirectDataToPlugin() to take a Widget& instead of a
2924         Widget* as it is always called with a valid Widget.
2925
2926         * WebCoreSupport/WebFrameLoaderClient.h:
2927         * WebCoreSupport/WebFrameLoaderClient.mm:
2928         (WebFrameLoaderClient::redirectDataToPlugin):
2929         * WebKit.order: Remove symbol for WebFrameLoaderClient::redirectDataToPlugin() that took a Widget*
2930         as it no longer exists. I am unclear if this file is still meaningful as it was last modified in
2931         r180570 (2 years ago) though Xcode still references this ordering file (why?).
2932
2933 2017-02-16  Yusuke Suzuki  <utatane.tea@gmail.com>
2934
2935         [JSC] Drop PassRefPtr in inspector/
2936         https://bugs.webkit.org/show_bug.cgi?id=168420
2937
2938         Reviewed by Alex Christensen.
2939
2940         * WebView/WebScriptDebugger.mm:
2941         (WebScriptDebugger::handlePause):
2942
2943 2017-02-16  Simon Fraser  <simon.fraser@apple.com>
2944
2945         Clean up use of some CALayer-related SPI
2946         https://bugs.webkit.org/show_bug.cgi?id=168401
2947
2948         Reviewed by Tim Horton.
2949
2950         Include CALayer.h not CATiledLayer.h.
2951
2952         * WebInspector/WebNodeHighlight.h:
2953
2954 2017-02-15  Wenson Hsieh  <wenson_hsieh@apple.com>
2955
2956         Fix the build after r212379
2957
2958         Rubber-stamped by Anders Carlsson.
2959
2960         * WebCoreSupport/WebDragClient.mm:
2961         (WebDragClient::startDrag):
2962
2963 2017-02-15  Anders Carlsson  <andersca@apple.com>
2964
2965         Modernize DragClient::startDrag somewhat
2966         https://bugs.webkit.org/show_bug.cgi?id=168379
2967
2968         Reviewed by Tim Horton.
2969
2970         Update for WebCore changes.
2971
2972         * WebCoreSupport/WebDragClient.h:
2973         * WebCoreSupport/WebDragClient.mm:
2974         (WebDragClient::startDrag):
2975
2976 2017-02-14  Dean Jackson  <dino@apple.com>
2977
2978         Rename preferLowPowerWebGLRendering setting to forceWebGLUsesLowPower
2979         https://bugs.webkit.org/show_bug.cgi?id=168339
2980
2981         Reviewed by Simon Fraser.
2982
2983         Use a better name.
2984
2985         * WebView/WebPreferenceKeysPrivate.h:
2986         * WebView/WebPreferences.mm:
2987         (+[WebPreferences initialize]):
2988         (-[WebPreferences forceLowPowerGPUForWebGL]):
2989         (-[WebPreferences setForceLowPowerGPUForWebGL:]):
2990         (-[WebPreferences preferLowPowerWebGLRendering]): Deleted.
2991         (-[WebPreferences setPreferLowPowerWebGLRendering:]): Deleted.
2992         * WebView/WebPreferencesPrivate.h:
2993         * WebView/WebView.mm:
2994         (-[WebView _preferencesChanged:]):
2995
2996 2017-02-14  Chris Dumez  <cdumez@apple.com>
2997
2998         HTML Form Validation bubble should take minimum font size setting into consideration
2999         https://bugs.webkit.org/show_bug.cgi?id=168271
3000         <rdar://problem/29869869>
3001
3002         Reviewed by Simon Fraser.
3003
3004         * WebView/WebView.mm:
3005         (-[WebView _contentsOfUserInterfaceItem:]):
3006         Return font size used in the validation bubble.
3007
3008         (-[WebView showFormValidationMessage:withAnchorRect:]):
3009         Pass minimum font size setting when constructing the validation bubble.
3010
3011 2017-02-14  Anders Carlsson  <andersca@apple.com>
3012
3013         Remove an unused delegate method
3014         https://bugs.webkit.org/show_bug.cgi?id=168328
3015
3016         Reviewed by Wenson Hsieh.
3017
3018         * DefaultDelegates/WebDefaultUIDelegate.m:
3019         (-[WebDefaultUIDelegate webView:shouldBeginDragForElement:dragImage:mouseDownEvent:mouseDraggedEvent:]): Deleted.
3020
3021 2017-02-14  Alexey Proskuryakov  <ap@apple.com>
3022
3023         WebCore shouldn't export SystemMemory.h
3024         https://bugs.webkit.org/show_bug.cgi?id=168285
3025
3026         Reviewed by Alex Christensen.
3027
3028         * MigrateHeaders.make: And WebKit shouldn't re-export it.
3029
3030 2017-02-13  Alexey Proskuryakov  <ap@apple.com>
3031
3032         WebKit shouldn't re-export ScrollTypes.h and WebCoreFrameView.h
3033         https://bugs.webkit.org/show_bug.cgi?id=168282
3034
3035         Reviewed by Dan Bernstein.
3036
3037         * MigrateHeaders.make:
3038
3039 2017-02-12  Dan Bernstein  <mitz@apple.com>
3040
3041         Tried to fix USE(APPLE_INTERNAL_SDK) builds after r212211.
3042
3043         * WebView/WebHTMLView.mm:
3044         (createShareMenuItem): Use non-deprecated method.
3045
3046 2017-02-12  Dan Bernstein  <mitz@apple.com>
3047
3048         [Cocoa] Some -respondsToSelector: checks are unnecessary
3049         https://bugs.webkit.org/show_bug.cgi?id=168183
3050
3051         Reviewed by Tim Horton.
3052
3053         * WebView/WebFullScreenController.mm:
3054         (-[WebFullScreenController applicationDidResignActive:]): Removed check whether NSWindow
3055           responds to -isOnActiveSpace.
3056         (-[WebFullScreenController exitFullScreen]): Ditto.
3057         (-[WebFullScreenController _updateMenuAndDockForFullScreen]): Removed check whether
3058           NSApplication responds to -setPresentationOptions.
3059
3060         * WebView/WebHTMLView.mm:
3061         (createShareMenuItem): Removed unnecessary -respondsToSelector: check.
3062         (-[WebHTMLView otherMouseDown:]): Ditto.
3063
3064         * WebView/WebImmediateActionController.mm:
3065         (-[WebImmediateActionController _clearImmediateActionState]): Ditto.
3066         (-[WebImmediateActionController _animationControllerForDataDetectedText]): Ditto.
3067
3068         * WebView/WebView.mm:
3069         (-[WebView _didStartProvisionalLoadForFrame:]): Removed redundant nil check.
3070         (+[WebView _setCacheModel:]): Removed unnecessary -respondsToSelector: check.
3071
3072 2017-02-10  Daniel Bates  <dabates@apple.com>
3073
3074         Detach frame from document when entering page cache
3075         https://bugs.webkit.org/show_bug.cgi?id=166774
3076         <rdar://problem/29904368>
3077
3078         Reviewed by Chris Dumez.
3079
3080         * WebView/WebPreferenceKeysPrivate.h:
3081         * WebView/WebPreferences.mm:
3082         (+[WebPreferences initialize]):
3083         (-[WebPreferences allowsPageCacheWithWindowOpener]): Deleted.
3084         (-[WebPreferences setAllowsPageCacheWithWindowOpener:]): Deleted.
3085         * WebView/WebPreferencesPrivate.h:
3086         * WebView/WebView.mm:
3087         (-[WebView _preferencesChanged:]):
3088
3089 2017-02-10  Joseph Pecoraro  <pecoraro@apple.com>
3090
3091         [Resource Timing] Enable Resource Timing by default in Tests
3092         https://bugs.webkit.org/show_bug.cgi?id=168145
3093
3094         Reviewed by Ryosuke Niwa.
3095
3096         * WebView/WebPreferenceKeysPrivate.h:
3097         * WebView/WebPreferences.mm:
3098         (+[WebPreferences initialize]):
3099         (-[WebPreferences resourceTimingEnabled]):
3100         (-[WebPreferences setResourceTimingEnabled:]):
3101         * WebView/WebPreferencesPrivate.h:
3102         * WebView/WebView.mm:
3103         (-[WebView _preferencesChanged:]):
3104
3105 2017-02-10  Aakash Jain  <aakash_jain@apple.com>
3106
3107         cleanup WebLocalizableStrings.
3108         https://bugs.webkit.org/show_bug.cgi?id=168078
3109
3110         Reviewed by Alexey Proskuryakov.
3111
3112         * Misc/WebLocalizableStrings.h: Make visibility hidden for WebLocalizableStringsBundle 
3113         as it's for each framework's own consumption, and never needs to be exported.
3114
3115 2017-02-10  Aakash Jain  <aakash_jain@apple.com>
3116
3117         WebResourceLoadDelegatePrivate.h cannot be imported standalone
3118         https://bugs.webkit.org/show_bug.cgi?id=168096
3119
3120         Reviewed by Alexey Proskuryakov.
3121
3122         * WebView/WebResourceLoadDelegatePrivate.h: Change WebNSInteger to NSInteger. 
3123
3124 2017-02-09  Antti Koivisto  <antti@apple.com>
3125
3126         Remove most cases of #if ENABLE(CACHE_PARTITIONING)
3127         https://bugs.webkit.org/show_bug.cgi?id=167990
3128
3129         Reviewed by Sam Weinig.
3130
3131         * Misc/WebCache.mm:
3132         (+[WebCache addImageToCache:forURL:forFrame:]):
3133         (+[WebCache removeImageFromCacheForURL:forFrame:]):
3134         * WebCoreSupport/WebSystemInterface.mm:
3135         (InitWebCoreSystemInterface):
3136
3137 2017-02-07  Alexey Proskuryakov  <ap@apple.com>
3138
3139         Don't migrate WebKit DOM headers in MigrateHeaders.make
3140         https://bugs.webkit.org/show_bug.cgi?id=167608
3141
3142         Reviewed by Darin Adler.
3143
3144         Stop migrating DOM headers that are now in WebKit.
3145
3146         * DOM/DOMDOMImplementation.h: Removed.
3147         * DOM/DOMDOMImplementation.mm: Removed.
3148         * DOM/DOMDOMImplementationInternal.h: Removed.
3149         * DOM/DOMDOMTokenList.h: Removed.
3150         * DOM/DOMDOMTokenList.mm: Removed.
3151         * DOM/DOMDOMTokenListInternal.h: Removed.
3152         * DOM/DOMImplementation.h: Copied from Source/WebKit/mac/DOM/DOMDOMImplementation.h.
3153         * DOM/DOMImplementation.mm: Copied from Source/WebKit/mac/DOM/DOMDOMImplementation.mm.
3154         * DOM/DOMImplementationInternal.h: Copied from Source/WebKit/mac/DOM/DOMDOMImplementationInternal.h.
3155         * DOM/DOMTokenList.h: Copied from Source/WebKit/mac/DOM/DOMDOMTokenList.h.
3156         * DOM/DOMTokenList.mm: Copied from Source/WebKit/mac/DOM/DOMDOMTokenList.mm.
3157         * DOM/DOMTokenListInternal.h: Copied from Source/WebKit/mac/DOM/DOMDOMTokenListInternal.h.
3158         As the files are not in WebCore any more, there is no need to differentiate from
3159         WebCore internal headers with the same name. This makes it possible to make these
3160         headers private using Xcode mechanisms, as opposed to copying with a shell script.
3161
3162         * DOM/DOMElement.mm: Removed "using namespace WebCore". Other DOM implementation
3163         files don't have it.
3164
3165         * DOM/DOMCore.h:
3166         * DOM/DOMDocument.mm:
3167         * DOM/DOMHTMLAnchorElement.mm:
3168         * DOM/DOMHTMLAreaElement.mm:
3169         * DOM/DOMHTMLLinkElement.mm:
3170         * DOM/DOMUtility.mm:
3171         No more "DOMDOM".
3172
3173         * WebKit.exp:
3174         No more "DOMDOM". DOMDOMTokenList was not directly exposed via an SPI header, so
3175         renaming it is likely to be safe.
3176
3177         * MigrateHeaders.make: Don't migrate WebKit headers.
3178
3179         * Configurations/WebKitLegacy.xcconfig: Don't include two iOS specific SPI headers
3180         on macOS.
3181
3182 2017-02-08  Aakash Jain  <aakash_jain@apple.com>
3183
3184         Don't re-export PluginData.h from WebKit
3185         https://bugs.webkit.org/show_bug.cgi?id=168020
3186
3187         Reviewed by Alexey Proskuryakov.
3188
3189         * MigrateHeaders.make: Removed PluginData.h
3190
3191 2017-02-08  Aakash Jain  <aakash_jain@apple.com>
3192
3193         Don't re-export WKUtilities.h from WebKit
3194         https://bugs.webkit.org/show_bug.cgi?id=167977
3195
3196         Reviewed by Alexey Proskuryakov.
3197
3198         * MigrateHeaders.make: Removed WKUtilities.h
3199
3200 2017-02-06  Alex Christensen  <achristensen@webkit.org>
3201
3202         credentials should be partitioned by main document domain
3203         https://bugs.webkit.org/show_bug.cgi?id=166998
3204         rdar://problem/22901123
3205
3206         Reviewed by Brady Eidson.
3207
3208         * Misc/WebDownload.mm:
3209         * Plugins/WebBaseNetscapePluginView.mm:
3210         (WebKit::getAuthenticationInfo):
3211         Don't use partitioned credentials for WebKit1 plugins or downloads.
3212         Downloads should be authenticated before becoming a download anyways.
3213
3214 2017-02-06  Said Abou-Hallawa  <sabouhallawa@apple.com>
3215
3216         Rename AnimationController to CSSAnimationController
3217         https://bugs.webkit.org/show_bug.cgi?id=167829
3218
3219         Reviewed by Simon Fraser.
3220
3221         * WebView/WebFrame.mm:
3222         * WebView/WebView.mm:
3223
3224 2017-02-03  Chris Dumez  <cdumez@apple.com>
3225
3226         Dismiss HTML form validation popover when pressing Escape key
3227         https://bugs.webkit.org/show_bug.cgi?id=167716
3228         <rdar://problem/29872943>
3229
3230         Reviewed by Simon Fraser.
3231
3232         Override ValidationMessageClient::hideAnyValidationMessage().
3233
3234         * WebCoreSupport/WebValidationMessageClient.h:
3235         * WebCoreSupport/WebValidationMessageClient.mm:
3236         (WebValidationMessageClient::hideAnyValidationMessage):
3237
3238 2017-02-02  Wenson Hsieh  <wenson_hsieh@apple.com>
3239
3240         Drag images should be anchored to the mouse location
3241         https://bugs.webkit.org/show_bug.cgi?id=167690
3242         <rdar://problem/30295261>
3243
3244         Reviewed by Enrica Casucci.
3245
3246         Adds some plumbing for the anchor point in the WK1 client layer.
3247
3248         * WebCoreSupport/WebDragClient.h:
3249         * WebCoreSupport/WebDragClient.mm:
3250         (WebDragClient::startDrag):
3251
3252 2017-02-02  Chris Dumez  <cdumez@apple.com>
3253
3254         Rename Node::inDocument() to isConnected()
3255         https://bugs.webkit.org/show_bug.cgi?id=167743
3256
3257         Reviewed by Sam Weinig.
3258
3259         Rename Node::inDocument() to isConnected() to match the DOM specification more closely:
3260         - https://dom.spec.whatwg.org/#connected
3261
3262         * DOM/DOMNode.mm:
3263         (-[DOMNode isConnected]):
3264         * WebView/WebFrame.mm:
3265         (-[WebFrame selectNSRange:onElement:]):
3266
3267 2017-02-02  Chris Dumez  <cdumez@apple.com>
3268
3269         [Crash] com.apple.WebKit.WebContent at WebKit: WebKit::WebPage::fromCorePage()
3270         https://bugs.webkit.org/show_bug.cgi?id=167738
3271         <rdar://problem/30229990>
3272
3273         Reviewed by Andreas Kling.
3274
3275         The BackForwardClient no longer needs to worry about removing HistoryItems
3276         from the PageCache now that WebCore takes care of it.
3277
3278         * History/BackForwardList.mm:
3279         (BackForwardList::close):
3280
3281 2017-02-02  Yongjun Zhang  <yongjun_zhang@apple.com>
3282
3283         In iOS, we should take background assertion when accessing localstorage databases.
3284         https://bugs.webkit.org/show_bug.cgi?id=165478
3285
3286         Move database transaction background task handling code from WebDatabaseManager to
3287         WebCore's WebSQLiteDatabaseTrackerClient.
3288
3289         Reviewed by Brady Eidson.
3290
3291         * Storage/WebDatabaseManager.mm:
3292         * Storage/WebDatabaseManagerInternal.h: Remove a category for background task handling.
3293         * WebCoreSupport/WebApplicationCache.mm:
3294         (+[WebApplicationCache initializeWithBundleIdentifier:]): Use WebCore::WebSQLiteDatabaseTrackerClient.
3295         * WebView/WebView.mm:
3296         (-[WebView _commonInitializationWithFrameName:groupName:]): Ditto.
3297
3298 2017-02-01  Wenson Hsieh  <wenson_hsieh@apple.com>
3299
3300         [WK1] Allow the drag client to be initialized on platforms that do not support drag and drop
3301         https://bugs.webkit.org/show_bug.cgi?id=167695
3302         <rdar://problem/30305390>
3303
3304         Reviewed by Sam Weinig.
3305
3306         Due to the common codepath for destroying the drag client, we need to ensure that the drag client actually
3307         exists, even on platforms that do not support drag and drop, in order to avoid crashing when the DragController
3308         is destroyed.
3309
3310         * WebView/WebView.mm:
3311         (-[WebView _commonInitializationWithFrameName:groupName:]):
3312
3313 2017-01-31  Joseph Pecoraro  <pecoraro@apple.com>
3314
3315         ld: warning: instance method '_setAutofilled:' in category conflicts with same method from another category
3316         https://bugs.webkit.org/show_bug.cgi?id=167684
3317
3318         Reviewed by Dan Bernstein.
3319
3320         * DOM/DOMHTML.mm:
3321         (-[DOMHTMLInputElement _isAutofilled]): Deleted.
3322         (-[DOMHTMLInputElement _setAutofilled:]): Deleted.
3323         Consolidate in the WebDOMOperationsPrivate category.
3324
3325         * DOM/DOMPrivate.h:
3326         Include WebDOMOperationsPrivate header to get other DOM Private categories.
3327
3328         * DOM/WebDOMOperations.mm:
3329         (-[DOMHTMLInputElement _isAutofilled]):
3330         * DOM/WebDOMOperationsPrivate.h:
3331         Include getter alongside the setter.
3332
3333 2017-01-31  Jessie Berlin  <jberlin@webkit.org>
3334
3335         Build fix.
3336
3337         * Misc/WebNSPasteboardExtras.mm:
3338         (+[NSPasteboard _web_setFindPasteboardString:withOwner:]):
3339         (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):
3340         * WebView/WebHTMLView.mm:
3341         (-[WebHTMLView _fontAttributesFromFontPasteboard]):
3342         (-[WebHTMLView copyFont:]):
3343
3344 2017-01-30  Andy Estes  <aestes@apple.com>
3345
3346         [QuickLook] FrameLoaderClient should return the new QuickLookHandleClient it creates
3347         https://bugs.webkit.org/show_bug.cgi?id=167625
3348
3349         Reviewed by Andreas Kling.
3350
3351         * WebCoreSupport/WebFrameLoaderClient.h: Declared createQuickLookHandleClient().
3352         * WebCoreSupport/WebFrameLoaderClient.mm:
3353         (WebFrameLoaderClient::createQuickLookHandleClient): Renamed from didCreateQuickLookHandle().
3354         (WebFrameLoaderClient::didCreateQuickLookHandle): Renamed to createQuickLookHandleClient().
3355
3356 2017-01-30  Chris Dumez  <cdumez@apple.com>
3357
3358         Drop legacy Attributes.isId attribute
3359         https://bugs.webkit.org/show_bug.cgi?id=167603
3360
3361         Reviewed by Ryosuke Niwa.
3362
3363         Keep Attr.isId in ObjC bindings.
3364
3365         * DOM/DOMAttr.mm:
3366         (-[DOMAttr isId]):
3367
3368 2017-01-30  Andreas Kling  <akling@apple.com>
3369
3370         [macOS] WebHTMLView has an internal retain cycle with its flagsChangedEventMonitor.
3371         <https://webkit.org/b/167580>
3372
3373         Reviewed by Antti Koivisto.
3374
3375         Avoid the implicit strong capture of self by keeping it in a __block variable.
3376         Also add code to dealloc to unregister the event monitor, since it will otherwise leak.
3377         This fixes huge WebHTMLView leaks seen on the leaks bot.
3378
3379         * WebView/WebHTMLView.mm:
3380         (-[WebHTMLViewPrivate dealloc]):
3381         (-[WebHTMLView viewDidMoveToWindow]):
3382
3383 2017-01-29  Andy Estes  <aestes@apple.com>
3384
3385         [QuickLook] Add a WebPreference to enable saving QuickLook documents in WebKitLegacy
3386         https://bugs.webkit.org/show_bug.cgi?id=167563
3387         <rdar://problem/30253207>
3388
3389         Reviewed by Andreas Kling.
3390
3391         Instead of only saving QuickLook documents to a temporary file when the client is
3392         MobileSafari, base this decision on a WebPreference that clients can choose to enable.
3393
3394         This also changes the SPI for accessing the temporary file path and UTI. Instead of
3395         -[WebView quickLookContentForURL:], which requires the client to pass the response URL of
3396         the frame that saved the QuickLook document, the content dictionary is now stored as a
3397         property of WebDataSource.
3398
3399         This also removes the manual lifetime management of the QLPreviewConverter from
3400         QuickLookDocumentWriter. The QLPreviewConverter is kept alive by DocumentLoader these days,
3401         which ensures it lives long enough to respond to subresource requests.
3402
3403         New API test: QuickLook.LegacyQuickLookContent
3404
3405         * WebCoreSupport/WebFrameLoaderClient.mm:
3406         (WebFrameLoaderClient::didCreateQuickLookHandle): Moved the logic of deciding whether to
3407         write a temporary file to here from the QuickLookDocumentWriter constructor.
3408         * WebView/WebDataSource.mm: Declared _quickLookContent.
3409         (-[WebDataSource _quickLookContent]):
3410         (-[WebDataSource _setQuickLookContent:]):
3411         * WebView/WebDataSourceInternal.h: Overrode _quickLookContent as a read/write property.
3412         * WebView/WebDataSourcePrivate.h: Declared _quickLookContent as a readonly property.
3413         * WebView/WebPreferenceKeysPrivate.h: Defined WebKitQuickLookDocumentSavingPreferenceKey.
3414         * WebView/WebPreferences.mm:
3415         (-[WebPreferences quickLookDocumentSavingEnabled]):
3416         (-[WebPreferences setQuickLookDocumentSavingEnabled:]):
3417         * WebView/WebPreferencesPrivate.h: Declared property quickLookDocumentSavingEnabled.
3418         * WebView/WebView.mm:
3419         (-[WebView quickLookContentForURL:]): Changed to always return nil.
3420         * WebView/WebViewPrivate.h: Added a comment stating that clients should use
3421         -[WebDataSource _quickLookContent] instead.
3422
3423 2017-01-28  Yoav Weiss  <yoav@yoav.ws>
3424
3425         Add Link Preload as an off-by-default experimental feature menu item.
3426         https://bugs.webkit.org/show_bug.cgi?id=167201
3427
3428         Reviewed by Ryosuke Niwa.
3429
3430         * WebView/WebPreferenceKeysPrivate.h:
3431         * WebView/WebPreferences.mm:
3432         (-[WebPreferences linkPreloadEnabled]):
3433         (-[WebPreferences setLinkPreloadEnabled:]):
3434         * WebView/WebPreferencesPrivate.h:
3435         * WebView/WebView.mm:
3436         (-[WebView _preferencesChanged:]):
3437
3438 2017-01-28  Joseph Pecoraro  <pecoraro@apple.com>
3439
3440         Add User Timing Experimental Feature
3441         https://bugs.webkit.org/show_bug.cgi?id=167542
3442         <rdar://problem/22746307>
3443
3444         Reviewed by Ryosuke Niwa.
3445
3446         * WebView/WebPreferenceKeysPrivate.h:
3447         * WebView/WebPreferences.mm:
3448         (+[WebPreferences initialize]):
3449         (-[WebPreferences userTimingEnabled]):
3450         (-[WebPreferences setUserTimingEnabled:]):
3451         * WebView/WebPreferencesPrivate.h:
3452         * WebView/WebView.mm:
3453         (-[WebView _preferencesChanged:]):
3454         Add setting for User Timing runtime enabled feature.
3455
3456 2017-01-27  Wenson Hsieh  <wenson_hsieh@apple.com>
3457
3458         [WK1] Do not prevent the drag client from initializing on Mac
3459         https://bugs.webkit.org/show_bug.cgi?id=167541
3460
3461         Reviewed by Dan Bernstein.
3462
3463         Fixes fallout from r211192. To ensure compability with WebKit clients, we need to ensure that WebDragClient is
3464         initialized everywhere when creating a WebView. Stub out method implementations as no-ops for non-Mac platforms.
3465         This caused certain clients, such as Mail, to crash when a webView closes due to  null dereference.
3466
3467         * WebCoreSupport/WebDragClient.mm:
3468         (WebDragClient::WebDragClient):
3469         (WebDragClient::actionMaskForDrag):
3470         (WebDragClient::willPerformDragDestinationAction):
3471         (WebDragClient::dragSourceActionMaskForPoint):
3472         (WebDragClient::willPerformDragSourceAction):
3473         (WebDragClient::startDrag):
3474         (WebDragClient::declareAndWriteDragImage):
3475         (WebDragClient::declareAndWriteAttachment):
3476         * WebView/WebView.mm:
3477         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
3478
3479 2017-01-26  Chris Dumez  <cdumez@apple.com>
3480
3481         Crash when navigating back to a page in PacheCache when one of its frames has been removed
3482         https://bugs.webkit.org/show_bug.cgi?id=167421
3483         <rdar://problem/30188490>
3484
3485         Reviewed by Darin Adler.
3486
3487         Add a new setting allowing layout tests to enable PageCache in a window
3488         that has an opener, for convenience.
3489
3490         * WebView/WebPreferenceKeysPrivate.h:
3491         * WebView/WebPreferences.mm:
3492         (+[WebPreferences initialize]):
3493         (-[WebPreferences allowsPageCacheWithWindowOpener]):
3494         (-[WebPreferences setAllowsPageCacheWithWindowOpener:]):
3495         * WebView/WebPreferencesPrivate.h:
3496         * WebView/WebView.mm:
3497         (-[WebView _preferencesChanged:]):
3498
3499 2017-01-26  Keith Miller  <keith_miller@apple.com>
3500
3501         classInfo should take a VM so it is not materialized from the object on each call
3502         https://bugs.webkit.org/show_bug.cgi?id=167424
3503
3504         Rubber Stamped by Michael Saboff.
3505
3506         Previously, classInfo() would get the VM from the target's
3507         MarkedBlock.  Most callers already have a VM on hand, so it is
3508         wasteful to compute the VM from the marked block every time. This
3509         patch refactors some of the most common callers of classInfo(),
3510         jsDynamicCast and inherits to take a VM as well.
3511
3512         * DOM/DOM.mm:
3513         (+[DOMNode _nodeFromJSWrapper:]):
3514         * DOM/DOMUtility.mm:
3515         (createDOMWrapper):
3516         * DOM/WebDOMOperations.mm:
3517         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3518         (WebKit::getObjectID):
3519         (WebKit::NetscapePluginInstanceProxy::retainLocalObject):
3520         (WebKit::NetscapePluginInstanceProxy::releaseLocalObject):
3521         * Plugins/Hosted/ProxyInstance.mm:
3522         (WebKit::ProxyRuntimeMethod::finishCreation):
3523         (WebKit::ProxyInstance::invokeMethod):
3524         * Plugins/Hosted/ProxyRuntimeObject.mm:
3525         (WebKit::ProxyRuntimeObject::finishCreation):
3526         * WebView/WebFrame.mm:
3527         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
3528         * WebView/WebView.mm:
3529         (+[WebView _reportException:inContext:]):
3530         (aeDescFromJSValue):
3531         (-[WebView _notificationIDForTesting:]):
3532
3533 2017-01-26  Wenson Hsieh  <wenson_hsieh@apple.com>
3534
3535         REGRESSION (r207483): Touch Bar: Lists and BIU Buttons Missing from Touch Bar in HTML Notes
3536         https://bugs.webkit.org/show_bug.cgi?id=167472
3537         <rdar://problem/30149809>
3538
3539         Reviewed by Beth Dakin.
3540
3541         Revision 207483 caused the touch bar to stop showing up in HTML Notes due to -updateTextTouchBar not
3542         initializing the text touch bar and causing -makeTouchBar to return nil while processing a mouse click. The
3543         purpose of bailing out of the update was to prevent the text touch bar from thrashing during a selection drag.
3544         If the text touch bar doesn't exist yet, we don't have to worry about its appearance flickering from a different
3545         previous state, so we should just allow the touch bar to update instead.
3546
3547         * WebView/WebView.mm:
3548         (-[WebView updateTextTouchBar]):
3549
3550 2017-01-26  Per Arne Vollan  <pvollan@apple.com>
3551
3552         Crash when setting custom scale factor.
3553         https://bugs.webkit.org/show_bug.cgi?id=167369
3554
3555         Reviewed by Sam Weinig.
3556
3557         Add null pointer check.
3558
3559         * WebView/WebView.mm:
3560         (-[WebView _setCustomBackingScaleFactor:]):
3561
3562 2017-01-25  Wenson Hsieh  <wenson_hsieh@apple.com>
3563
3564         Refactor drag and drop implementation on Mac
3565         https://bugs.webkit.org/show_bug.cgi?id=167427
3566
3567         Reviewed by Enrica Casucci.
3568
3569         Refactor some WebKit1 code on the Mac pertaining to drag and drop. See WebCore ChangeLog for more details.
3570
3571         * Misc/WebNSPasteboardExtras.h:
3572         * WebCoreSupport/WebDragClient.mm:
3573         * WebView/WebFrame.mm:
3574         * WebView/WebFrameInternal.h:
3575         * WebView/WebHTMLView.mm:
3576         * WebView/WebView.mm:
3577         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
3578
3579 2017-01-24  Youenn Fablet  <youennf@gmail.com>
3580
3581         [WebRTC] Introduce libwebrtc abstraction for WK1/WK2 implementations
3582         https://bugs.webkit.org/show_bug.cgi?id=167294
3583
3584         Reviewed by Alex Christensen.
3585
3586         * WebView/WebView.mm:
3587         (-[WebView _commonInitializationWithFrameName:groupName:]):
3588
3589 2017-01-25  Wenson Hsieh  <wenson_hsieh@apple.com>
3590
3591         Add support for named pasteboards, pasteboard strategies and platform pasteboards
3592         https://bugs.webkit.org/show_bug.cgi?id=167404
3593
3594         Reviewed by Enrica Casucci.
3595
3596         Adds pasteboard name as an argument to pasteboard-related WebPlatformStrategy methods.
3597
3598         * WebCoreSupport/WebPlatformStrategies.h:
3599         * WebCoreSupport/WebPlatformStrategies.mm:
3600         (WebPlatformStrategies::writeToPasteboard):
3601         (WebPlatformStrategies::getPasteboardItemsCount):
3602         (WebPlatformStrategies::readBufferFromPasteboard):
3603         (WebPlatformStrategies::readURLFromPasteboard):
3604         (WebPlatformStrategies::readStringFromPasteboard):
3605
3606 2017-01-25  Aakash Jain  <aakash_jain@apple.com>
3607
3608         LoadWebLocalizedStrings method should be moved in correct file
3609         https://bugs.webkit.org/show_bug.cgi?id=167393
3610
3611         Reviewed by Alexey Proskuryakov.
3612
3613         * Misc/WebLocalizableStrings.h: Deleted LoadWebLocalizedStrings method.
3614         * Misc/WebLocalizableStrings.mm:
3615         (LoadWebLocalizedStringsTimerCallback): Deleted, moved to WebUIKitSupport.mm
3616         (LoadWebLocalizedStrings): Deleted, moved to WebUIKitSupport.mm
3617
3618 2017-01-24  Zalan Bujtas  <zalan@apple.com>
3619
3620         Add simple line layout toggle to MiniBrowser
3621         https://bugs.webkit.org/show_bug.cgi?id=167405
3622
3623         Reviewed by Andreas Kling.
3624
3625         * WebView/WebPreferenceKeysPrivate.h:
3626         * WebView/WebPreferences.mm:
3627         (+[WebPreferences initialize]):
3628         (-[WebPreferences simpleLineLayoutEnabled]):
3629         (-[WebPreferences setSimpleLineLayoutEnabled:]):
3630         * WebView/WebPreferencesPrivate.h:
3631         * WebView/WebView.mm:
3632         (-[WebView _preferencesChanged:]):
3633
3634 2017-01-24  Joseph Pecoraro  <pecoraro@apple.com>
3635
3636         Fold USER_TIMING into WEB_TIMING and make it a RuntimeEnabledFeature
3637         https://bugs.webkit.org/show_bug.cgi?id=167394
3638
3639         Reviewed by Ryosuke Niwa.
3640
3641         * Configurations/FeatureDefines.xcconfig:
3642
3643 2017-01-23  Chris Dumez  <cdumez@apple.com>
3644
3645         REGRESSION (r211033): ASSERTION FAILED: m_ptr in com.apple.WebCore: WTF::RefPtr<WebCore::Element>::operator* const + 70
3646         https://bugs.webkit.org/show_bug.cgi?id=167308
3647         <rdar://problem/30144964>
3648
3649         Unreviewed, do a partial revert of r211033 to fix assertion.
3650
3651         * WebCoreSupport/WebChromeClient.h:
3652         * WebCoreSupport/WebChromeClient.mm:
3653         (WebChromeClient::exitFullScreenForElement):
3654
3655 2017-01-23  Joseph Pecoraro  <pecoraro@apple.com>
3656
3657         Remove allowWindowOpenWithoutUserGesture setting
3658         https://bugs.webkit.org/show_bug.cgi?id=167301
3659
3660         Reviewed by Darin Adler.
3661
3662         * WebView/WebView.mm:
3663         (-[WebView _preferencesChanged:]):
3664         Use the equivalent existing setting.
3665
3666 2017-01-20  Darin Adler  <darin@apple.com>
3667
3668         Remove PassRefPtr from "page" directory of WebCore, also deploy references
3669         https://bugs.webkit.org/show_bug.cgi?id=167224
3670
3671         Reviewed by Chris Dumez.
3672
3673         * WebCoreSupport/WebApplicationCacheQuotaManager.mm:
3674         (-[WebApplicationCacheQuotaManager quota]): Pass reference.
3675
3676         * WebCoreSupport/WebChromeClient.h: Updated for changes to ChromeClient.
3677         * WebCoreSupport/WebChromeClient.mm:
3678         (WebChromeClient::focusedElementChanged): Ditto.
3679         (WebChromeClient::createWindow): Ditto.
3680         (WebChromeClient::runBeforeUnloadConfirmPanel): Ditto.
3681         (WebChromeClient::runJavaScriptAlert): Ditto.
3682         (WebChromeClient::runJavaScriptConfirm): Ditto.
3683         (WebChromeClient::runJavaScriptPrompt): Ditto.
3684         (WebChromeClient::contentsSizeChanged): Ditto.
3685         (WebChromeClient::unavailablePluginButtonClicked): Ditto.
3686         (WebChromeClient::print): Ditto.
3687         (WebChromeClient::exceededDatabaseQuota): Ditto.
3688         (WebChromeClient::reachedApplicationCacheOriginQuota): Ditto.
3689         (WebChromeClient::createColorChooser): Ditto.
3690         (WebChromeClient::elementDidFocus): Ditto.
3691         (WebChromeClient::elementDidBlur): Ditto.
3692         (WebChromeClient::createPopupMenu): Ditto.
3693         (WebChromeClient::createSearchPopupMenu): Ditto.
3694         (WebChromeClient::attachRootGraphicsLayer): Ditto.
3695         (WebChromeClient::attachViewOverlayGraphicsLayer): Ditto.
3696         (WebChromeClient::supportsFullScreenForElement): Ditto.
3697         (WebChromeClient::enterFullScreenForElement): Ditto.
3698         (WebChromeClient::exitFullScreenForElement): Ditto.
3699
3700         * WebView/WebFrame.mm:
3701         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):
3702         Updated for change to the appendChild function.
3703
3704 2017-01-21  Simon Fraser  <simon.fraser@apple.com>
3705
3706         Remove -[WebFrame sendOrientationChangeEvent:] which is unused
3707         https://bugs.webkit.org/show_bug.cgi?id=167276
3708
3709         Reviewed by Alex Christensen.
3710         
3711         It was usurped by -deviceOrientationChanged in 2014.
3712
3713         * WebView/WebFrame.mm:
3714         (-[WebFrame sendOrientationChangeEvent:]): Deleted.
3715         * WebView/WebFramePrivate.h:
3716
3717 2017-01-21  Simon Fraser  <simon.fraser@apple.com>
3718
3719         Remove -[WebView _contentsSizeRespectingOverflow] which is no longer needed
3720         https://bugs.webkit.org/show_bug.cgi?id=167271
3721
3722         Reviewed by Alex Christensen.
3723         
3724         -_contentsSizeRespectingOverflow was added to try to make viewport sizing on iOS respect
3725         overflow:hidden on the body (webkit.org/b/146924) but that was reverted (webkit.org/b/152803),
3726
3727         * WebView/WebView.mm:
3728         (-[WebView _contentsSizeRespectingOverflow]): Deleted.
3729         * WebView/WebViewPrivate.h:
3730
3731 2017-01-20  Joseph Pecoraro  <pecoraro@apple.com>
3732
3733         Remove never changing IndexedDB RuntimeEnabledFeature
3734         https://bugs.webkit.org/show_bug.cgi?id=167278
3735
3736         Reviewed by Darin Adler.
3737
3738         * WebView/WebView.mm:
3739         (-[WebView _preferencesChanged:]):
3740
3741 2017-01-20  Joseph Pecoraro  <pecoraro@apple.com>
3742
3743         Cleanup RuntimeEnabledFeatures
3744         https://bugs.webkit.org/show_bug.cgi?id=167228
3745
3746         Reviewed by Simon Fraser.
3747
3748         * WebView/WebView.mm:
3749         (-[WebView _preferencesChanged:]):
3750
3751 2017-01-20  Joseph Pecoraro  <pecoraro@apple.com>
3752
3753         Remove outdated ENABLE(CSP_NEXT) build flag
3754         https://bugs.webkit.org/show_bug.cgi?id=167252
3755
3756         Reviewed by Brent Fulgham.
3757
3758         * Configurations/FeatureDefines.xcconfig:
3759
3760 2017-01-20  Antoine Quint  <graouts@apple.com>
3761
3762         [Modern Media Controls] Turn modern media controls on by default
3763         https://bugs.webkit.org/show_bug.cgi?id=165668
3764
3765         Reviewed by Dean Jackson.
3766
3767         Enabled modern media controls by default in WK1.
3768
3769         * WebView/WebPreferences.mm:
3770         (+[WebPreferences initialize]):
3771
3772 2017-01-19  Chris Dumez  <cdumez@apple.com>
3773
3774         iterable<> should be enabled on WK1
3775         https://bugs.webkit.org/show_bug.cgi?id=167221
3776         <rdar://problem/30108531>
3777
3778         Reviewed by Youenn Fablet.
3779
3780         * WebView/WebPreferenceKeysPrivate.h:
3781         * WebView/WebPreferences.mm:
3782         (-[WebPreferences setCustomElementsEnabled:]):
3783         (-[WebPreferences DOMIteratorEnabled]): Deleted.
3784         (-[WebPreferences setDOMIteratorEnabled:]): Deleted.
3785         * WebView/WebPreferencesPrivate.h:
3786         * WebView/WebView.mm:
3787         (-[WebView _preferencesChanged:]):
3788
3789 2017-01-19  Chris Dumez  <cdumez@apple.com>
3790
3791         Make sure HTML validation bubble gets dismissed when its associated element's frame gets detached
3792         https://bugs.webkit.org/show_bug.cgi?id=167215
3793         <rdar://problem/29885052>
3794
3795         Reviewed by Andreas Kling.
3796
3797         Make sure HTML validation bubble gets dismissed when its associated
3798         element's frame gets detached and that we do not crash.
3799
3800         * WebCoreSupport/WebValidationMessageClient.h:
3801         * WebCoreSupport/WebValidationMessageClient.mm:
3802         (WebValidationMessageClient::documentDetached):
3803
3804 2017-01-19  Myles C. Maxfield  <mmaxfield@apple.com>
3805
3806         [Cocoa] Variation fonts are erroneously disabled on iOS
3807         https://bugs.webkit.org/show_bug.cgi?id=167172
3808
3809         Reviewed by Simon Fraser.
3810
3811         OpenSource builders don't seem to understand sdk=embedded*.
3812
3813         * Configurations/FeatureDefines.xcconfig:
3814
3815 2017-01-19  Andreas Kling  <akling@apple.com>
3816
3817         ScriptExecutionContext::topOrigin() should return a reference.
3818         <https://webkit.org/b/167190>
3819
3820         Reviewed by Sam Weinig.
3821
3822         * Misc/WebCache.mm:
3823         (+[WebCache addImageToCache:forURL:forFrame:]):
3824         (+[WebCache removeImageFromCacheForURL:forFrame:]):
3825
3826 2017-01-18  Ryan Haddad  <ryanhaddad@apple.com>
3827
3828         Unreviewed fix for the macOS build.
3829
3830         * Carbon/CarbonWindowAdapter.mm:
3831         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
3832
3833 2017-01-18  Ryan Haddad  <ryanhaddad@apple.com>
3834
3835         Unreviewed, rolling out r210848.
3836
3837         This change introduced media-related LayoutTest failures and
3838         crashes on macOS.
3839
3840         Reverted changeset:
3841
3842         "[Modern Media Controls] Turn modern media controls on by
3843         default"
3844         https://bugs.webkit.org/show_bug.cgi?id=165668
3845         http://trac.webkit.org/changeset/210848
3846
3847 2017-01-18  Andreas Kling  <akling@apple.com>
3848
3849         Document::securityOrigin() should return a reference.
3850         <https://webkit.org/b/167124>
3851
3852         Reviewed by Sam Weinig.
3853
3854         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3855         (WebKit::NetscapePluginInstanceProxy::loadRequest):
3856         * Plugins/WebNetscapePluginStream.mm:
3857         (WebNetscapePluginStream::WebNetscapePluginStream):
3858         * Plugins/WebNetscapePluginView.mm:
3859         (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
3860         * Plugins/WebPluginContainerCheck.mm:
3861         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
3862         * WebCoreSupport/WebChromeClient.mm:
3863         (WebChromeClient::exceededDatabaseQuota):
3864         * WebCoreSupport/WebFrameLoaderClient.h:
3865         * WebCoreSupport/WebFrameLoaderClient.mm:
3866         (WebFrameLoaderClient::didRunInsecureContent):
3867         * WebCoreSupport/WebGeolocationClient.mm:
3868         (WebGeolocationClient::requestPermission):
3869         (-[WebGeolocationProviderInitializationListener initializationAllowedWebView:]):
3870         * WebView/WebFrame.mm:
3871         (-[WebFrame _allowsFollowingLink:]):
3872
3873 2017-01-18  Antoine Quint  <graouts@apple.com>
3874
3875         [Modern Media Controls] Turn modern media controls on by default
3876         https://bugs.webkit.org/show_bug.cgi?id=165668
3877
3878         Reviewed by Dean Jackson.
3879
3880         Enabled modern media controls by default in WK1. 
3881
3882         * WebView/WebPreferences.mm:
3883         (+[WebPreferences initialize]):
3884
3885 2017-01-15  Darin Adler  <darin@apple.com>
3886
3887         Remove PassRefPtr from "loader" directory of WebCore
3888         https://bugs.webkit.org/show_bug.cgi?id=167055
3889
3890         Reviewed by Alex Christensen.
3891
3892         * WebCoreSupport/WebChromeClient.h: Updated for changes to ChromeClient.
3893         Also made class final and most functions private and final.
3894         * WebCoreSupport/WebChromeClient.mm:
3895         (WebChromeClient::runOpenPanel): Updated to take references.
3896
3897         * WebCoreSupport/WebEditorClient.h: Updated for changes to EditorClient.
3898         * WebCoreSupport/WebEditorClient.mm:
3899         (-[WebUndoStep initWithUndoStep:]): Take reference instead of PassRefPtr.
3900         (+[WebUndoStep stepWithUndoStep:]): Ditto.
3901         (-[WebUndoStep step]): Return reference instead of pointer.
3902         (-[WebEditorUndoTarget undoEditing:]): Updated for the above.
3903         (-[WebEditorUndoTarget redoEditing:]): Ditto.
3904         (WebEditorClient::registerUndoOrRedoStep): Take reference instead of
3905         PassRefPtr.
3906         (WebEditorClient::registerUndoStep): Ditto.
3907         (WebEditorClient::registerRedoStep): Ditto.
3908
3909         * WebCoreSupport/WebFrameLoaderClient.h: Updated for changes to
3910         FrameLoaderClient, marked functions final instead of override.
3911         * WebCoreSupport/WebFrameLoaderClient.mm:
3912         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): Take
3913         pointer instead of PassRefPtr.
3914         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Ditto.
3915         (makeFormFieldValuesDictionary): Take a reference.
3916         (WebFrameLoaderClient::dispatchWillSendSubmitEvent): Take Ref&& instead
3917         of PassRefPtr.
3918         (WebFrameLoaderClient::dispatchWillSubmitForm): Take a reference instead
3919         of PassRefPtr.
3920         (WebFrameLoaderClient::actionDictionary): Take a pointer instead of PassRePtr.
3921         (WebFrameLoaderClient::createFrame): Take a reference instead of a pointer.
3922         (WebFrameLoaderClient::createPlugin): Ditto.
3923         (WebFrameLoaderClient::createJavaAppletWidget): Ditto.
3924         (WebFrameLoaderClient::createNetworkingContext): Ditto.
3925         (WebFrameLoaderClient::didCreateQuickLookHandle): Pass a reference.
3926
3927         * WebCoreSupport/WebFrameNetworkingContext.h: Use Ref instead of PassRefPtr.
3928         * WebCoreSupport/WebFrameNetworkingContext.mm: Tweak style a bit.
3929
3930         * WebCoreSupport/WebOpenPanelResultListener.h: Take a reference instead of
3931         PassRefPtr. Use RefPtr for class field.
3932         * WebCoreSupport/WebOpenPanelResultListener.mm:
3933         (-[WebOpenPanelResultListener dealloc]): Deleted. Compiler will now do it
3934         correctly without us declaring anything explicitly.
3935         (-[WebOpenPanelResultListener cancel]): Get rid of hand-written deref code,
3936         and let RefPtr do the work.
3937         (-[WebOpenPanelResultListener chooseFilename:]): Ditto.
3938         (-[WebOpenPanelResultListener chooseFilenames:]): Ditto.
3939         (-[WebOpenPanelResultListener chooseFilenames:displayString:iconImage:]):
3940         Rewrote to use a modern Objective-C for loop, reserveInitialCapacity,
3941         and uncheckedAppend.
3942
3943         * WebView/WebArchive.mm:
3944         (-[WebArchive initWithMainResource:subresources:subframeArchives:]):
3945         Updated for changes to LegacyWebArchive.
3946         (-[WebArchive mainResource]): Ditto.
3947         (-[WebArchive subresources]): Ditto.
3948         (-[WebArchive subframeArchives]): Ditto.
3949
3950         * WebView/WebDataSource.mm:
3951         (-[WebDataSource _addSubframeArchives:]): Use a modern Objective-C for loop
3952         instead of NSEnumerator.
3953         (-[WebDataSource _fileWrapperForURL:]): Use auto.
3954         (-[WebDataSource _documentFragmentWithArchive:]): Pass a reference.
3955         (-[WebDataSource mainResource]): Ditto.
3956         (-[WebDataSource subresources]): Ditto.
3957         (-[WebDataSource subresourceForURL:]): Ditto.
3958         (-[WebDataSource addSubresource:]): Ditto.
3959
3960         * WebView/WebResource.mm:
3961         (-[WebResourcePrivate initWithCoreResource:]): Take Ref&& instead of PassRefPtr.
3962         (-[WebResourcePrivate dealloc]): Remove explicit deref since RefPtr will now take
3963         care of it
3964         (-[WebResource initWithCoder:]): Pass a reference.
3965         (-[WebResource encodeWithCoder:]): Updated since coreResource is now RefPtr.
3966         (-[WebResource _initWithCoreResource:]): Take Ref&& instead of PassRefPtr.
3967         (-[WebResource _coreResource]): Return reference rather than pointer.
3968         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
3969         Added code to handle the null case and pass a reference rather than a pointer.
3970         * WebView/WebResourceInternal.h: Updated for the above.
3971
3972 2017-01-17  Michael Catanzaro  <mcatanzaro@igalia.com>
3973
3974         Unreviewed, rolling out r210834
3975         https://bugs.webkit.org/show_bug.cgi?id=165668
3976
3977         It introduced dozens of test timeouts.
3978
3979         Reverted changeset:
3980         "[Modern Media Controls] Turn modern media controls on by default"
3981         https://bugs.webkit.org/show_bug.cgi?id=165668
3982         http://trac.webkit.org/changeset/210834
3983
3984 2017-01-17  Antoine Quint  <graouts@apple.com>
3985
3986         [Modern Media Controls] Turn modern media controls on by default
3987         https://bugs.webkit.org/show_bug.cgi?id=165668
3988
3989         Reviewed by Dean Jackson.
3990
3991         Enabled modern media controls by default in WK1. 
3992
3993         * WebView/WebPreferences.mm:
3994         (+[WebPreferences initialize]):
3995
3996 2017-01-17  Joseph Pecoraro  <pecoraro@apple.com>
3997
3998         ENABLE(USER_TIMING) Not Defined for Apple Windows or OS X Ports
3999         https://bugs.webkit.org/show_bug.cgi?id=116551
4000         <rdar://problem/13949830>
4001
4002         Reviewed by Alex Christensen.
4003
4004         * Configurations/FeatureDefines.xcconfig:
4005
4006 2017-01-17  Joseph Pecoraro  <pecoraro@apple.com>
4007
4008         Crash when closing tab with debugger paused
4009         https://bugs.webkit.org/show_bug.cgi?id=161746
4010         <rdar://problem/15607819>
4011
4012         Reviewed by Brian Burg and Brent Fulgham.
4013
4014         * WebView/WebView.mm:
4015         (WebKit::DeferredPageDestructor::createDeferredPageDestructor):
4016         (WebKit::DeferredPageDestructor::DeferredPageDestructor):
4017         (WebKit::DeferredPageDestructor::tryDestruction):
4018         (-[WebView _close]):
4019         Defer destruction of the Page if we are in a nested runloop.
4020
4021 2017-01-16  Joseph Pecoraro  <pecoraro@apple.com>
4022
4023         Remove the REQUEST_ANIMATION_FRAME flag
4024         https://bugs.webkit.org/show_bug.cgi?id=156980
4025         <rdar://problem/25906849>
4026
4027         Reviewed by Simon Fraser.
4028
4029         * Configurations/FeatureDefines.xcconfig:
4030
4031 2017-01-16  Andy Estes  <aestes@apple.com>
4032
4033         [QuickLook] Do some cleanup in QuickLookHandle
4034         https://bugs.webkit.org/show_bug.cgi?id=166864
4035
4036         Reviewed by Darin Adler.
4037
4038         * WebCoreSupport/WebFrameLoaderClient.mm:
4039         (WebFrameLoaderClient::didCreateQuickLookHandle): Changed to pass a
4040         Ref<QuickLookHandleClient>&& to QuickLookHandle::setClient().
4041
4042 2017-01-15  Tim Horton  <timothy_horton@apple.com>
4043
4044         De-duplicate more (nearly) identical code in Editor(Mac|IOS).mm
4045         https://bugs.webkit.org/show_bug.cgi?id=167063
4046
4047         Reviewed by Dan Bernstein.
4048
4049         * WebView/WebHTMLView.mm:
4050         (-[WebHTMLView _selectionStartFontAttributesAsRTF]):
4051         (-[WebHTMLView _updateFontPanel]):
4052         * WebView/WebView.mm:
4053         (-[WebView typingAttributes]):
4054         Adjust to fontAttributesForSelectionStart returning a RetainPtr.
4055
4056 2017-01-13  Joseph Pecoraro  <pecoraro@apple.com>
4057
4058         Remove ENABLE(DETAILS_ELEMENT) guards
4059         https://bugs.webkit.org/show_bug.cgi?id=167042
4060
4061         Reviewed by Alex Christensen.
4062
4063         * Configurations/FeatureDefines.xcconfig:
4064
4065 2017-01-11  Darin Adler  <darin@apple.com>
4066
4067         Remove PassRefPtr from more of "platform"
4068         https://bugs.webkit.org/show_bug.cgi?id=166809
4069
4070         Reviewed by Sam Weinig.
4071
4072         * WebCoreSupport/WebFrameLoaderClient.mm:
4073         (NetscapePluginWidget::handleEvent): Pass a reference.
4074         * WebView/WebView.mm:
4075         (-[WebView _addScrollerDashboardRegionsForFrameView:dashboardRegions:]):
4076         Updated since the children set now contains Ref instead of RefPtr.
4077
4078 2017-01-13  Sam Weinig  <sam@webkit.org>
4079
4080         [WebIDL] Remove custom bindings for DeviceMotionEvent and DeviceOrientationEvent
4081         https://bugs.webkit.org/show_bug.cgi?id=167006
4082
4083         Reviewed by Geoffrey Garen.
4084
4085         * WebView/WebDeviceOrientation.mm:
4086         (convert):
4087         (-[WebDeviceOrientation initWithCanProvideAlpha:alpha:canProvideBeta:beta:canProvideGamma:gamma:]):
4088         Update for new use of std::optional.
4089
4090 2017-01-12  Joseph Pecoraro  <pecoraro@apple.com>
4091
4092         Remove unnecessary includes of Page.h
4093         https://bugs.webkit.org/show_bug.cgi?id=166996
4094
4095         Reviewed by Yusuke Suzuki.
4096
4097         * DOM/DOMHTML.mm:
4098         * History/WebBackForwardList.mm:
4099         * Plugins/WebPluginController.mm:
4100         * WebCoreSupport/WebNotificationClient.mm:
4101         * WebCoreSupport/WebPlatformStrategies.mm:
4102         * WebCoreSupport/WebUserMediaClient.mm:
4103         * WebView/WebFullScreenController.mm:
4104
4105 2017-01-12  Chris Dumez  <cdumez@apple.com>
4106
4107         Add KEYBOARD_KEY_ATTRIBUTE / KEYBOARD_CODE_ATTRIBUTE to FeatureDefines.xcconfig
4108         https://bugs.webkit.org/show_bug.cgi?id=166995
4109
4110         Reviewed by Jer Noble.
4111
4112         Add KEYBOARD_KEY_ATTRIBUTE / KEYBOARD_CODE_ATTRIBUTE to FeatureDefines.xcconfig
4113         as some people are having trouble building without it.
4114
4115         * Configurations/FeatureDefines.xcconfig:
4116
4117 2017-01-12  Chris Dumez  <cdumez@apple.com>
4118
4119         HTML form validation popover sometimes does not go away
4120         https://bugs.webkit.org/show_bug.cgi?id=166990
4121         <rdar://problem/29985957>
4122
4123         Reviewed by Tim Horton.
4124
4125         Update code using ValidationBubble now that it is RefCounted.
4126
4127         * WebView/WebView.mm:
4128         (-[WebView showFormValidationMessage:withAnchorRect:]):
4129
4130 2017-01-10  Ryosuke Niwa  <rniwa@webkit.org>
4131
4132         Remove pointerLockElement from DOMDocumentPrivate.h
4133         https://bugs.webkit.org/show_bug.cgi?id=166882
4134
4135         Reviewed by Simon Fraser.
4136
4137         Removed pointerLockElement declaration that was supposed to be removed in r209637.
4138
4139         * DOM/DOMDocumentPrivate.h:
4140
4141 2017-01-06  Darin Adler  <darin@apple.com>
4142
4143         Remove PassRefPtr use from "inspector", "platform/sql", and "platform/text"
4144         https://bugs.webkit.org/show_bug.cgi?id=166797
4145
4146         Reviewed by Alex Christensen.
4147
4148         * WebCoreSupport/WebEditorClient.h: Updated to take a reference.
4149         * WebCoreSupport/WebEditorClient.mm:
4150         (WebEditorClient::requestCheckingOfString): Take a reference
4151         instead of a PassRefPtr.
4152
4153 2017-01-05  Chris Dumez  <cdumez@apple.com>
4154
4155         Turn preferLowPowerWebGLRendering setting on by default
4156         https://bugs.webkit.org/show_bug.cgi?id=166737
4157         <rdar://problem/29870033>
4158
4159         Reviewed by Dean Jackson.
4160
4161         Temporarily turn preferLowPowerWebGLRendering setting on by default until
4162         we deal better with WebGL content in background tabs.
4163
4164         * WebView/WebPreferences.mm:
4165         (+[WebPreferences initialize]):
4166
4167 2017-01-05  Enrica Casucci  <enrica@apple.com>
4168
4169         Support File Promise during drag for macOS.
4170         https://bugs.webkit.org/show_bug.cgi?id=165204
4171         rdar://problem/19595567
4172
4173         Reviewed by Tim Horton.
4174
4175         Adds support for dropping a File Promise in a WebView.
4176         The implementation uses new File Promise API available in Sierra.
4177
4178         * Misc/WebNSPasteboardExtras.mm:
4179         (+[NSPasteboard _web_dragTypesForURL]):
4180         * WebView/WebView.mm:
4181         (-[WebView performDragOperation:]):
4182
4183 2017-01-05  Andreas Kling  <akling@apple.com>
4184
4185         Remove ChromeClient::needTouchEvents().
4186         <https://webkit.org/b/166723>
4187
4188         Rubber-stamped by Antti Koivisto.
4189
4190         * WebCoreSupport/WebChromeClient.h:
4191
4192 2017-01-04  Darin Adler  <darin@apple.com>
4193
4194         Remove PassRefPtr use from the "html" directory, other improvements
4195         https://bugs.webkit.org/show_bug.cgi?id=166635
4196
4197         Reviewed by Alex Christensen.
4198
4199         * WebCoreSupport/WebChromeClient.h:
4200         * WebCoreSupport/WebChromeClient.mm:
4201         (WebChromeClient::loadIconForFiles): Take a reference instead of a pointer.
4202
4203 2017-01-04  Ryan Haddad  <ryanhaddad@apple.com>
4204
4205         Unreviewed, rolling out r210287.
4206
4207         This change caused editing test failures on macOS.
4208
4209         Reverted changeset:
4210
4211         "Support File Promise during drag for macOS."
4212         https://bugs.webkit.org/show_bug.cgi?id=165204
4213         http://trac.webkit.org/changeset/210287
4214
4215 2017-01-04  Enrica Casucci  <enrica@apple.com>
4216
4217         Support File Promise during drag for macOS.
4218         https://bugs.webkit.org/show_bug.cgi?id=165204
4219         rdar://problem/19595567
4220
4221         Reviewed by Tim Horton.
4222
4223         Adds support for dropping a File Promise in a WebView.
4224         The implementation uses new File Promise API available in Sierra.
4225
4226         * Misc/WebNSPasteboardExtras.mm:
4227         (+[NSPasteboard _web_dragTypesForURL]):
4228         * WebView/WebView.mm:
4229         (-[WebView performDragOperation:]):
4230
4231 2017-01-04  Tim Horton  <timothy_horton@apple.com>
4232
4233         Provide a setting for clients to always prefer low-power WebGL
4234         https://bugs.webkit.org/show_bug.cgi?id=166675
4235         <rdar://problem/29834093>
4236
4237         Reviewed by Dan Bernstein.
4238
4239         * WebView/WebPreferenceKeysPrivate.h:
4240         * WebView/WebPreferences.mm:
4241         (+[WebPreferences initialize]):
4242         (-[WebPreferences preferLowPowerWebGLRendering]):
4243     &