[iOS] Pressing forward delete key in text field does nothing and we should not invoke...
[WebKit-https.git] / Source / WebKitLegacy / mac / ChangeLog
1 2018-11-09  Daniel Bates  <dabates@apple.com>
2
3         [iOS] Pressing forward delete key in text field does nothing and we should not invoke an editor
4         action when forward delete is pressed outside a text field
5         https://bugs.webkit.org/show_bug.cgi?id=190566
6         <rdar://problem/45262367>
7
8         Reviewed by Wenson Hsieh.
9
10         Remove dead code. UIKit ceased sending us a character string with 0xF728 for the forward delete
11         key many years ago. We will need to fix up iOS Legacy WebKit support for the forward delete key
12         in UIKit. We may revist this decision once <rdar://problem/45772078> is fixed.
13
14         * WebView/WebHTMLView.mm:
15         (-[WebHTMLView _handleEditingKeyEvent:]):
16
17 2018-11-08  Megan Gardner  <megan_gardner@apple.com>
18
19         Adopt Reveal Framework to replace Lookup
20         https://bugs.webkit.org/show_bug.cgi?id=191097
21         <rdar://problem/45924508>
22
23         Reviewed by Tim Horton.
24
25         Pass in what it needed to clear the textIndicators. This is better than
26         the current notification structure.
27
28         * WebView/WebView.mm:
29         (-[WebView _animationControllerForDictionaryLookupPopupInfo:]):
30         (-[WebView _prepareForDictionaryLookup]):
31
32 2018-11-06  Justin Fan  <justin_fan@apple.com>
33
34         [WebGPU] Experimental prototype for WebGPURenderPipeline and WebGPUSwapChain
35         https://bugs.webkit.org/show_bug.cgi?id=191291
36
37         Reviewed by Myles Maxfield.
38
39         Properly disable WEBGPU on all non-Metal platforms for now.
40
41         * Configurations/FeatureDefines.xcconfig:
42
43 2018-11-02  Daniel Bates  <dabates@apple.com>
44
45         [iOS] WebKit should dispatch DOM events when a modifier key is pressed
46         https://bugs.webkit.org/show_bug.cgi?id=190487
47
48         Reviewed by Tim Horton.
49
50         Having Legacy WebKit return NO if the editing event represents a modifier flags change to
51         allow the default handling.
52
53         * WebView/WebHTMLView.mm:
54         (-[WebHTMLView _handleEditingKeyEvent:]):
55
56 2018-11-01  Sihui Liu  <sihui_liu@apple.com>
57
58         Add a storage limit for IndexedDB
59         https://bugs.webkit.org/show_bug.cgi?id=190598
60         <rdar://problem/44654715>
61
62         Reviewed by Chris Dumez.
63
64         * Storage/WebDatabaseManager.mm:
65         (-[WebDatabaseManager setIDBPerOriginQuota:]):
66         * Storage/WebDatabaseManagerPrivate.h:
67
68 2018-10-31  Antti Koivisto  <antti@apple.com>
69
70         Remove LayerFlushScheduler
71         https://bugs.webkit.org/show_bug.cgi?id=191103
72
73         Reviewed by Anders Carlsson.
74
75         Add a RunLoopObserver directly into WebViewLayerFlushScheduler and remove
76         all the virtual cruft.
77
78         * WebView/WebViewData.h:
79         (WebViewLayerFlushScheduler::~WebViewLayerFlushScheduler): Deleted.
80         (): Deleted.
81         * WebView/WebViewData.mm:
82         (currentRunLoop):
83         (WebViewLayerFlushScheduler::WebViewLayerFlushScheduler):
84         (WebViewLayerFlushScheduler::~WebViewLayerFlushScheduler):
85         (WebViewLayerFlushScheduler::schedule):
86         (WebViewLayerFlushScheduler::invalidate):
87         (WebViewLayerFlushScheduler::layerFlushCallback):
88
89 2018-10-30  Alexey Proskuryakov  <ap@apple.com>
90
91         Enable InstallAPI for iOS unconditionally
92         https://bugs.webkit.org/show_bug.cgi?id=191043
93         rdar://problem/32728423
94
95         Reviewed by Dan Bernstein.
96
97         * Configurations/WebKitLegacy.xcconfig: Enabled it. Added NSURLDownloadSPI.h as an
98         excluded header - WebKitLegacy doesn't export NSURLDownload, so the definition
99         shouldn't be processed by InstallAPI.
100         * MigrateHeaders.make: Removed an obsolete workaround.
101         * Misc/NSURLDownloadSPI.h: Added.
102         * Misc/WebDownload.h: Use NSURLDownloadSPI.h instead of defining SPI inline.
103
104 2018-10-30  Alexey Proskuryakov  <ap@apple.com>
105
106         Clean up some obsolete MAX_ALLOWED macros
107         https://bugs.webkit.org/show_bug.cgi?id=190916
108
109         Reviewed by Tim Horton.
110
111         * WebView/WebHTMLView.mm:
112         (-[WebHTMLView pressureChangeWithEvent:]):
113         * WebView/WebPDFView.h:
114
115 2018-10-30  Commit Queue  <commit-queue@webkit.org>
116
117         Unreviewed, rolling out r237600 and r237604.
118         https://bugs.webkit.org/show_bug.cgi?id=191086
119
120         Breaks internal iOS builds (Requested by ryanhadd_ on
121         #webkit).
122
123         Reverted changesets:
124
125         "Enable InstallAPI for iOS unconditionally"
126         https://bugs.webkit.org/show_bug.cgi?id=191043
127         https://trac.webkit.org/changeset/237600
128
129         "Build fix attempt after enabling InstallAPI for iOS."
130         https://bugs.webkit.org/show_bug.cgi?id=191043
131         https://trac.webkit.org/changeset/237604
132
133 2018-10-30  Alexey Proskuryakov  <ap@apple.com>
134
135         Enable InstallAPI for iOS unconditionally
136         https://bugs.webkit.org/show_bug.cgi?id=191043
137         rdar://problem/32728423
138
139         Reviewed by Dan Bernstein.
140
141         * Configurations/WebKitLegacy.xcconfig: Enabled it. Added NSURLDownloadSPI.h as an
142         excluded header - WebKitLegacy doesn't export NSURLDownload, so the definition
143         shouldn't be processed by InstallAPI.
144         * MigrateHeaders.make: Removed an obsolete workaround.
145         * Misc/NSURLDownloadSPI.h: Added.
146         * Misc/WebDownload.h: Use NSURLDownloadSPI.h instead of defining SPI inline.
147
148 2018-10-29  Tim Horton  <timothy_horton@apple.com>
149
150         Modernize WebKit nibs and lprojs for localization's sake
151         https://bugs.webkit.org/show_bug.cgi?id=190911
152         <rdar://problem/45349466>
153
154         Reviewed by Dan Bernstein.
155
156         * Misc/WebNSControlExtras.m:
157         (-[NSControl sizeToFitAndAdjustWindowHeight]):
158         NSWindow and its contents are both in the same scale space these days; avoid
159         double-applying the scale factor, or you can't see the prompt.
160
161         * Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib: Removed.
162         * Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib: Removed.
163         * Panels/en.lproj/WebAuthenticationPanel.xib: Added.
164         NIB->XIB
165
166 2018-10-25  Antoine Quint  <graouts@apple.com>
167
168         [Web Animations] Turn Web Animations CSS Integration off by default
169         https://bugs.webkit.org/show_bug.cgi?id=190901
170
171         Reviewed by Dean Jackson.
172
173         * WebView/WebPreferences.mm:
174         (+[WebPreferences initialize]):
175
176 2018-10-24  Alexey Proskuryakov  <ap@apple.com>
177
178         Clean up some obsolete macOS version guards
179         https://bugs.webkit.org/show_bug.cgi?id=190887
180
181         Reviewed by Dan Bernstein.
182
183         * Misc/WebNSPasteboardExtras.mm:
184         (+[NSPasteboard _web_dragTypesForURL]):
185         * WebCoreSupport/PopupMenuMac.mm:
186         (PopupMenuMac::show):
187         * WebCoreSupport/WebEditorClient.h:
188         * WebCoreSupport/WebEditorClient.mm:
189         (WebEditorClient::respondToChangedSelection):
190         * WebView/WebPDFView.mm:
191         (-[WebPDFView _clipViewForPDFDocumentView]):
192
193 2018-10-24  Megan Gardner  <megan_gardner@apple.com>
194
195         Turn on Conic Gradients
196         https://bugs.webkit.org/show_bug.cgi?id=190810
197
198         Reviewed by Tim Horton.
199
200         * Configurations/FeatureDefines.xcconfig:
201
202 2018-10-24  Said Abou-Hallawa  <sabouhallawa@apple.com>
203
204         Cleanup: MIMETypeRegistry functions
205         https://bugs.webkit.org/show_bug.cgi?id=190838
206
207         Reviewed by Simon Fraser.
208
209         * Misc/WebNSPasteboardExtras.mm:
210         (-[NSPasteboard _web_writePromisedRTFDFromArchive:containsImage:]):
211         Replace isSupportedImageResourceMIMEType() by isSupportedImageMIMEType()
212         because they were identical.
213
214         * WebView/WebHTMLRepresentation.mm:
215         (+[WebHTMLRepresentation supportedMediaMIMETypes]):
216         (+[WebHTMLRepresentation supportedNonImageMIMETypes]):
217         (+[WebHTMLRepresentation supportedImageMIMETypes]):
218         (+[WebHTMLRepresentation unsupportedTextMIMETypes]):
219         * WebView/WebView.mm:
220         (+[WebView _unregisterViewClassAndRepresentationClassForMIMEType:]):
221         (+[WebView _registerViewClass:representationClass:forURLScheme:]):
222         (+[WebView registerViewClass:representationClass:forMIMEType:]):
223
224 2018-10-23  David Kilzer  <ddkilzer@apple.com>
225
226         Fix false positive leaks when using custom -init methods that don't start with -init
227         <https://webkit.org/b/190818>
228         <rdar://problem/45476042>
229
230         Reviewed by Dan Bernstein.
231
232         * Misc/WebKitErrors.m: Move `descriptions` static global so that
233         it is accessible by both categories.
234         (-[NSError _webkit_initWithDomain:code:URL:]): Declare new
235         NSError (WebKitInternal) category.  Add attribute to make this
236         behave like an -init method.
237         (-[NSError _webkit_initWithDomain:code:URL:]): Move into new
238         NSError (WebKitInternal) category.  Modernize method.  Replace
239         constant NSString with `NSURLErrorFailingURLStringErrorKey`.
240
241 2018-10-18  Alexey Proskuryakov  <ap@apple.com>
242
243         Switch from PLATFORM(IOS) to PLATFORM(IOS_FAMILY)
244         https://bugs.webkit.org/show_bug.cgi?id=190729
245
246         Reviewed by Tim Horton.
247
248         * DOM/DOM.mm:
249         (-[DOMNode boundingBox]):
250         * DOM/DOMElement.mm:
251         * DOM/DOMHTML.mm:
252         * DOM/DOMInternal.mm:
253         * DOM/DOMUIKitExtensions.mm:
254         * DOM/WebDOMOperations.mm:
255         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
256         * DefaultDelegates/WebDefaultEditingDelegate.m:
257         * DefaultDelegates/WebDefaultPolicyDelegate.m:
258         (-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
259         * DefaultDelegates/WebDefaultUIDelegate.h:
260         * DefaultDelegates/WebDefaultUIDelegate.mm:
261         (-[WebDefaultUIDelegate webViewClose:]):
262         (-[WebDefaultUIDelegate webViewFocus:]):
263         (-[WebDefaultUIDelegate webViewUnfocus:]):
264         (-[WebDefaultUIDelegate webViewIsResizable:]):
265         (-[WebDefaultUIDelegate webView:setResizable:]):
266         (-[WebDefaultUIDelegate webView:setFrame:]):
267         (-[WebDefaultUIDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:]):
268         * History/BackForwardList.h:
269         * History/BackForwardList.mm:
270         * History/WebBackForwardList.mm:
271         (+[WebBackForwardList initialize]):
272         (bumperCarBackForwardHackNeeded):
273         * History/WebHistory.mm:
274         (-[WebHistoryPrivate addItem:discardDuplicate:]):
275         (-[WebHistory _sendNotification:entries:]):
276         (-[WebHistory loadFromURL:error:]):
277         (-[WebHistory saveToURL:error:]):
278         * History/WebHistoryItem.mm:
279         (WKNotifyHistoryItemChanged):
280         (+[WebHistoryItem initialize]):
281         (-[WebHistoryItem initFromDictionaryRepresentation:]):
282         * History/WebURLsWithTitles.m:
283         * Misc/WebCache.mm:
284         (+[WebCache initialize]):
285         * Misc/WebDownload.mm:
286         (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]):
287         * Misc/WebElementDictionary.mm:
288         (+[WebElementDictionary initialize]):
289         (+[WebElementDictionary initializeLookupTable]):
290         * Misc/WebIconDatabase.mm:
291         * Misc/WebKitNSStringExtras.mm:
292         (+[NSString _webkit_localCacheDirectoryWithBundleIdentifier:]):
293         * Misc/WebKitVersionChecks.h:
294         * Misc/WebKitVersionChecks.mm:
295         (WebKitLinkedOnOrAfter):
296         (WebKitLinkTimeVersion):
297         * Misc/WebLocalizableStrings.mm:
298         * Misc/WebNSControlExtras.h:
299         * Misc/WebNSControlExtras.m:
300         * Misc/WebNSEventExtras.m:
301         * Misc/WebNSFileManagerExtras.mm:
302         * Misc/WebNSImageExtras.h:
303         * Misc/WebNSImageExtras.m:
304         * Misc/WebNSPasteboardExtras.mm:
305         * Misc/WebNSPrintOperationExtras.h:
306         * Misc/WebNSPrintOperationExtras.m:
307         * Misc/WebNSViewExtras.m:
308         * Misc/WebNSWindowExtras.m:
309         * Panels/WebAuthenticationPanel.h:
310         * Panels/WebAuthenticationPanel.m:
311         * Panels/WebPanelAuthenticationHandler.m:
312         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
313         (+[WebHostedNetscapePluginView initialize]):
314         * Plugins/WebBasePluginPackage.h:
315         * Plugins/WebBasePluginPackage.mm:
316         * Plugins/WebJavaPlugIn.h:
317         * Plugins/WebPluginContainerCheck.mm:
318         * Plugins/WebPluginController.h:
319         * Plugins/WebPluginController.mm:
320         (-[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
321         (-[WebPluginController addPlugin:]):
322         (-[WebPluginController destroyPlugin:]):
323         (-[WebPluginController destroyAllPlugins]):
324         * Plugins/WebPluginDatabase.mm:
325         (+[WebPluginDatabase _defaultPlugInPaths]):
326         * Plugins/WebPluginPackage.mm:
327         (-[WebPluginPackage initWithPath:]):
328         * Storage/WebDatabaseManager.mm:
329         (-[WebDatabaseManager deleteAllDatabases]):
330         * Storage/WebDatabaseManagerClient.h:
331         * Storage/WebDatabaseManagerClient.mm:
332         (WebDatabaseManagerClient::WebDatabaseManagerClient):
333         (WebDatabaseManagerClient::~WebDatabaseManagerClient):
334         * Storage/WebStorageManager.mm:
335         (-[WebStorageManager deleteAllOrigins]):
336         (WebKitInitializeStorageIfNecessary):
337         * WebCoreSupport/WebAlternativeTextClient.h:
338         * WebCoreSupport/WebApplicationCache.mm:
339         (applicationCacheBundleIdentifier):
340         * WebCoreSupport/WebChromeClient.h:
341         * WebCoreSupport/WebChromeClient.mm:
342         (WebChromeClient::setWindowRect):
343         (WebChromeClient::windowRect):
344         (WebChromeClient::takeFocus):
345         (WebChromeClient::addMessageToConsole):
346         (WebChromeClient::enableSuddenTermination):
347         (WebChromeClient::disableSuddenTermination):
348         (WebChromeClient::createPopupMenu const):
349         (WebChromeClient::createSearchPopupMenu const):
350         (WebChromeClient::shouldPaintEntireContents const):
351         (WebChromeClient::supportsVideoFullscreen):
352         (WebChromeClient::supportsFullScreenForElement):
353         (WebChromeClient::enterFullScreenForElement):
354         (WebChromeClient::exitFullScreenForElement):
355         * WebCoreSupport/WebContextMenuClient.mm:
356         * WebCoreSupport/WebDragClient.mm:
357         * WebCoreSupport/WebEditorClient.h:
358         * WebCoreSupport/WebEditorClient.mm:
359         (+[WebUndoStep initialize]):
360         (updateFontPanel):
361         (WebEditorClient::didBeginEditing):
362         (WebEditorClient::respondToChangedContents):
363         (WebEditorClient::respondToChangedSelection):
364         (WebEditorClient::canceledComposition):
365         (WebEditorClient::didEndEditing):
366         (WebEditorClient::didWriteSelectionToPasteboard):
367         (attributesForAttributedStringConversion):
368         (WebEditorClient::setInsertionPasteboard):
369         (WebEditorClient::registerUndoOrRedoStep):
370         (WebEditorClient::handleKeyboardEvent):
371         (WebEditorClient::handleInputMethodKeydown):
372         (WebEditorClient::textDidChangeInTextField):
373         (WebEditorClient::requestCheckingOfString):
374         * WebCoreSupport/WebFrameLoaderClient.h:
375         * WebCoreSupport/WebFrameLoaderClient.mm:
376         (WebFrameLoaderClient::detachedFromParent2):
377         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
378         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
379         (WebFrameLoaderClient::dispatchWillSendRequest):
380         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
381         (WebFrameLoaderClient::dispatchDidReceiveResponse):
382         (WebFrameLoaderClient::willCacheResponse const):
383         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
384         (WebFrameLoaderClient::dispatchDidFinishLoading):
385         (WebFrameLoaderClient::dispatchDidFailLoading):
386         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
387         (WebFrameLoaderClient::dispatchWillClose):
388         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
389         (WebFrameLoaderClient::dispatchDidCommitLoad):
390         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
391         (WebFrameLoaderClient::dispatchDidFailLoad):
392         (WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
393         (WebFrameLoaderClient::dispatchDidFinishLoad):
394         (WebFrameLoaderClient::dispatchDidReachLayoutMilestone):
395         (WebFrameLoaderClient::willChangeTitle):
396         (WebFrameLoaderClient::didChangeTitle):
397         (WebFrameLoaderClient::didReplaceMultipartContent):
398         (WebFrameLoaderClient::updateGlobalHistory):
399         (WebFrameLoaderClient::saveViewStateToItem):
400         (WebFrameLoaderClient::restoreViewState):
401         (WebFrameLoaderClient::provisionalLoadStarted):
402         (WebFrameLoaderClient::prepareForDataSourceReplacement):
403         (WebFrameLoaderClient::setTitle):
404         (WebFrameLoaderClient::savePlatformDataToCachedFrame):
405         (WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
406         (WebFrameLoaderClient::transitionToCommittedForNewPage):
407         (WebFrameLoaderClient::didRestoreFromPageCache):
408         (WebFrameLoaderClient::actionDictionary const):
409         (WebFrameLoaderClient::createPlugin):
410         (WebFrameLoaderClient::getLoadDecisionForIcons):
411         (WebFrameLoaderClient::finishedLoadingIcon):
412         (+[WebFramePolicyListener initialize]):
413         * WebCoreSupport/WebFrameNetworkingContext.mm:
414         * WebCoreSupport/WebGeolocationClient.h:
415         * WebCoreSupport/WebGeolocationClient.mm:
416         (WebGeolocationClient::requestPermission):
417         * WebCoreSupport/WebInspectorClient.h:
418         * WebCoreSupport/WebJavaScriptTextInputPanel.m:
419         * WebCoreSupport/WebNotificationClient.mm:
420         * WebCoreSupport/WebOpenPanelResultListener.mm:
421         * WebCoreSupport/WebPlatformStrategies.h:
422         * WebCoreSupport/WebPlatformStrategies.mm:
423         * WebCoreSupport/WebProgressTrackerClient.h:
424         * WebCoreSupport/WebProgressTrackerClient.mm:
425         (WebProgressTrackerClient::progressStarted):
426         (WebProgressTrackerClient::progressEstimateChanged):
427         (WebProgressTrackerClient::progressFinished):
428         * WebCoreSupport/WebSecurityOrigin.mm:
429         * WebInspector/WebNodeHighlight.h:
430         * WebInspector/WebNodeHighlight.mm:
431         (-[WebNodeHighlight initWithTargetView:inspectorController:]):
432         (-[WebNodeHighlight dealloc]):
433         (-[WebNodeHighlight attach]):
434         * WebInspector/WebNodeHighlightView.h:
435         * WebInspector/WebNodeHighlightView.mm:
436         (-[WebNodeHighlightView initWithWebNodeHighlight:]):
437         (-[WebNodeHighlightView dealloc]):
438         * WebInspector/WebNodeHighlighter.mm:
439         (-[WebNodeHighlighter highlight]):
440         * WebView/WebArchive.mm:
441         (+[WebArchivePrivate initialize]):
442         * WebView/WebClipView.h:
443         * WebView/WebDataSource.mm:
444         (WebDataSourcePrivate::WebDataSourcePrivate):
445         (+[WebDataSource initialize]):
446         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
447         (-[WebDataSource _makeRepresentation]):
448         * WebView/WebDelegateImplementationCaching.h:
449         * WebView/WebDelegateImplementationCaching.mm:
450         (CallDelegate):
451         (CallDelegateReturningFloat):
452         (CallDelegateReturningBoolean):
453         (CallUIDelegate):
454         (CallUIDelegateReturningFloat):
455         (CallUIDelegateReturningBoolean):
456         (CallFrameLoadDelegate):
457         (CallFrameLoadDelegateReturningBoolean):
458         (CallResourceLoadDelegate):
459         (CallScriptDebugDelegate):
460         (CallFormDelegate):
461         (CallFormDelegateReturningBoolean):
462         * WebView/WebDeviceOrientation.mm:
463         (-[WebDeviceOrientation initWithCanProvideAlpha:alpha:canProvideBeta:beta:canProvideGamma:gamma:]):
464         * WebView/WebDocumentInternal.h:
465         * WebView/WebDocumentLoaderMac.mm:
466         (needsDataLoadWorkaround):
467         * WebView/WebDynamicScrollBarsViewInternal.h:
468         * WebView/WebFormDelegate.m:
469         * WebView/WebFrame.mm:
470         (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
471         (-[WebFrame _unmarkAllMisspellings]):
472         (-[WebFrame _paintBehaviorForDestinationContext:]):
473         (-[WebFrame _drawRect:contentsOnly:]):
474         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
475         (-[WebFrame _scrollDOMRangeToVisible:]):
476         (-[WebFrame _bodyBackgroundColor]):
477         (-[WebFrame accessibilityRoot]):
478         (needsMicrosoftMessengerDOMDocumentWorkaround):
479         * WebView/WebFrameInternal.h:
480         * WebView/WebFrameView.mm:
481         (-[WebFrameView _setDocumentView:]):
482         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
483         (-[WebFrameView _viewClassForMIMEType:]):
484         (-[WebFrameView initWithFrame:]):
485         (-[WebFrameView drawRect:]):
486         (-[WebFrameView _firstResponderIsFormControl]):
487         (-[WebFrameView keyDown:keyDown:]):
488         (-[WebFrameView _isScrollable]):
489         * WebView/WebFullScreenController.h:
490         * WebView/WebFullScreenController.mm:
491         * WebView/WebHTMLRepresentation.mm:
492         * WebView/WebHTMLView.mm:
493         (-[WebHTMLView hitTest:]):
494         (-[WebHTMLView initWithFrame:]):
495         (-[WebHTMLView dealloc]):
496         (-[WebHTMLView addSubview:]):
497         (-[WebHTMLView mouseDown:]):
498         (-[WebHTMLView mouseUp:]):
499         (-[WebHTMLView resignFirstResponder]):
500         (-[WebHTMLView accessibilityHitTest:]):
501         (-[WebHTMLView selectionImageForcingBlackText:selectionImageForcingBlackText:]):
502         * WebView/WebHTMLViewInternal.h:
503         * WebView/WebIndicateLayer.h:
504         * WebView/WebIndicateLayer.mm:
505         * WebView/WebMediaPlaybackTargetPicker.h:
506         * WebView/WebMediaPlaybackTargetPicker.mm:
507         * WebView/WebPDFDocumentExtras.h:
508         * WebView/WebPDFDocumentExtras.mm:
509         * WebView/WebPDFRepresentation.h:
510         * WebView/WebPDFRepresentation.mm:
511         * WebView/WebPDFView.h:
512         * WebView/WebPreferences.mm:
513         (cacheModelForMainBundle):
514         (WebPreferencesPrivate::WebPreferencesPrivate):
515         (-[WebPreferences initWithIdentifier:sendChangeNotification:initWithIdentifier:]):
516         (-[WebPreferences encodeWithCoder:]):
517         (+[WebPreferences standardPreferences]):
518         (+[WebPreferences initialize]):
519         (-[WebPreferences _valueForKey:]):
520         (-[WebPreferences _setStringValue:forKey:]):
521         (-[WebPreferences _setIntegerValue:forKey:]):
522         (-[WebPreferences _setUnsignedIntValue:forKey:]):
523         (-[WebPreferences _setFloatValue:forKey:]):
524         (-[WebPreferences _setBoolValue:forKey:]):
525         (-[WebPreferences _setLongLongValue:forKey:]):
526         (-[WebPreferences _setUnsignedLongLongValue:forKey:]):
527         (-[WebPreferences _postCacheModelChangedNotification]):
528         (-[WebPreferences _postPreferencesChangedNotification]):
529         (+[WebPreferences _switchNetworkLoaderToNewTestingSession]):
530         (-[WebPreferences setStorageBlockingPolicy:]):
531         * WebView/WebResource.mm:
532         (+[WebResourcePrivate initialize]):
533         * WebView/WebTextCompletionController.h:
534         * WebView/WebTextIterator.mm:
535         (+[WebTextIteratorPrivate initialize]):
536         * WebView/WebView.mm:
537         (shouldEnableLoadDeferring):
538         (shouldRestrictWindowFocus):
539         (shouldRespectPriorityInCSSAttributeSetters):
540         (shouldUseLegacyBackgroundSizeShorthandBehavior):
541         (shouldAllowPictureInPictureMediaPlayback):
542         (shouldAllowContentSecurityPolicySourceStarToMatchAnyProtocol):
543         (shouldAllowWindowOpenWithoutUserGesture):
544         (shouldConvertInvalidURLsToBlank):
545         (shouldRequireUserGestureToLoadVideo):
546         (-[WebView _commonInitializationWithFrameName:groupName:]):
547         (+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]):
548         (-[WebView _viewClass:andRepresentationClass:forMIMEType:]):
549         (-[WebView _closePluginDatabases]):
550         (-[WebView _closeWithFastTeardown]):
551         (-[WebView _close]):
552         (+[WebView _MIMETypeForFile:]):
553         (-[WebView setShowingInspectorIndication:]):
554         (-[WebView _setFormDelegate:]):
555         (-[WebView _needsPreHTML5ParserQuirks]):
556         (-[WebView _preferencesChangedNotification:]):
557         (-[WebView _preferencesChanged:]):
558         (-[WebView _cacheResourceLoadDelegateImplementations]):
559         (-[WebView _cacheFrameLoadDelegateImplementations]):
560         (-[WebView _policyDelegateForwarder]):
561         (-[WebView _UIDelegateForwarder]):
562         (-[WebView _editingDelegateForwarder]):
563         (-[WebView _updateActiveState]):
564         (-[_WebSafeForwarder forwardInvocation:]):
565         (+[WebView initialize]):
566         (-[WebView _pluginForMIMEType:]):
567         (-[WebView _pluginForExtension:]):
568         (-[WebView _isMIMETypeRegisteredAsPlugin:]):
569         (+[WebView canShowMIMETypeAsHTML:]):
570         (-[WebView _initWithArguments:]):
571         (-[WebView initWithFrame:frameName:groupName:]):
572         (-[WebView dealloc]):
573         (-[WebView close]):
574         (-[WebView viewDidMoveToWindow]):
575         (-[WebView setUIDelegate:]):
576         (-[WebView setResourceLoadDelegate:]):
577         (-[WebView setPolicyDelegate:]):
578         (-[WebView setFrameLoadDelegate:]):
579         (-[WebView goBack]):
580         (-[WebView goForward]):
581         (-[WebView stringByEvaluatingJavaScriptFromString:]):
582         (-[WebView setHostWindow:]):
583         (-[WebView becomeFirstResponder]):
584         (+[WebView _cacheModelChangedNotification:]):
585         (-[WebView _frameViewAtWindowPoint:]):
586         (+[WebView _preflightSpellCheckerNow:]):
587         (+[WebView _preflightSpellChecker]):
588         (-[WebView canGoBack]):
589         (-[WebView canGoForward]):
590         (-[WebView stopLoading:]):
591         (-[WebView reload:]):
592         (-[WebView setMainFrameDocumentReady:]):
593         (-[WebView _shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]):
594         (-[WebView setContinuousSpellCheckingEnabled:]):
595         (-[WebView undoManager]):
596         (-[WebView isAutomaticQuoteSubstitutionEnabled]):
597         (-[WebView isAutomaticLinkDetectionEnabled]):
598         (-[WebView isAutomaticDashSubstitutionEnabled]):
599         (-[WebView isAutomaticTextReplacementEnabled]):
600         (-[WebView isAutomaticSpellingCorrectionEnabled]):
601         (+[WebView _setCacheModel:]):
602         (-[WebView _retrieveKeyboardUIModeFromPreferences:]):
603         (-[WebView _keyboardUIMode]):
604         (LayerFlushController::flushLayers):
605         (-[WebView _scheduleCompositingLayerFlush]):
606         (-[WebView _enterVideoFullscreenForVideoElement:mode:]):
607         (-[WebView fullScreenPlaceholderView]):
608         (WebInstallMemoryPressureHandler):
609         * WebView/WebViewData.h:
610         * WebView/WebViewData.mm:
611         (+[WebViewPrivate initialize]):
612         (-[WebViewPrivate init]):
613         (-[WebViewPrivate dealloc]):
614         * WebView/WebViewInternal.h:
615
616 2018-10-18  Alex Christensen  <achristensen@webkit.org>
617
618         Clean up FrameLoader two-state enums
619         https://bugs.webkit.org/show_bug.cgi?id=190731
620
621         Reviewed by Chris Dumez.
622
623         * WebCoreSupport/WebFrameLoaderClient.h:
624         * WebCoreSupport/WebFrameLoaderClient.mm:
625         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
626
627 2018-10-18  Alex Christensen  <achristensen@webkit.org>
628
629         Unreviewed, rolling out r237137.
630
631         SPI is actually used
632
633         Reverted changeset:
634
635         "Remove unused WebFrame._loadType"
636         https://bugs.webkit.org/show_bug.cgi?id=190583
637         https://trac.webkit.org/changeset/237137
638
639 2018-10-17  Wenson Hsieh  <wenson_hsieh@apple.com>
640
641         Enable the datalist element by default on iOS and macOS
642         https://bugs.webkit.org/show_bug.cgi?id=190594
643         <rdar://problem/45281159>
644
645         Reviewed by Ryosuke Niwa and Tim Horton.
646
647         * Configurations/FeatureDefines.xcconfig:
648
649 2018-10-17  Alex Christensen  <achristensen@webkit.org>
650
651         BackForwardClient needs to be able to support UIProcess-only back/forward lists
652         https://bugs.webkit.org/show_bug.cgi?id=190675
653
654         Reviewed by Chris Dumez.
655
656         * History/BackForwardList.h:
657         * History/BackForwardList.mm:
658         (BackForwardList::backItem):
659         (BackForwardList::currentItem):
660         (BackForwardList::forwardItem):
661         (BackForwardList::backListCount const):
662         (BackForwardList::forwardListCount const):
663         (BackForwardList::itemAtIndex):
664         * History/WebBackForwardList.mm:
665         (-[WebBackForwardList backItem]):
666         (-[WebBackForwardList currentItem]):
667         (-[WebBackForwardList forwardItem]):
668         (-[WebBackForwardList itemAtIndex:]):
669
670 2018-10-16  Timothy Hatcher  <timothy@apple.com>
671
672         Add <meta name="supported-color-schemes"> to control what color schemes the page supports
673         https://bugs.webkit.org/show_bug.cgi?id=190526
674         rdar://problem/45230140
675
676         Reviewed by Dean Jackson.
677
678         * WebCoreSupport/WebEditorClient.mm:
679         (_WebCreateFragment): Update use of LocalDefaultSystemAppearance.
680
681 2018-10-16  Justin Michaud  <justin_michaud@apple.com>
682
683         Implement feature flag and bindings for CSS Painting API
684         https://bugs.webkit.org/show_bug.cgi?id=190237
685
686         Reviewed by Ryosuke Niwa.
687
688         * Configurations/FeatureDefines.xcconfig:
689
690 2018-10-16  Alex Christensen  <achristensen@webkit.org>
691
692         Replace HistoryItem* with HistoryItem& where possible
693         https://bugs.webkit.org/show_bug.cgi?id=190617
694
695         Reviewed by Chris Dumez.
696
697         * History/BackForwardList.h:
698         * History/BackForwardList.mm:
699         (BackForwardList::goToItem):
700         * History/WebBackForwardList.mm:
701         (-[WebBackForwardList goToItem:]):
702         * History/WebHistoryItem.mm:
703         (WKNotifyHistoryItemChanged):
704         * History/WebHistoryItemInternal.h:
705
706 2018-10-16  Alex Christensen  <achristensen@webkit.org>
707
708         Remove unused WebHistoryItem._transientPropertyForKey
709         https://bugs.webkit.org/show_bug.cgi?id=190606
710
711         Reviewed by Chris Dumez.
712
713         * History/WebHistoryItem.mm:
714         * History/WebHistoryItemPrivate.h:
715
716 2018-10-15  Justin Fan  <justin_fan@apple.com>
717
718         Add WebGPU 2018 feature flag and experimental feature flag
719         https://bugs.webkit.org/show_bug.cgi?id=190509
720
721         Reviewed by Dean Jackson.
722
723         Re-add ENABLE_WEBGPU, an experimental feature flag, and a RuntimeEnabledFeature
724         for the 2018 WebGPU prototype.
725
726         * Configurations/FeatureDefines.xcconfig:
727         * WebView/WebPreferenceKeysPrivate.h:
728         * WebView/WebPreferences.mm:
729         (+[WebPreferences initialize]):
730         (-[WebPreferences webGPUEnabled]):
731         (-[WebPreferences setWebGPUEnabled:]):
732         * WebView/WebPreferencesPrivate.h:
733         * WebView/WebView.mm:
734         (-[WebView _preferencesChanged:]):
735
736 2018-10-15  Alex Christensen  <achristensen@webkit.org>
737
738         Fix iOS build after r237157
739
740         * WebView/WebView.mm:
741         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
742
743 2018-10-15  Alex Christensen  <achristensen@webkit.org>
744
745         Modernize BackForwardClient.h
746         https://bugs.webkit.org/show_bug.cgi?id=190610
747
748         Reviewed by Chris Dumez.
749
750         * History/BackForwardList.h:
751         * History/BackForwardList.mm:
752         (BackForwardList::backListCount const):
753         (BackForwardList::forwardListCount const):
754         (BackForwardList::backListCount): Deleted.
755         (BackForwardList::forwardListCount): Deleted.
756         * History/WebBackForwardList.mm:
757         (-[WebBackForwardList init]):
758         * WebCoreSupport/WebFrameLoaderClient.mm:
759         (WebFrameLoaderClient::canCachePage const):
760         * WebView/WebFrameView.mm:
761         (-[WebFrameView keyDown:keyDown:]):
762         * WebView/WebView.mm:
763         (-[WebView _commonInitializationWithFrameName:groupName:]):
764         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
765         (-[WebView _loadBackForwardListFromOtherView:]):
766         (-[WebView initWithCoder:]):
767         (-[WebView encodeWithCoder:]):
768         (-[WebView backForwardList]):
769         (-[WebView setMaintainsBackForwardList:]):
770
771 2018-10-15  Timothy Hatcher  <timothy@apple.com>
772
773         Add support for prefers-color-scheme media query
774         https://bugs.webkit.org/show_bug.cgi?id=190499
775         rdar://problem/45212025
776
777         Reviewed by Dean Jackson.
778
779         * Configurations/FeatureDefines.xcconfig: Added ENABLE_DARK_MODE_CSS.
780
781 2018-10-15  Alex Christensen  <achristensen@webkit.org>
782
783         Remove unused WebView._globalHistoryItem
784         https://bugs.webkit.org/show_bug.cgi?id=190601
785
786         Reviewed by Chris Dumez.
787
788         * WebCoreSupport/WebFrameLoaderClient.h:
789         * WebCoreSupport/WebFrameLoaderClient.mm:
790         (WebFrameLoaderClient::updateGlobalHistoryItemForPage): Deleted.
791         * WebView/WebView.mm:
792         (-[WebView _globalHistoryItem]): Deleted.
793         (-[WebView _setGlobalHistoryItem:]): Deleted.
794         * WebView/WebViewData.h:
795         * WebView/WebViewInternal.h:
796         * WebView/WebViewPrivate.h:
797
798 2018-10-15  Alex Christensen  <achristensen@webkit.org>
799
800         Remove unused parameters from FrameLoaderClient::createFrame
801         https://bugs.webkit.org/show_bug.cgi?id=190587
802
803         Reviewed by Chris Dumez.
804
805         * WebCoreSupport/WebFrameLoaderClient.h:
806         * WebCoreSupport/WebFrameLoaderClient.mm:
807         (WebFrameLoaderClient::createFrame):
808
809 2018-10-15  Alex Christensen  <achristensen@webkit.org>
810
811         Remove unused WebFrame._loadType
812         https://bugs.webkit.org/show_bug.cgi?id=190583
813
814         Reviewed by Chris Dumez.
815
816         This is unused, and this concept needs to not be exposed from WebCore to WebKitLegacy for me to fix history bugs.
817
818         * WebView/WebFrame.mm:
819         (toWebFrameLoadType): Deleted.
820         (-[WebFrame _loadType]): Deleted.
821         * WebView/WebFramePrivate.h:
822
823 2018-10-15  Chris Dumez  <cdumez@apple.com>
824
825         Restrict browsing context lookup by name to frames that are related to one another
826         https://bugs.webkit.org/show_bug.cgi?id=190475
827
828         Reviewed by Alex Christensen.
829
830         * WebView/WebFrame.mm:
831         (-[WebFrame findFrameNamed:]):
832
833 2018-10-15  Alex Christensen  <achristensen@webkit.org>
834
835         Remove InjectedBundle processing of back/forward lists
836         https://bugs.webkit.org/show_bug.cgi?id=190459
837
838         Reviewed by Chris Dumez.
839
840         * WebCoreSupport/WebFrameLoaderClient.h:
841         * WebCoreSupport/WebFrameLoaderClient.mm:
842         (WebFrameLoaderClient::shouldGoToHistoryItem const):
843
844 2018-10-14  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
845
846         [JSC] Remove Option::useAsyncIterator
847         https://bugs.webkit.org/show_bug.cgi?id=190567
848
849         Reviewed by Saam Barati.
850
851         * Configurations/FeatureDefines.xcconfig:
852
853 2018-10-12  Alex Christensen  <achristensen@webkit.org>
854
855         Allow encoding of small enum classes
856         https://bugs.webkit.org/show_bug.cgi?id=190531
857
858         Reviewed by Tim Horton.
859
860         * WebCoreSupport/WebFrameLoaderClient.mm:
861         (-[WebFramePolicyListener dealloc]):
862
863 2018-10-11  Keith Rollin  <krollin@apple.com>
864
865         CURRENT_ARCH should not be used in Run Script phase.
866         https://bugs.webkit.org/show_bug.cgi?id=190407
867         <rdar://problem/45133556>
868
869         Reviewed by Alexey Proskuryakov.
870
871         CURRENT_ARCH is used in a number of Xcode Run Script phases. However,
872         CURRENT_ARCH is not well-defined during this phase (and may even have
873         the value "undefined") since this phase is run just once per build
874         rather than once per supported architecture. Migrate away from
875         CURRENT_ARCH in favor of ARCHS, either by iterating over ARCHS and
876         performing an operation for each value, or by picking the first entry
877         in ARCHS and using that as a representative value.
878
879         * Configurations/WebKitLegacy.xcconfig: When generating
880         WebKitLegacy.*.exp, generate both 32- and 64-bit versions for
881         macosx platforms.
882
883         * MigrateHeaders.make:
884         * migrate-headers.sh: When generating ReexportedWebCoreSymbols_*.exp,
885         generate one for each architecture in ARCHS.
886
887 2018-10-10  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
888
889         [JSC] Rename createXXX to tryCreateXXX if it can return RefPtr
890         https://bugs.webkit.org/show_bug.cgi?id=190429
891
892         Reviewed by Saam Barati.
893
894         Use `tryCreate` or new `create`. If we use new `create`, we can use Ref<> and remove null check.
895
896         * WebView/WebPDFRepresentation.mm:
897         (-[WebPDFRepresentation finishedLoadingWithDataSource:]):
898
899 2018-10-08  Justin Fan  <justin_fan@apple.com>
900
901         WebGPU: Rename old WebGPU prototype to WebMetal
902         https://bugs.webkit.org/show_bug.cgi?id=190325
903         <rdar://problem/44990443>
904
905         Reviewed by Dean Jackson.
906
907         Rename WebGPU prototype files to WebMetal in preparation for implementing the new (Oct 2018) WebGPU interface.
908
909         * Configurations/FeatureDefines.xcconfig:
910         * WebView/WebPreferenceKeysPrivate.h:
911         * WebView/WebPreferences.mm:
912         (+[WebPreferences initialize]):
913         (-[WebPreferences webMetalEnabled]):
914         (-[WebPreferences setWebMetalEnabled:]):
915         (-[WebPreferences webGPUEnabled]): Deleted.
916         (-[WebPreferences setWebGPUEnabled:]): Deleted.
917         * WebView/WebPreferencesPrivate.h:
918         * WebView/WebView.mm:
919         (-[WebView _preferencesChanged:]):
920
921 2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
922
923         Make <input type=color> a runtime enabled (on-by-default) feature
924         https://bugs.webkit.org/show_bug.cgi?id=189162
925
926         Reviewed by Wenson Hsieh and Tim Horton.
927
928         * Configurations/FeatureDefines.xcconfig:
929
930 2018-10-07  Dan Bernstein  <mitz@apple.com>
931
932         Fixed building with the latest macOS SDK
933
934         * Plugins/WebNetscapePluginPackage.mm:
935         (-[WebNetscapePluginPackage openResourceFile]):
936         (-[WebNetscapePluginPackage closeResourceFile:]):
937
938 2018-10-04  Dan Bernstein  <mitz@apple.com>
939
940         More Carbon build-fixing.
941
942         * Carbon/CarbonWindowAdapter.mm:
943         (-[CarbonWindowAdapter _destroyRealWindow:]):
944         (-[CarbonWindowAdapter _growBoxRect]):
945
946 2018-10-04  Dan Bernstein  <mitz@apple.com>
947
948         Retried to fix 32-bit macOS builds after r236846.
949
950         * WebView/WebHTMLView.mm:
951         (-[WebHTMLView setMarkedText:selectedRange:]):
952
953 2018-10-04  Dan Bernstein  <mitz@apple.com>
954
955         Retried to fix 32-bit macOS builds after r236846.
956
957         * Carbon/HIWebView.mm:
958         (ActiveStateChanged):
959
960 2018-10-04  Dan Bernstein  <mitz@apple.com>
961
962         Tried to fix 32-bit macOS builds after r236846.
963
964         * Carbon/HIWebView.mm:
965         (_NSSelectorForHICommand):
966
967 2018-10-04  Dan Bernstein  <mitz@apple.com>
968
969         WebKitLegacy part of [Xcode] Update some build settings as recommended by Xcode 10
970         https://bugs.webkit.org/show_bug.cgi?id=190250
971
972         Reviewed by Andy Estes.
973
974         * Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA, CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF,
975           CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
976           Also enabled GCC_WARN_UNDECLARED_SELECTOR by deleting the line that set it to NO, which let
977           an earlier line set it to YES.
978
979         Enabling -Wundeclared-selector exposed some long-standing mistakes and required the most
980         changes below.
981
982         * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Imported an internal header that
983           provides some missing method declarations.
984
985         * Misc/WebDownload.mm:
986         (-[WebDownload initWithRequest:delegate:]): Suppressed warning about this implementation of
987           a deprecated method.
988
989         * Misc/WebIconDatabase.mm: Suppressed warning around our implementation of a deprecated class.
990
991         * Misc/WebNSObjectExtras.mm: Declare a category that is implemented in this file, because
992           other code in the file uses a method from it.
993
994         * Plugins/WebBaseNetscapePluginView.mm:
995         (-[WebBaseNetscapePluginView renewGState]): Suppressed warning about this implementation of
996           a deprecated method.
997
998         * Plugins/WebPluginController.mm:
999         (installFlip4MacPlugInWorkaroundIfNecessary): Suppressed the undeclared selector warning
1000           around use of a selector that may be present in some WebKit client.
1001
1002         * Plugins/WebPluginDatabase.mm: Imported an internal header that provides some missing
1003           method declarations.
1004
1005         * WebCoreSupport/PopupMenuMac.mm: Imported a header that delcares delegate methods we call
1006           from here.
1007
1008         * WebCoreSupport/WebCachedFramePlatformData.h: Imported an internal header that provides some
1009           missing method declarations.
1010
1011         * WebCoreSupport/WebChromeClient.mm: Imported a header that declares delegate methods we call
1012           from here.
1013
1014         * WebCoreSupport/WebFrameLoaderClient.mm: Imported headers that declare delegate methods we
1015           call from here.
1016         (WebFrameLoaderClient::setTitle): Suppressed the undeclared selector warning around use of
1017           an obsolete delegate method for binary compatibility.
1018         (pluginView): Ditto.
1019
1020         * WebCoreSupport/WebVisitedLinkStore.mm: Imported a header that declares delegate methods we
1021           call from here.
1022
1023         * WebView/WebDeviceOrientationInternal.h: Declared -setController in a new
1024           WebDeviceOrientationProviderMock protocol.
1025
1026         * WebView/WebDeviceOrientationProviderMock.mm:
1027         (-[WebDeviceOrientationProviderMock setController:]): Moved from an internal category to the
1028           main @implementation.
1029
1030         * WebView/WebDeviceOrientationProviderMockInternal.h: Declared that
1031           WebDeviceOrientationProviderMock conforms to WebDeviceOrientationProviderMock.
1032
1033         * WebView/WebDynamicScrollBarsView.mm:
1034         (-[WebDynamicScrollBarsView accessibilityIsIgnored]): Suppressed warning about this implementation
1035           of a deprecated method.
1036
1037         * WebView/WebHTMLView.mm:
1038         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Suppressed the undeclared
1039           selector warning around action methods that are not declared anywhere in WebKit.
1040
1041         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): Suppressed warning
1042           about implementing this deprecated method.
1043         (-[WebHTMLView draggingSourceOperationMaskForLocal:]): Ditto.
1044         (-[WebHTMLView draggedImage:endedAt:operation:]): Ditto.
1045         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.
1046         (-[WebHTMLView accessibilityAttributeValue:]): Ditto.
1047         (-[WebHTMLView characterIndexForPoint:]): Ditto.
1048         (-[WebHTMLView firstRectForCharacterRange:]): Ditto.
1049         (-[WebHTMLView attributedSubstringFromRange:]): Ditto.
1050         (-[WebHTMLView setMarkedText:selectedRange:]): Ditto.
1051         (-[WebHTMLView doCommandBySelector:]): Ditto.
1052         (-[WebHTMLView insertText:]): Ditto.
1053
1054         * WebView/WebHTMLViewInternal.h: Declared an internal method that’s used from another file.
1055
1056         * WebView/WebJSPDFDoc.mm: Imported a header that declares delegate methods we call from here.
1057
1058         * WebView/WebPDFView.h: Removed previewView ivar.
1059
1060         * WebView/WebPDFView.mm:
1061           Removed declaration of FileInternal category and merged its implementation with the main
1062           implementation.
1063         (-[WebPDFView dealloc]): Removed previewView ivar.
1064         (-[WebPDFView initWithFrame:]): Removed code to deal with PDFPreviewView, which doesn’t
1065           exist in macOS versions we support.
1066         (+[WebPDFView _PDFPreviewViewClass]): Deleted. PDFPreviewView doesn’t exist anymore.
1067         (-[WebPDFView _canLookUpInDictionary]): Suppressed undeclared selector warning around use of
1068           action methods internal to PDFKit.
1069         (-[WebPDFView _lookUpInDictionaryFromMenu:]): Ditto.
1070         (-[WebPDFView _menuItemsFromPDFKitForEvent:]): Ditto.
1071
1072         * WebView/WebUIDelegatePrivate.h: Restored declarations of the delegate methods we actually
1073           call on macOS, even though in r86988 we started calling different methods on iOS.
1074
1075         * WebView/WebView.mm:
1076         - Imported headers that declare delegate methods that we call.
1077         - Removed declaration of WebFileInternal category and merged its implementation with the
1078           main implementation.
1079         - Many internal methods were inexplicibly implemented as part of the WebViewEditingInMail
1080           category, which made them impossible to call from the main implementation. Moved those
1081           into the main implementation. One of those had to be declared in a class extension,
1082           because it is called from a method implemented in the WebPrivate category, and that
1083           category’s implementation appears first in the file.
1084
1085         (-[WebView _cacheHistoryDelegateImplementations]): Suppressed undeclared selector warning
1086           around use of obsolete delegate method for binary compatibility.
1087
1088         * WebView/WebViewInternal.h: Declared an internal method that’s used from another file.
1089
1090 2018-10-04  YUHAN WU  <yuhan_wu@apple.com>
1091
1092         Runtime flag and IDL for MediaRecorder
1093         https://bugs.webkit.org/show_bug.cgi?id=190018
1094
1095         Reviewed by Youenn Fablet and Chris Dumez.
1096
1097         * WebView/WebPreferenceKeysPrivate.h:
1098         * WebView/WebPreferences.mm:
1099         (+[WebPreferences initialize]):
1100         (-[WebPreferences mediaRecorderEnabled]):
1101         (-[WebPreferences setMediaRecorderEnabled:]):
1102         * WebView/WebPreferencesPrivate.h:
1103         * WebView/WebView.mm:
1104         (-[WebView _preferencesChanged:]):
1105
1106 2018-10-03  Ryosuke Niwa  <rniwa@webkit.org>
1107
1108         Enable selectionAcrossShadowBoundariesEnabled by default in WebKitLegacy
1109         https://bugs.webkit.org/show_bug.cgi?id=190238
1110
1111         Reviewed by Antti Koivisto.
1112
1113         Enabled the feature by default.
1114
1115         * WebView/WebPreferences.mm:
1116         (+[WebPreferences initialize]):
1117
1118 2018-10-01  Dean Jackson  <dino@apple.com>
1119
1120         [macOS] Switching to discrete GPU should be done in the UI process
1121         https://bugs.webkit.org/show_bug.cgi?id=189361
1122         <rdar://problem/43949622>
1123
1124         Reviewed by Simon Fraser.
1125
1126         Implement a no-op SwitchingGPUClient instance in legacy WebKit. We will
1127         not support swapping to the discrete GPU in this configuration.
1128
1129         * WebCoreSupport/WebSwitchingGPUClient.cpp: Added.
1130         (WebKit::WebSwitchingGPUClient::singleton):
1131         * WebCoreSupport/WebSwitchingGPUClient.h: Added.
1132         * WebView/WebView.mm:
1133         (-[WebView _commonInitializationWithFrameName:groupName:]):
1134
1135 2018-10-02  Alex Christensen  <achristensen@webkit.org>
1136
1137         Remove ParsedURLString
1138         https://bugs.webkit.org/show_bug.cgi?id=190154
1139
1140         Reviewed by Chris Dumez.
1141
1142         * WebView/WebScriptDebugger.mm:
1143         (toNSURL):
1144
1145 2018-10-01  Dean Jackson  <dino@apple.com>
1146
1147         Remove CSS Animation Triggers
1148         https://bugs.webkit.org/show_bug.cgi?id=190175
1149         <rdar://problem/44925626>
1150
1151         Reviewed by Simon Fraser.
1152
1153         * Configurations/FeatureDefines.xcconfig:
1154
1155 2018-10-02  Commit Queue  <commit-queue@webkit.org>
1156
1157         Unreviewed, rolling out r236624 and r236671.
1158         https://bugs.webkit.org/show_bug.cgi?id=190207
1159
1160         The change in r236624 introduced crashes on the bots
1161         (Requested by ryanhaddad on #webkit).
1162
1163         Reverted changesets:
1164
1165         "Refactoring: eliminate raw pointer usage in Fullscreen code"
1166         https://bugs.webkit.org/show_bug.cgi?id=188747
1167         https://trac.webkit.org/changeset/236624
1168
1169         "Unify implementation in VideoFullscreenInterfaceAVKit"
1170         https://bugs.webkit.org/show_bug.cgi?id=190091
1171         https://trac.webkit.org/changeset/236671
1172
1173 2018-10-01  Alex Christensen  <achristensen@webkit.org>
1174
1175         URL should not use TextEncoding internally
1176         https://bugs.webkit.org/show_bug.cgi?id=190111
1177
1178         Reviewed by Andy Estes.
1179
1180         * Misc/WebNSURLExtras.mm:
1181
1182 2018-09-28  Jer Noble  <jer.noble@apple.com>
1183
1184         Refactoring: eliminate raw pointer usage in Fullscreen code
1185         https://bugs.webkit.org/show_bug.cgi?id=188747
1186         <rdar://problem/43541164>
1187
1188         Reviewed by Alex Christensen.
1189
1190         PlaybackSessionInterface no longer has an invalidate() method.
1191
1192         * WebView/WebView.mm:
1193         (-[WebView _clearPlaybackControlsManager]):
1194
1195 2018-09-28  Chris Dumez  <cdumez@apple.com>
1196
1197         Drop support for cross-origin-window-policy header
1198         https://bugs.webkit.org/show_bug.cgi?id=190081
1199
1200         Reviewed by Ryosuke Niwa.
1201
1202         * WebView/WebPreferenceKeysPrivate.h:
1203         * WebView/WebPreferences.mm:
1204         (+[WebPreferences initialize]):
1205         * WebView/WebPreferencesPrivate.h:
1206         * WebView/WebView.mm:
1207         (-[WebView _preferencesChanged:]):
1208
1209 2018-09-28  Ryosuke Niwa  <rniwa@webkit.org>
1210
1211         Rename createMarkup to serializePreservingVisualAppearance
1212         https://bugs.webkit.org/show_bug.cgi?id=190086
1213
1214         Reviewed by Wenson Hsieh.
1215
1216         * DOM/WebDOMOperations.mm:
1217         (-[DOMRange markupString]):
1218
1219 2018-09-28  Commit Queue  <commit-queue@webkit.org>
1220
1221         Unreviewed, rolling out r236605.
1222         https://bugs.webkit.org/show_bug.cgi?id=190087
1223
1224         caused three API test timeouts (Requested by jernoble on
1225         #webkit).
1226
1227         Reverted changeset:
1228
1229         "Refactoring: eliminate raw pointer usage in Fullscreen code"
1230         https://bugs.webkit.org/show_bug.cgi?id=188747
1231         https://trac.webkit.org/changeset/236605
1232
1233 2018-09-28  Jer Noble  <jer.noble@apple.com>
1234
1235         Refactoring: eliminate raw pointer usage in Fullscreen code
1236         https://bugs.webkit.org/show_bug.cgi?id=188747
1237         <rdar://problem/43541164>
1238
1239         Reviewed by Alex Christensen.
1240
1241         PlaybackSessionInterface no longer has an invalidate() method.
1242
1243         * WebView/WebView.mm:
1244         (-[WebView _clearPlaybackControlsManager]):
1245
1246 2018-09-26  Ryosuke Niwa  <rniwa@webkit.org>
1247
1248         Use enum class in createMarkup arguments
1249         https://bugs.webkit.org/show_bug.cgi?id=190028
1250
1251         Reviewed by Wenson Hsieh.
1252
1253         * DOM/WebDOMOperations.mm:
1254         (-[DOMNode markupString]): Moved the code from WebCore/editing/markup.cpp
1255         (-[DOMRange markupString]): Ditto.
1256
1257 2018-09-27  Antoine Quint  <graouts@apple.com>
1258
1259         [Web Animations] Turn Web Animations with CSS integration on
1260         https://bugs.webkit.org/show_bug.cgi?id=184819
1261         <rdar://problem/39597337>
1262
1263         Reviewed by Dean Jackson.
1264
1265         * WebView/WebPreferences.mm:
1266         (+[WebPreferences initialize]):
1267
1268 2018-09-26  Ryosuke Niwa  <rniwa@webkit.org>
1269
1270         Selection should work across shadow boundary when initiated by a mouse drag
1271         https://bugs.webkit.org/show_bug.cgi?id=151380
1272         <rdar://problem/24363872>
1273
1274         Reviewed by Wenson Hsieh.
1275
1276         Added selectionAcrossShadowBoundariesEnabled as a preference to be used in DumpRenderTree.
1277
1278         * WebView/WebPreferenceKeysPrivate.h:
1279         * WebView/WebPreferences.mm:
1280         (+[WebPreferences initialize]):
1281         (-[WebPreferences selectionAcrossShadowBoundariesEnabled]):
1282         (-[WebPreferences setSelectionAcrossShadowBoundariesEnabled:]):
1283         * WebView/WebPreferencesPrivate.h:
1284         * WebView/WebView.mm:
1285         (-[WebView _preferencesChanged:]):
1286
1287 2018-09-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1288
1289         Refactor Editor::fontAttributesForSelectionStart to be platform-agnostic
1290         https://bugs.webkit.org/show_bug.cgi?id=189918
1291         Work towards <rdar://problem/44648705>
1292
1293         Reviewed by Tim Horton.
1294
1295         Replace call sites of fontAttributesForSelectionStart() to fontAttributesAtSelectionStart().createDictionary().
1296
1297         * WebView/WebHTMLView.mm:
1298         (-[WebHTMLView _selectionStartFontAttributesAsRTF]):
1299         (-[WebHTMLView _updateFontPanel]):
1300         * WebView/WebView.mm:
1301         (-[WebView typingAttributes]):
1302
1303 2018-09-17  Darin Adler  <darin@apple.com>
1304
1305         Use OpaqueJSString rather than JSRetainPtr inside WebKit
1306         https://bugs.webkit.org/show_bug.cgi?id=189652
1307
1308         Reviewed by Saam Barati.
1309
1310         * WebView/WebPDFRepresentation.mm:
1311         (-[WebPDFRepresentation finishedLoadingWithDataSource:]): Use OpaqueJSString::create.
1312
1313 2018-09-14  Jer Noble  <jer.noble@apple.com>
1314
1315         Turn SourceBufferChangeTypeEnabled on by default
1316         https://bugs.webkit.org/show_bug.cgi?id=189527
1317
1318         Reviewed by Eric Carlson.
1319
1320         * WebView/WebPreferences.mm:
1321         (+[WebPreferences initialize]):
1322
1323 2018-09-12  Alex Christensen  <achristensen@webkit.org>
1324
1325         Fix an internal build after r235935
1326         https://bugs.webkit.org/show_bug.cgi?id=188996
1327
1328         * Carbon/HIWebView.mm:
1329         (Draw):
1330         r235935 fixed a mismatched macro with deprecated functions below it.  To quickly fix the build, I'm just going to restore the imbalance.
1331
1332 2018-09-12  Guillaume Emont  <guijemont@igalia.com>
1333
1334         Add IGNORE_WARNING_.* macros
1335         https://bugs.webkit.org/show_bug.cgi?id=188996
1336
1337         Reviewed by Michael Catanzaro.
1338
1339         * Carbon/CarbonUtils.m:
1340         (PoolCleaner):
1341         * Carbon/CarbonWindowAdapter.mm:
1342         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
1343         (-[CarbonWindowAdapter setViewsNeedDisplay:]):
1344         (-[CarbonWindowAdapter reconcileToCarbonWindowBounds]):
1345         (-[CarbonWindowAdapter _termWindowIfOwner]):
1346         (-[CarbonWindowAdapter _windowMovedToRect:]):
1347         (-[CarbonWindowAdapter setContentView:]):
1348         (-[CarbonWindowAdapter _handleRootBoundsChanged]):
1349         (-[CarbonWindowAdapter _handleContentBoundsChanged]):
1350         * Carbon/CarbonWindowFrame.m:
1351         (-[CarbonWindowFrame title]):
1352         * Carbon/HIViewAdapter.m:
1353         (+[HIViewAdapter getHIViewForNSView:]):
1354         * Carbon/HIWebView.mm:
1355         (overrideCGContext):
1356         (restoreCGContext):
1357         (Draw):
1358         * DOM/DOM.mm:
1359         * History/WebHistory.mm:
1360         (-[WebHistoryPrivate loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]):
1361         * History/WebHistoryItem.mm:
1362         (-[WebHistoryItem icon]):
1363         * Misc/WebKitNSStringExtras.mm:
1364         (-[NSString _web_drawAtPoint:font:textColor:]):
1365         * Misc/WebNSImageExtras.m:
1366         (-[NSImage _web_scaleToMaxSize:]):
1367         (-[NSImage _web_dissolveToFraction:]):
1368         * Misc/WebNSPasteboardExtras.mm:
1369         (+[NSPasteboard _web_setFindPasteboardString:withOwner:]):
1370         (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):
1371         * Panels/WebAuthenticationPanel.m:
1372         (-[WebAuthenticationPanel loadNib]):
1373         * Plugins/Hosted/NetscapePluginHostManager.mm:
1374         (WebKit::NetscapePluginHostManager::spawnPluginHost):
1375         (WebKit::NetscapePluginHostManager::didCreateWindow):
1376         * Plugins/Hosted/NetscapePluginHostProxy.mm:
1377         (WebKit::NetscapePluginHostProxy::makeCurrentProcessFrontProcess):
1378         (WebKit::NetscapePluginHostProxy::makePluginHostProcessFrontProcess const):
1379         (WebKit::NetscapePluginHostProxy::isPluginHostProcessFrontProcess const):
1380         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1381         (WebKit::NetscapePluginInstanceProxy::mouseEvent):
1382         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1383         (-[WebHostedNetscapePluginView drawRect:]):
1384         * Plugins/Hosted/WebTextInputWindowController.m:
1385         (-[WebTextInputPanel _interpretKeyEvent:string:]):
1386         * Plugins/WebBaseNetscapePluginView.mm:
1387         (-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]):
1388         * Plugins/WebNetscapePluginPackage.mm:
1389         (-[WebNetscapePluginPackage _tryLoad]):
1390         * Plugins/WebNetscapePluginView.mm:
1391         (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
1392         (-[WebNetscapePluginView sendDrawRectEvent:]):
1393         (-[WebNetscapePluginView drawRect:]):
1394         * Plugins/WebPluginController.mm:
1395         (WebKit_TSUpdateCheck_alertDidEnd_returnCode_contextInfo_):
1396         (WebKit_NSAlert_beginSheetModalForWindow_modalDelegate_didEndSelector_contextInfo_):
1397         * WebCoreSupport/PopupMenuMac.mm:
1398         (PopupMenuMac::populate):
1399         * WebCoreSupport/WebAlternativeTextClient.h:
1400         * WebCoreSupport/WebDragClient.mm:
1401         (WebDragClient::startDrag):
1402         * WebCoreSupport/WebFrameLoaderClient.mm:
1403         (WebFrameLoaderClient::convertMainResourceLoadToDownload):
1404         (webGetNSImage):
1405         * WebInspector/WebNodeHighlight.mm:
1406         * WebInspector/WebNodeHighlightView.mm:
1407         (-[WebNodeHighlightView drawRect:]):
1408         * WebView/WebClipView.mm:
1409         (-[WebClipView initWithFrame:]):
1410         * WebView/WebFrame.mm:
1411         (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
1412         (-[WebFrame _drawRect:contentsOnly:]):
1413         (-[WebFrame accessibilityRoot]):
1414         * WebView/WebFullScreenController.mm:
1415         (-[WebFullScreenController enterFullScreen:]):
1416         (-[WebFullScreenController finishedEnterFullScreenAnimation:]):
1417         (-[WebFullScreenController exitFullScreen]):
1418         (-[WebFullScreenController finishedExitFullScreenAnimation:]):
1419         (-[WebFullScreenController _startEnterFullScreenAnimationWithDuration:]):
1420         (-[WebFullScreenController _startExitFullScreenAnimationWithDuration:]):
1421         * WebView/WebHTMLView.mm:
1422         (-[NSWindow _web_borderView]):
1423         (-[WebHTMLView _updateMouseoverWithFakeEvent]):
1424         (-[WebHTMLView _setAsideSubviews]):
1425         (-[WebHTMLView _autoscroll]):
1426         (-[WebHTMLView drawRect:]):
1427         (-[WebHTMLView mouseDown:]):
1428         (-[WebHTMLView mouseDragged:]):
1429         (-[WebHTMLView mouseUp:]):
1430         (-[WebHTMLView _endPrintModeAndRestoreWindowAutodisplay]):
1431         (-[WebHTMLView knowsPageRange:]):
1432         (-[WebHTMLView accessibilityHitTest:]):
1433         (-[WebHTMLView _fontAttributesFromFontPasteboard]):
1434         (-[WebHTMLView _colorAsString:]):
1435         (-[WebHTMLView copyFont:]):
1436         (-[WebHTMLView _executeSavedKeypressCommands]):
1437         (-[WebHTMLView attachRootLayer:]):
1438         (-[WebHTMLView textStorage]):
1439         (-[WebHTMLView _updateSelectionForInputManager]):
1440         * WebView/WebPDFView.mm:
1441         (_applicationInfoForMIMEType):
1442         (-[WebPDFView centerSelectionInVisibleArea:]):
1443         (-[WebPDFView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
1444         (-[WebPDFView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
1445         (-[WebPDFView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
1446         (-[WebPDFView searchFor:direction:caseSensitive:wrap:startInSelection:]):
1447         * WebView/WebTextCompletionController.mm:
1448         (-[WebTextCompletionController _buildUI]):
1449         (-[WebTextCompletionController _placePopupWindow:]):
1450         * WebView/WebVideoFullscreenController.mm:
1451         * WebView/WebVideoFullscreenHUDWindowController.mm:
1452         (createMediaUIBackgroundView):
1453         * WebView/WebView.mm:
1454         (-[WebTextListTouchBarViewController initWithWebView:]):
1455         (-[WebView _dispatchTileDidDraw:]):
1456         (-[WebView encodeWithCoder:]):
1457         (-[WebView mainFrameIcon]):
1458         (LayerFlushController::flushLayers):
1459         * WebView/WebWindowAnimation.mm:
1460         (setScaledFrameForWindow):
1461
1462 2018-09-10  Fujii Hironori  <Hironori.Fujii@sony.com>
1463
1464         Remove unused needsDestruction class variables from HashTraits
1465         https://bugs.webkit.org/show_bug.cgi?id=189490
1466
1467         Reviewed by Daniel Bates.
1468
1469         * History/BinaryPropertyList.cpp: Removed needsDestruction.
1470
1471 2018-09-07  Frederic Wang  <fwang@igalia.com>
1472
1473         [CSSOM View] Handle the scrollingElement in Element::scroll(Left/Top/Width/Height/To)
1474         https://bugs.webkit.org/show_bug.cgi?id=182230
1475
1476         Reviewed by Simon Fraser.
1477
1478         * DOM/DOMDocument.mm:
1479         (-[DOMDocument scrollingElement]): Use the new name.
1480
1481 2018-09-06  Wenson Hsieh  <wenson_hsieh@apple.com>
1482
1483         Refactor WebCore::EditAction to be an 8-bit enum class
1484         https://bugs.webkit.org/show_bug.cgi?id=189383
1485
1486         Reviewed by Dan Bernstein.
1487
1488         * WebCoreSupport/WebEditorClient.mm:
1489         (undoNameForEditAction):
1490         * WebView/WebHTMLView.mm:
1491         (-[WebHTMLView pasteFont:]):
1492         (-[WebHTMLView changeFont:]):
1493         (-[WebHTMLView changeAttributes:]):
1494         (-[WebHTMLView _undoActionFromColorPanelWithSelector:]):
1495         (-[WebHTMLView changeColor:]):
1496         * WebView/WebView.mm:
1497         (-[WebView setTypingStyle:]):
1498
1499 2018-09-06  Frederic Wang  <fwang@igalia.com>
1500
1501         Group options of scrollRectToVisible into a struct
1502         https://bugs.webkit.org/show_bug.cgi?id=189352
1503
1504         Reviewed by Simon Fraser.
1505
1506         * WebView/WebFrame.mm: Add header to use ScrollRectToVisibleOptions.
1507         (-[WebFrame _scrollDOMRangeToVisible:]): Pass options via a struct.
1508         (-[WebFrame _scrollDOMRangeToVisible:withInset:]): Ditto.
1509
1510 2018-09-06  Wenson Hsieh  <wenson_hsieh@apple.com>
1511
1512         [macOS] Cannot change font size at selection until font panel is shown
1513         https://bugs.webkit.org/show_bug.cgi?id=189295
1514         <rdar://problem/35593389>
1515
1516         Reviewed by Ryosuke Niwa.
1517
1518         Remove code in WebKitLegacy for diffing NSFonts to figure out which style properties need to be changed. See
1519         WebCore ChangeLog for more details.
1520
1521         * WebView/WebHTMLView.mm:
1522         (-[WebHTMLView changeFont:]):
1523         (-[WebHTMLView changeAttributes:]):
1524         (-[WebHTMLView _originalFontA]): Deleted.
1525         (-[WebHTMLView _originalFontB]): Deleted.
1526         (fontNameForDescription): Deleted.
1527         (-[WebHTMLView _addToStyle:fontA:fontB:]): Deleted.
1528         (-[WebHTMLView _styleFromFontManagerOperation]): Deleted.
1529         (-[WebHTMLView _styleForAttributeChange:]): Deleted.
1530
1531 2018-09-05  Jer Noble  <jer.noble@apple.com>
1532
1533         Add MediaCapabilities as an Experimental Feature
1534         https://bugs.webkit.org/show_bug.cgi?id=189209
1535
1536         Reviewed by Eric Carlson.
1537
1538         RuntimeEnabledFeature -> Setting.
1539
1540         * WebView/WebView.mm:
1541         (-[WebView _preferencesChanged:]):
1542
1543 2018-09-04  Frederic Wang  <fwang@igalia.com>
1544
1545         Add basic support for ScrollIntoViewOptions
1546         https://bugs.webkit.org/show_bug.cgi?id=189258
1547
1548         Reviewed by Simon Fraser.
1549
1550         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElementGtk.cpp: Add ScrollIntoViewOptions
1551         header so that this file can build despite the new scrollIntoView function.
1552
1553 2018-09-04  Wenson Hsieh  <wenson_hsieh@apple.com>
1554
1555         Populate "text/uri-list" with multiple URLs when the pasteboard contains multiple URLs
1556         https://bugs.webkit.org/show_bug.cgi?id=188890
1557         <rdar://problem/43648605>
1558
1559         Reviewed by Tim Horton.
1560
1561         Add some plumbing through pasteboard classes to support `Pasteboard::readAllStrings`. See WebCore ChangeLog for
1562         more detail.
1563
1564         * WebCoreSupport/WebPlatformStrategies.h:
1565         * WebCoreSupport/WebPlatformStrategies.mm:
1566         (WebPlatformStrategies::allStringsForType):
1567
1568 2018-09-01  Darin Adler  <darin@apple.com>
1569
1570         [CFNetwork] Update CFNetwork SPI use to use CFNetworkSPI.h more consistently
1571         https://bugs.webkit.org/show_bug.cgi?id=189072
1572         Reviewed by Dan Bernstein.
1573
1574         * Misc/WebDownload.mm: Removed forward declaration of NSURLConnectionDelegateProxy
1575         and declarations for NSURLDownload init methods.
1576
1577         * Misc/WebDownloadInternal.h: Removed.
1578
1579         * WebCoreSupport/WebFrameLoaderClient.mm: Removed include of WebDownloadInternal.h.
1580         (WebFrameLoaderClient::convertMainResourceLoadToDownload): Ignore
1581         "-Wdeprecated-declarations" because the method used here is deprecated.
1582
1583         * WebView/WebView.mm:
1584         (-[WebView _downloadURL:]): Ignore "-Wdeprecated-declarations" because the method
1585         used here is deprecated.
1586
1587 2018-08-31  Chris Dumez  <cdumez@apple.com>
1588
1589         Assertion hit in ~CompletionHandler() from ~WebFrame()
1590         https://bugs.webkit.org/show_bug.cgi?id=189199
1591         <rdar://problem/42657233>
1592
1593         Reviewed by Youenn Fablet.
1594
1595         * WebCoreSupport/WebFrameLoaderClient.h:
1596         * WebCoreSupport/WebFrameLoaderClient.mm:
1597         (WebFrameLoaderClient::dispatchWillSubmitForm):
1598
1599 2018-08-31  Antti Koivisto  <antti@apple.com>
1600
1601         Replace OptionSet |= and -= operators with add() and remove() functions
1602         https://bugs.webkit.org/show_bug.cgi?id=189169
1603
1604         Reviewed by Anders Carlsson.
1605
1606         * WebView/WebFrame.mm:
1607         (-[WebFrame _drawRect:contentsOnly:]):
1608         * WebView/WebView.mm:
1609         (coreOptions):
1610
1611 2018-08-31  Frederic Wang  <fwang@igalia.com>
1612
1613         Bug 182053 - [CSSOM View] Implement standard behavior for scrollingElement
1614         https://bugs.webkit.org/show_bug.cgi?id=182053
1615
1616         Reviewed by Simon Fraser.
1617
1618         Add developer flag to use standard behavior for scrolling* attributes.
1619
1620         * WebView/WebPreferenceKeysPrivate.h:
1621         * WebView/WebPreferences.mm:
1622         (+[WebPreferences initialize]):
1623         (-[WebPreferences CSSOMViewScrollingAPIEnabled]):
1624         (-[WebPreferences setCSSOMViewScrollingAPIEnabled:]):
1625         * WebView/WebPreferencesPrivate.h:
1626         * WebView/WebView.mm:
1627         (-[WebView _preferencesChanged:]):
1628
1629 2018-08-29  Olivia Barnett  <obarnett@apple.com>
1630
1631         Implement the Web Share API
1632         https://bugs.webkit.org/show_bug.cgi?id=171100
1633         <rdar://problem/31751734>
1634
1635         Reviewed by Tim Horton.
1636
1637         * WebCoreSupport/WebChromeClient.h:
1638         * WebCoreSupport/WebChromeClient.mm:
1639         (WebChromeClient::showShareSheet):
1640         Empty declaration of showShareSheet.
1641
1642 2018-08-29  Youenn Fablet  <youenn@apple.com>
1643
1644         Remove WebRTC legacy API implementation
1645         https://bugs.webkit.org/show_bug.cgi?id=189040
1646
1647         Reviewed by Eric Carlson.
1648
1649         * WebView/WebPreferenceKeysPrivate.h:
1650         * WebView/WebPreferences.mm:
1651         (+[WebPreferences initialize]):
1652         (-[WebPreferences webRTCLegacyAPIEnabled]): Deleted.
1653         (-[WebPreferences setWebRTCLegacyAPIEnabled:]): Deleted.
1654         * WebView/WebPreferencesPrivate.h:
1655         * WebView/WebView.mm:
1656         (-[WebView _preferencesChanged:]):
1657
1658 2018-08-28  Wenson Hsieh  <wenson_hsieh@apple.com>
1659
1660         Work towards: [iOS] Consolidate the implementations of readString, stringForType, and readURL in PlatformPasteboardIOS.mm
1661         https://bugs.webkit.org/show_bug.cgi?id=189054
1662
1663         Reviewed by Andy Estes.
1664
1665         Remove the pasteboard type argument from readURLFromPasteboard.
1666
1667         * WebCoreSupport/WebPlatformStrategies.h:
1668         * WebCoreSupport/WebPlatformStrategies.mm:
1669         (WebPlatformStrategies::readURLFromPasteboard):
1670
1671 2018-08-27  Keith Rollin  <krollin@apple.com>
1672
1673         Unreviewed build fix -- disable LTO for production builds
1674
1675         * Configurations/Base.xcconfig:
1676
1677 2018-08-27  Aditya Keerthi  <akeerthi@apple.com>
1678
1679         Consolidate ENABLE_INPUT_TYPE_COLOR and ENABLE_INPUT_TYPE_COLOR_POPOVER
1680         https://bugs.webkit.org/show_bug.cgi?id=188931
1681
1682         Reviewed by Wenson Hsieh.
1683
1684         * Configurations/FeatureDefines.xcconfig: Removed ENABLE_INPUT_TYPE_COLOR_POPOVER.
1685
1686 2018-08-27  Keith Rollin  <krollin@apple.com>
1687
1688         Build system support for LTO
1689         https://bugs.webkit.org/show_bug.cgi?id=187785
1690         <rdar://problem/42353132>
1691
1692         Reviewed by Dan Bernstein.
1693
1694         Update Base.xcconfig and DebugRelease.xcconfig to optionally enable
1695         LTO.
1696
1697         * Configurations/Base.xcconfig:
1698         * Configurations/DebugRelease.xcconfig:
1699
1700 2018-08-24  Ryosuke Niwa  <rniwa@webkit.org>
1701
1702         Pass in IsComposed flag to Event constructors
1703         https://bugs.webkit.org/show_bug.cgi?id=188720
1704         <rdar://problem/43580387>
1705
1706         Reviewed by Simon Fraser.
1707
1708         * WebView/WebPDFView.mm:
1709         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): A trusted click event is composed regardless of
1710         whether it's simulated or not.
1711
1712 2018-08-23  Mark Lam  <mark.lam@apple.com>
1713
1714         Move vmEntryGlobalObject() to VM from CallFrame.
1715         https://bugs.webkit.org/show_bug.cgi?id=188900
1716         <rdar://problem/43655753>
1717
1718         Reviewed by Michael Saboff.
1719
1720         * WebView/WebScriptDebugger.mm:
1721         (WebScriptDebugger::sourceParsed):
1722
1723 2018-08-23  Andy Estes  <aestes@apple.com>
1724
1725         [Apple Pay] Introduce Apple Pay JS v4 on iOS 12 and macOS Mojave
1726         https://bugs.webkit.org/show_bug.cgi?id=188829
1727
1728         Reviewed by Tim Horton.
1729
1730         * Configurations/FeatureDefines.xcconfig:
1731
1732 2018-08-21  Ryosuke Niwa  <rniwa@webkit.org>
1733
1734         Replace booleans for modifier keys in UIEventWithKeyState with OptionSet<Modifier>
1735         https://bugs.webkit.org/show_bug.cgi?id=188777
1736
1737         Reviewed by Simon Fraser.
1738
1739         Create MouseEvent::create with IsSimulated set to Yes; correspoding to the last argument
1740         being "true" before the code change.
1741
1742         Use modifiersForEvent to convert [nsEvent modifierFlags] to OptionSet<Modifier>.
1743
1744         * WebView/WebPDFView.mm:
1745         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
1746
1747 2018-08-21  Daniel Bates  <dabates@apple.com>
1748
1749         Replace TextCheckingTypeMask with OptionSet
1750         https://bugs.webkit.org/show_bug.cgi?id=188678
1751
1752         Reviewed by Antti Koivisto.
1753
1754         Currently we have code in WebEditorClient::checkTextOfParagraph() that incorrectly assumes
1755         that the enumerators of TextCheckingType have a one-to-one correspondence with NSTextCheckingType.
1756         (This is not the case because there is not corresponding NSTextCheckingType for TextCheckingTypeShowCorrectionPanel).
1757         We now explicitly convert from OptionSet<TextCheckingType> to NSTextCheckingTypes.
1758
1759         * WebCoreSupport/WebEditorClient.h:
1760         * WebCoreSupport/WebEditorClient.mm:
1761         (WebEditorClient::checkTextOfParagraph):
1762         (WebEditorClient::shouldEraseMarkersAfterChangeSelection const):
1763         (core): Fix up code style nits; compare resultType on the right-hand side instead of the
1764         left as this is more readable and unncessary now that modern compilers like Clang have
1765         diagnostics to catch accidental assignments when equality was intended.
1766         (WebEditorClient::didCheckSucceed):
1767         * WebView/WebView.mm:
1768         (coreTextCheckingType):
1769         (textCheckingResultFromNSTextCheckingResult):
1770
1771 2018-08-21  Daniel Bates  <dabates@apple.com>
1772
1773         [iOS][WK1] Support toggling continuous spell checking from tests
1774         https://bugs.webkit.org/show_bug.cgi?id=188763
1775
1776         Reviewed by Simon Fraser.
1777
1778         Move some more code out from under a !PLATFORM(IOS)-guard so as to support toggling continuous
1779         spell checking from tests in iOS WebKit Legacy.
1780
1781         * WebCoreSupport/WebEditorClient.h:
1782         (WebEditorClient::toggleContinuousSpellChecking): Deleted.
1783         * WebCoreSupport/WebEditorClient.mm:
1784         * WebView/WebView.h:
1785         * WebView/WebView.mm:
1786         (-[WebView toggleContinuousSpellChecking:]):
1787         (-[WebView toggleSmartInsertDelete:]):
1788
1789 2018-08-17  Alex Christensen  <achristensen@webkit.org>
1790
1791         Add some plumbing for safe browsing
1792         https://bugs.webkit.org/show_bug.cgi?id=188709
1793
1794         Reviewed by Tim Horton.
1795
1796         * WebCoreSupport/WebFrameLoaderClient.h:
1797         * WebCoreSupport/WebFrameLoaderClient.mm:
1798         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1799
1800 2018-08-16  Ryosuke Niwa  <rniwa@webkit.org>
1801
1802         Replace canBubble and cancelable booleans in Event by enum classes
1803         https://bugs.webkit.org/show_bug.cgi?id=188692
1804
1805         Reviewed by Alex Christensen.
1806
1807         * WebView/WebPDFView.mm:
1808         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
1809         * WebView/WebView.mm:
1810         (-[WebView _dispatchUnloadEvent]):
1811
1812 2018-08-16  Jer Noble  <jer.noble@apple.com>
1813
1814         Add Experimental Feature support for SourceBuffer.changeType()
1815         https://bugs.webkit.org/show_bug.cgi?id=188626
1816         <rdar://problem/43356021>
1817
1818         Reviewed by Eric Carlson.
1819
1820         Add a new WebPreference property mapping to the WebCore SourceBufferChangeTypeEnabled setting.
1821
1822         * WebView/WebPreferenceKeysPrivate.h:
1823         * WebView/WebPreferences.mm:
1824         (+[WebPreferences initialize]):
1825         (-[WebPreferences sourceBufferChangeTypeEnabled]):
1826         (-[WebPreferences setSourceBufferChangeTypeEnabled:]):
1827         * WebView/WebPreferencesPrivate.h:
1828         * WebView/WebView.mm:
1829         (-[WebView _preferencesChanged:]):
1830
1831 2018-08-16  Aditya Keerthi  <akeerthi@apple.com>
1832
1833         Support drag-and-drop for input[type=color]
1834         https://bugs.webkit.org/show_bug.cgi?id=188464
1835
1836         Reviewed by Wenson Hsieh.
1837
1838         * WebCoreSupport/WebPlatformStrategies.h:
1839         * WebCoreSupport/WebPlatformStrategies.mm:
1840         (WebPlatformStrategies::setColor):
1841
1842 2018-08-15  Tim Horton  <timothy_horton@apple.com>
1843
1844         Crashes in Quip under _dictionaryPopupInfoForRange, in setObject:forKey:
1845         https://bugs.webkit.org/show_bug.cgi?id=188569
1846         <rdar://problem/34201095>
1847
1848         Reviewed by Megan Gardner.
1849
1850         * WebView/WebImmediateActionController.mm:
1851         (+[WebImmediateActionController _dictionaryPopupInfoForRange:inFrame:withLookupOptions:indicatorOptions:transition:]):
1852         Speculative fix; the crashes indicate font is null, but we just checked it,
1853         so it must be getting made null by convertFont:toSize:. Check again!
1854
1855 2018-08-13  Alex Christensen  <achristensen@webkit.org>
1856
1857         Use a 1-byte enum class for TextDirection
1858         https://bugs.webkit.org/show_bug.cgi?id=188350
1859
1860         Reviewed by Simon Fraser.
1861
1862         * WebCoreSupport/PopupMenuMac.mm:
1863         (PopupMenuMac::populate):
1864         (PopupMenuMac::show):
1865         * WebCoreSupport/WebFrameLoaderClient.mm:
1866         (WebFrameLoaderClient::transitionToCommittedForNewPage):
1867         * WebView/WebFrame.mm:
1868         (-[WebFrame _dispatchDidReceiveTitle:]):
1869
1870 2018-08-09  Ali Juma  <ajuma@chromium.org>
1871
1872         Import WPTs for IntersectionObserver
1873         https://bugs.webkit.org/show_bug.cgi?id=188416
1874
1875         Reviewed by Simon Fraser.
1876
1877         * WebView/WebPreferencesPrivate.h:
1878
1879 2018-08-08  Jonathan Bedard  <jbedard@apple.com>
1880
1881         Follow-up build fix for r234685
1882         https://bugs.webkit.org/show_bug.cgi?id=188245
1883
1884         Unreviewed build fix.
1885
1886         * WebCoreSupport/WebSecurityOriginPrivate.h:
1887
1888 2018-08-05  Darin Adler  <darin@apple.com>
1889
1890         [Cocoa] More tweaks and refactoring to prepare for ARC
1891         https://bugs.webkit.org/show_bug.cgi?id=188245
1892
1893         Reviewed by Dan Bernstein.
1894
1895         * Carbon/CarbonUtils.m: Updated include for rename: FoundationSPI.h -> objcSPI.h.
1896
1897         * Carbon/CarbonWindowFrame.m:
1898         (-[CarbonWindowFrame dealloc]): Deleted. It was empty.
1899
1900         * DOM/DOM.mm:
1901         (-[DOMElement _imageTIFFRepresentation]): Use a bridging cast.
1902         (-[DOMNodeFilter finalize]): Deleted. WebKit no longer supports Objective-C
1903         garbage collection so this method isn't useful.
1904
1905         * DOM/DOMXPath.mm:
1906         (-[DOMNativeXPathNSResolver finalize]): Deleted. WebKit no longer supports
1907         Objective-C garbage collection so this method isn't useful.
1908
1909         * History/WebHistory.mm:
1910         (-[WebHistoryPrivate data]): Allocate an NSData instead of casting from a CFData.
1911
1912         * Misc/WebElementDictionary.mm:
1913         (addLookupKey): Use a bridging cast.
1914         (cacheValueForKey): Ditto.
1915         (-[WebElementDictionary _fillCache]): Ditto.
1916         (-[WebElementDictionary objectForKey:]): Ditto.
1917
1918         * Misc/WebKitNSStringExtras.mm:
1919         (-[NSString _web_drawAtPoint:font:textColor:]): Use a bridging cast.
1920         (-[NSString _web_widthWithFont:]): Ditto.
1921         (-[NSString _webkit_stringByTrimmingWhitespace]): Ditto.
1922
1923         * Misc/WebLocalizableStrings.mm:
1924         (WebLocalizedString): Use a bridging cast.
1925
1926         * Misc/WebNSDataExtras.mm:
1927         (-[NSString _web_capitalizeRFC822HeaderFieldName]): Use a bridging cast
1928         and use CFBridgingRelease instead of calling autorelease directly.
1929         (-[NSData _webkit_parseRFC822HeaderFields]): Use NSString methods instead
1930         of a mix of CFString and NSString. Also simplified logic a bit, and cut down
1931         on the amount of explicit release and autorelease.
1932
1933         * Misc/WebNSDictionaryExtras.h: Deleted unused methods.
1934         * Misc/WebNSDictionaryExtras.m:
1935         (-[NSDictionary _webkit_intForKey:]): Deleted.
1936         (-[NSMutableDictionary _webkit_setInt:forKey:]): Deleted.
1937         (-[NSMutableDictionary _webkit_setFloat:forKey:]): Deleted.
1938         (-[NSMutableDictionary _webkit_setBool:forKey:]): Deleted.
1939         (-[NSMutableDictionary _webkit_setLongLong:forKey:]): Deleted.
1940         (-[NSMutableDictionary _webkit_setUnsignedLongLong:forKey:]): Deleted.
1941         (-[NSMutableDictionary _webkit_setUnsignedInt:forKey:]): Deleted.
1942
1943         * Misc/WebStringTruncator.mm:
1944         (fontFromNSFont): Use a bridging cast.
1945
1946         * Plugins/Hosted/NetscapePluginHostManager.mm:
1947         (WebKit::preferredBundleLocalizationName): Use a bridging cast and CFBridgingRelease.
1948
1949         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1950         (WebKit::NetscapePluginInstanceProxy::cleanup): Use a bridging cast.
1951         (WebKit::NetscapePluginInstanceProxy::status): Ditto.
1952         (WebKit::NetscapePluginInstanceProxy::loadURL): Ditto.
1953         (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray): Ditto.
1954         * Plugins/Hosted/ProxyInstance.mm:
1955         (WebKit::ProxyInstance::getPropertyNames): Ditto.
1956         * Plugins/WebBasePluginPackage.mm:
1957         (-[WebBasePluginPackage _objectForInfoDictionaryKey:]): Ditto.
1958         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
1959         (WebNetscapePluginEventHandlerCocoa::platformWindow): Ditto.
1960         * Plugins/WebNetscapePluginPackage.mm:
1961         (-[WebNetscapePluginPackage _initWithPath:]): Ditto.
1962
1963         * Plugins/WebNetscapePluginView.mm:
1964         (-[WebNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]):
1965         Use bridging casts and use RetainPtr insteead of an explicit CFRelease.
1966         (-[WebNetscapePluginView status:]): Use a bridging cast.
1967         (-[WebNetscapePluginView popUpContextMenu:]): Ditto.
1968
1969         * Plugins/WebPluginController.mm:
1970         (-[WebPluginController _cancelOutstandingChecks]): Use a bridging cast.
1971
1972         * Plugins/WebPluginDatabase.mm:
1973         (checkCandidate): Use explicit __strong for out argument types.
1974
1975         * Plugins/npapi.mm:
1976         (pluginViewForInstance): Use a bridging cast.
1977
1978         * Storage/WebDatabaseManager.mm:
1979         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Use modern boxing instead of
1980         explicit NSNumber and NSDictionary calls.
1981
1982         * WebCoreSupport/WebContextMenuClient.mm:
1983         (WebContextMenuClient::speak): Remove an unnecessary copy/autorelease pair.
1984
1985         * WebCoreSupport/WebEditorClient.mm:
1986         (WebEditorClient::handleKeyboardEvent): Added a missing typecast.
1987         (WebEditorClient::handleInputMethodKeydown): Ditto.
1988
1989         * WebCoreSupport/WebFrameNetworkingContext.mm:
1990         (WebFrameNetworkingContext::sourceApplicationAuditData const): Use a bridging cast.
1991
1992         * WebCoreSupport/WebSecurityOriginPrivate.h: Forward declare WebSecurityOriginPrivate
1993         as a struct rather than an Objective-C class, since that's how it's defined.
1994
1995         * WebInspector/WebNodeHighlighter.mm: Added missing includes.
1996
1997         * WebView/WebFullScreenController.mm:
1998         (-[WebFullScreenController enterFullScreen:]): Use a bridging cast.
1999         * WebView/WebHTMLView.mm:
2000         (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
2001         Ditto.
2002         (-[WebHTMLView pasteboard:provideDataForType:]): Ditto.
2003
2004         * WebView/WebImmediateActionController.mm:
2005         (-[WebImmediateActionController performHitTestAtPoint:]): Removed redundant code to
2006         go down to the document and then back to the frame.
2007         (-[WebImmediateActionController immediateActionRecognizerDidUpdateAnimation:]): Ditto.
2008         (-[WebImmediateActionController immediateActionRecognizerDidCancelAnimation:]): Ditto.
2009         (-[WebImmediateActionController immediateActionRecognizerDidCompleteAnimation:]): Ditto.
2010
2011         * WebView/WebJSPDFDoc.mm:
2012         (jsPDFDocInitialize): Removed some unneeded type casting.
2013         (jsPDFDocFinalize): Ditto.
2014         (jsPDFDocPrint): Use a bridging cast.
2015
2016         * WebView/WebPDFView.mm:
2017         (_applicationInfoForMIMEType): Use bridging casts.
2018
2019         * WebView/WebPreferences.mm:
2020         (-[WebPreferences _setIntegerValue:forKey:]): Use boxing and setObject directly
2021         instead of methods from WebNSDictionaryExtras.
2022         (-[WebPreferences _setUnsignedIntValue:forKey:]): Ditto.
2023         (-[WebPreferences _setFloatValue:forKey:]): Ditto.
2024         (-[WebPreferences _setBoolValue:forKey:]): Ditto.
2025         (-[WebPreferences _setLongLongValue:forKey:]): Ditto.
2026         (-[WebPreferences _setUnsignedLongLongValue:forKey:]): Ditto.
2027
2028         * WebView/WebView.mm:
2029         (-[WebView _removeFromAllWebViewsSet]): Use bridging cast.
2030         (-[WebView _addToAllWebViewsSet]): Ditto.
2031         (+[WebView closeAllWebViews]): Use a modern for loop instead of NSEnumerator.
2032         (-[WebView _windowVisibilityChanged:]): Moved this into the internal category
2033         so it can be called from WebViewData methods.
2034
2035         * WebView/WebViewData.mm: Added an import so we can call an internal WebView
2036         method, _windowVisibilityChanged:.
2037
2038         * WebView/WebViewInternal.h: Declared _windowVisibilityChanged: so it can be
2039         called from WebViewData methods.
2040
2041 2018-08-06  Alex Christensen  <achristensen@webkit.org>
2042
2043         Use enum classes and OptionSets for PaintPhase and PaintBehavior
2044         https://bugs.webkit.org/show_bug.cgi?id=188323
2045
2046         Reviewed by Simon Fraser.
2047
2048         * WebCoreSupport/WebContextMenuClient.mm:
2049         (WebContextMenuClient::imageForCurrentSharingServicePickerItem):
2050         * WebView/WebFrame.mm:
2051         (-[WebFrame _paintBehaviorForDestinationContext:]):
2052         (-[WebFrame _drawRect:contentsOnly:]):
2053         * WebView/WebHTMLView.mm:
2054         (imageFromRect):
2055         (selectionImage):
2056
2057 2018-08-05  Yusuke Suzuki  <utatane.tea@gmail.com>
2058
2059         Add support for microtasks in workers
2060         https://bugs.webkit.org/show_bug.cgi?id=188246
2061
2062         Reviewed by Darin Adler.
2063
2064         Rename JSMainThreadExecState.h to JSExecState.h.
2065
2066         * DOM/DOMAttr.mm:
2067         * DOM/DOMBlob.mm:
2068         * DOM/DOMCDATASection.mm:
2069         * DOM/DOMCSSCharsetRule.mm:
2070         * DOM/DOMCSSFontFaceRule.mm:
2071         * DOM/DOMCSSImportRule.mm:
2072         * DOM/DOMCSSMediaRule.mm:
2073         * DOM/DOMCSSPageRule.mm:
2074         * DOM/DOMCSSPrimitiveValue.mm:
2075         * DOM/DOMCSSRule.mm:
2076         * DOM/DOMCSSRuleList.mm:
2077         * DOM/DOMCSSStyleDeclaration.mm:
2078         * DOM/DOMCSSStyleRule.mm:
2079         * DOM/DOMCSSStyleSheet.mm:
2080         * DOM/DOMCSSUnknownRule.mm:
2081         * DOM/DOMCSSValue.mm:
2082         * DOM/DOMCSSValueList.mm:
2083         * DOM/DOMCharacterData.mm:
2084         * DOM/DOMComment.mm:
2085         * DOM/DOMCounter.mm:
2086         * DOM/DOMDocument.mm:
2087         * DOM/DOMDocumentFragment.mm:
2088         * DOM/DOMDocumentType.mm:
2089         * DOM/DOMElement.mm:
2090         * DOM/DOMEvent.mm:
2091         * DOM/DOMFile.mm:
2092         * DOM/DOMFileList.mm:
2093         * DOM/DOMHTML.mm:
2094         * DOM/DOMHTMLAnchorElement.mm:
2095         * DOM/DOMHTMLAppletElement.mm:
2096         * DOM/DOMHTMLAreaElement.mm:
2097         * DOM/DOMHTMLBRElement.mm:
2098         * DOM/DOMHTMLBaseElement.mm:
2099         * DOM/DOMHTMLBaseFontElement.mm:
2100         * DOM/DOMHTMLBodyElement.mm:
2101         * DOM/DOMHTMLButtonElement.mm:
2102         * DOM/DOMHTMLCanvasElement.mm:
2103         * DOM/DOMHTMLCollection.mm:
2104         * DOM/DOMHTMLDListElement.mm:
2105         * DOM/DOMHTMLDirectoryElement.mm:
2106         * DOM/DOMHTMLDivElement.mm:
2107         * DOM/DOMHTMLDocument.mm:
2108         * DOM/DOMHTMLElement.mm:
2109         * DOM/DOMHTMLEmbedElement.mm:
2110         * DOM/DOMHTMLFieldSetElement.mm:
2111         * DOM/DOMHTMLFontElement.mm:
2112         * DOM/DOMHTMLFormElement.mm:
2113         * DOM/DOMHTMLFrameElement.mm:
2114         * DOM/DOMHTMLFrameSetElement.mm:
2115         * DOM/DOMHTMLHRElement.mm:
2116         * DOM/DOMHTMLHeadElement.mm:
2117         * DOM/DOMHTMLHeadingElement.mm:
2118         * DOM/DOMHTMLHtmlElement.mm:
2119         * DOM/DOMHTMLIFrameElement.mm:
2120         * DOM/DOMHTMLImageElement.mm:
2121         * DOM/DOMHTMLInputElement.mm:
2122         * DOM/DOMHTMLLIElement.mm:
2123         * DOM/DOMHTMLLabelElement.mm:
2124         * DOM/DOMHTMLLegendElement.mm:
2125         * DOM/DOMHTMLLinkElement.mm:
2126         * DOM/DOMHTMLMapElement.mm:
2127         * DOM/DOMHTMLMarqueeElement.mm:
2128         * DOM/DOMHTMLMediaElement.mm:
2129         * DOM/DOMHTMLMenuElement.mm:
2130         * DOM/DOMHTMLMetaElement.mm:
2131         * DOM/DOMHTMLModElement.mm:
2132         * DOM/DOMHTMLOListElement.mm:
2133         * DOM/DOMHTMLObjectElement.mm:
2134         * DOM/DOMHTMLOptGroupElement.mm:
2135         * DOM/DOMHTMLOptionElement.mm:
2136         * DOM/DOMHTMLOptionsCollection.mm:
2137         * DOM/DOMHTMLParagraphElement.mm:
2138         * DOM/DOMHTMLParamElement.mm:
2139         * DOM/DOMHTMLPreElement.mm:
2140         * DOM/DOMHTMLQuoteElement.mm:
2141         * DOM/DOMHTMLScriptElement.mm:
2142         * DOM/DOMHTMLSelectElement.mm:
2143         * DOM/DOMHTMLStyleElement.mm:
2144         * DOM/DOMHTMLTableCaptionElement.mm:
2145         * DOM/DOMHTMLTableCellElement.mm:
2146         * DOM/DOMHTMLTableColElement.mm:
2147         * DOM/DOMHTMLTableElement.mm:
2148         * DOM/DOMHTMLTableRowElement.mm:
2149         * DOM/DOMHTMLTableSectionElement.mm:
2150         * DOM/DOMHTMLTextAreaElement.mm:
2151         * DOM/DOMHTMLTitleElement.mm:
2152         * DOM/DOMHTMLUListElement.mm:
2153         * DOM/DOMHTMLVideoElement.mm:
2154         * DOM/DOMImplementation.mm:
2155         * DOM/DOMKeyboardEvent.mm:
2156         * DOM/DOMMediaError.mm:
2157         * DOM/DOMMediaList.mm:
2158         * DOM/DOMMouseEvent.mm:
2159         * DOM/DOMMutationEvent.mm:
2160         * DOM/DOMNamedNodeMap.mm:
2161         * DOM/DOMNode.mm:
2162         * DOM/DOMNodeIterator.mm:
2163         * DOM/DOMNodeList.mm:
2164         * DOM/DOMOverflowEvent.mm:
2165         * DOM/DOMProcessingInstruction.mm:
2166         * DOM/DOMProgressEvent.mm:
2167         * DOM/DOMRGBColor.mm:
2168         * DOM/DOMRange.mm:
2169         * DOM/DOMRect.mm:
2170         * DOM/DOMStyleSheet.mm:
2171         * DOM/DOMStyleSheetList.mm:
2172         * DOM/DOMText.mm:
2173         * DOM/DOMTextEvent.mm:
2174         * DOM/DOMTimeRanges.mm:
2175         * DOM/DOMTokenList.mm:
2176         * DOM/DOMTreeWalker.mm:
2177         * DOM/DOMUIEvent.mm:
2178         * DOM/DOMWheelEvent.mm:
2179         * DOM/DOMXPathExpression.mm:
2180         * DOM/DOMXPathResult.mm:
2181         * DOM/ObjCEventListener.mm:
2182
2183 2018-08-03  Alex Christensen  <achristensen@webkit.org>
2184
2185         Fix spelling of "overridden"
2186         https://bugs.webkit.org/show_bug.cgi?id=188315
2187
2188         Reviewed by Darin Adler.
2189
2190         * Misc/WebKitVersionChecks.mm:
2191         (setWebKitLinkTimeVersion):
2192         (WebKitLinkTimeVersion):
2193         * Plugins/WebBaseNetscapePluginView.mm:
2194         (-[WebBaseNetscapePluginView handleMouseMoved:]):
2195         * WebCoreSupport/PopupMenuMac.mm:
2196         (PopupMenuMac::populate):
2197
2198 2018-08-01  Nan Wang  <n_wang@apple.com>
2199
2200         AX: AOM: Add ARIA IDL Attribute Reflection
2201         https://bugs.webkit.org/show_bug.cgi?id=184676
2202         <rdar://problem/39476882>
2203
2204         Reviewed by Chris Fleizach.
2205
2206         * WebView/WebPreferenceKeysPrivate.h:
2207         * WebView/WebPreferences.mm:
2208         (+[WebPreferences initialize]):
2209         (-[WebPreferences ariaReflectionEnabled]):
2210         (-[WebPreferences setAriaReflectionEnabled:]):
2211         * WebView/WebPreferencesPrivate.h:
2212         * WebView/WebView.mm:
2213         (-[WebView _preferencesChanged:]):
2214
2215 2018-07-30  Simon Fraser  <simon.fraser@apple.com>
2216
2217         Shrink GraphicsLayerCA
2218         https://bugs.webkit.org/show_bug.cgi?id=188141
2219
2220         Reviewed by Zalan Bujtas.
2221
2222         Shrink GraphicsLayerCA from 1040 to 880 bytes by:
2223         * moving all the clone-related stuff into the lazily-allocated m_layerClones
2224         * moving all the animation-related stuff into the lazily-allocated m_animations
2225         * making enums be 8-bit
2226         * re-ordering data members
2227
2228         * WebView/WebView.mm:
2229         (-[WebView _setMediaLayer:forPluginView:]):
2230
2231 2018-07-30  Rob Buis  <rbuis@igalia.com>
2232
2233         Merge PlatformCookieJar functions into NetworkStorageSession
2234         https://bugs.webkit.org/show_bug.cgi?id=188137
2235
2236         Adapt callsites to use NetworkStorageSession instead of CookieJar functions.
2237
2238         Reviewed by Alex Christensen.
2239
2240         * WebCoreSupport/WebPlatformStrategies.mm:
2241         (WebPlatformStrategies::cookiesForDOM):
2242         (WebPlatformStrategies::setCookiesFromDOM):
2243         (WebPlatformStrategies::cookiesEnabled):
2244         (WebPlatformStrategies::cookieRequestHeaderFieldValue):
2245         (WebPlatformStrategies::getRawCookies):
2246         (WebPlatformStrategies::deleteCookie):
2247         * WebView/WebPreferences.mm:
2248         (+[WebPreferences _clearNetworkLoaderSession]):
2249
2250 2018-07-28  Darin Adler  <darin@apple.com>
2251
2252         [Cocoa] Update more WebCore Objective-C code to be ARC compatible
2253         https://bugs.webkit.org/show_bug.cgi?id=188140
2254
2255         Reviewed by Sam Weinig.
2256
2257         * WebView/WebImmediateActionController.mm:
2258         (-[WebImmediateActionController _animationControllerForText]): Updated to use the
2259         new DictionaryLookup function that returns a tuple instead of using an out argument.
2260
2261 2018-07-26  Andy VanWagoner  <andy@vanwagoner.family>
2262
2263         [INTL] Remove INTL sub-feature compile flags
2264         https://bugs.webkit.org/show_bug.cgi?id=188081
2265
2266         Reviewed by Michael Catanzaro.
2267
2268         * Configurations/FeatureDefines.xcconfig:
2269
2270 2018-07-26  Commit Queue  <commit-queue@webkit.org>
2271
2272         Unreviewed, rolling out r234181 and r234189.
2273         https://bugs.webkit.org/show_bug.cgi?id=188075
2274
2275         These are not needed right now (Requested by thorton on
2276         #webkit).
2277
2278         Reverted changesets:
2279
2280         "Enable Web Content Filtering on watchOS"
2281         https://bugs.webkit.org/show_bug.cgi?id=187979
2282         https://trac.webkit.org/changeset/234181
2283
2284         "HAVE(PARENTAL_CONTROLS) should be true on watchOS"
2285         https://bugs.webkit.org/show_bug.cgi?id=187985
2286         https://trac.webkit.org/changeset/234189
2287
2288 2018-07-26  Timothy Hatcher  <timothy@apple.com>
2289
2290         Use the Page's appearance when converting pasteboard attributed strings.
2291         https://bugs.webkit.org/show_bug.cgi?id=188067
2292         rdar://problem/42632246
2293
2294         Reviewed by Wenson Hsieh.
2295
2296         * WebCoreSupport/WebEditorClient.mm:
2297         (_WebCreateFragment): Create a LocalDefaultSystemAppearance based on the Page.
2298
2299 2018-07-25  Chris Dumez  <cdumez@apple.com>
2300
2301         navigator.userAgent may return outdated value after webView.customUserAgent is set
2302         https://bugs.webkit.org/show_bug.cgi?id=188009
2303         <rdar://problem/42566456>
2304
2305         Reviewed by Alex Christensen.
2306
2307         Let the page know when the user agent changes.
2308
2309         * WebView/WebView.mm:
2310         (-[WebView _preferencesChanged:]):
2311         (-[WebView setApplicationNameForUserAgent:]):
2312         (-[WebView _invalidateUserAgentCache]):
2313         (-[WebView setCustomUserAgent:]):
2314         * WebView/WebViewInternal.h:
2315
2316 2018-07-24  Tim Horton  <timothy_horton@apple.com>
2317
2318         Enable Web Content Filtering on watchOS
2319         https://bugs.webkit.org/show_bug.cgi?id=187979
2320         <rdar://problem/42559346>
2321
2322         Reviewed by Wenson Hsieh.
2323
2324         * Configurations/FeatureDefines.xcconfig:
2325
2326 2018-07-20  Ryosuke Niwa  <rniwa@apple.com>
2327
2328         Picking a color from the color panel for typing attributes needs to inverse transform through color-filter
2329         https://bugs.webkit.org/show_bug.cgi?id=187846
2330
2331         Reviewed by Simon Fraser.
2332
2333         Invert the filtered font and background colors when using font panels, font pasteboard, and other Objective-C APIs.
2334
2335         * WebView/WebHTMLView.mm:
2336         (-[WebHTMLView _applyStyleToSelection:withUndoAction:]): Share code with _applyEditingStyleToSelection.
2337         (-[WebHTMLView _applyEditingStyleToSelection:withUndoAction:]):
2338
2339 2018-07-11  Dean Jackson  <dino@apple.com>
2340
2341         Allow removal of white backgrounds
2342         https://bugs.webkit.org/show_bug.cgi?id=187574
2343         <rdar://problem/41146792>
2344
2345         Reviewed by Simon Fraser.
2346
2347         Add a new WebPreference for punching out white backgrounds.
2348
2349         * WebView/WebPreferenceKeysPrivate.h:
2350         * WebView/WebPreferences.mm:
2351         (+[WebPreferences initialize]):
2352         (-[WebPreferences punchOutWhiteBackgroundsInDarkMode]):
2353         (-[WebPreferences setPunchOutWhiteBackgroundsInDarkMode:]):
2354         * WebView/WebPreferencesPrivate.h:
2355         * WebView/WebView.mm:
2356         (-[WebView _preferencesChanged:]):
2357
2358 2018-07-14  Kocsen Chung  <kocsen_chung@apple.com>
2359
2360         Ensure WebKit stack is ad-hoc signed
2361         https://bugs.webkit.org/show_bug.cgi?id=187667
2362
2363         Reviewed by Alexey Proskuryakov.
2364
2365         * Configurations/Base.xcconfig:
2366
2367 2018-07-11  Aditya Keerthi  <akeerthi@apple.com>
2368
2369         REGRESSION (231276): Attempting to copy an image fails
2370         https://bugs.webkit.org/show_bug.cgi?id=187212
2371         <rdar://problem/41540074>
2372
2373         Reviewed by Ryosuke Niwa.
2374
2375         Renamed methods to make it clear that one URL and one title are being passed in.
2376
2377         * WebCoreSupport/WebPlatformStrategies.h:
2378         * WebCoreSupport/WebPlatformStrategies.mm:
2379         (WebPlatformStrategies::setURL):
2380
2381 2018-07-10  Ryosuke Niwa  <rniwa@webkit.org>
2382
2383         Disable cross-origin-window-policy by default
2384         https://bugs.webkit.org/show_bug.cgi?id=187509
2385
2386         Reviewed by Chris Dumez.
2387
2388         * WebView/WebPreferences.mm:
2389         (+[WebPreferences initialize]):
2390
2391 2018-07-09  Timothy Hatcher  <timothy@apple.com>
2392
2393         Semantic colors don't update when accessibility Increase Contrast mode is enabled.
2394         https://bugs.webkit.org/show_bug.cgi?id=187425
2395         rdar://problem/39948240
2396
2397         Reviewed by Tim Horton.
2398
2399         * WebView/WebView.mm:
2400         (-[WebView _commonInitializationWithFrameName:groupName:]): Removed call to
2401         _updateDefaultAppearance, which called setUseDarkAppearance. There is already
2402         a call in this method to setUseDarkAppearance.
2403         (-[WebView _setUseSystemAppearance:]): Just call the page, not setUseDarkAppearance.
2404         (-[WebView viewDidChangeEffectiveAppearance]): Added. This is the proper NSView method to use.
2405         (-[WebView _updateDefaultAppearance]): Deleted.
2406         (-[WebView effectiveAppearanceDidChange]): Deleted. This method is a deprecated name.
2407
2408 2018-07-09  Simon Fraser  <simon.fraser@apple.com>
2409
2410         Shrink various loading-related enums to shrink CachedResource
2411         https://bugs.webkit.org/show_bug.cgi?id=187443
2412
2413         Reviewed by Chris Dumez.
2414
2415         * WebCoreSupport/WebFrameLoaderClient.mm:
2416         (WebFrameLoaderClient::convertMainResourceLoadToDownload):
2417         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
2418         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
2419         (WebFrameLoaderClient::dispatchWillSendRequest):
2420         (WebFrameLoaderClient::dispatchDecidePolicyForResponse):
2421         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
2422         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2423         (WebFrameLoaderClient::updateGlobalHistory):
2424         (WebFrameLoaderClient::canHandleRequest const):
2425         * WebView/WebDataSource.mm:
2426         (-[WebDataSource initialRequest]):
2427         (-[WebDataSource request]):
2428
2429 2018-07-09  Commit Queue  <commit-queue@webkit.org>
2430
2431         Unreviewed, rolling out r233612.
2432         https://bugs.webkit.org/show_bug.cgi?id=187475
2433
2434         Revision caused the api test LinkColorWithSystemAppearance to
2435         fail on all systems. (Requested by Truitt on #webkit).
2436
2437         Reverted changeset:
2438
2439         "Semantic colors don't update when accessibility Increase
2440         Contrast mode is enabled."
2441         https://bugs.webkit.org/show_bug.cgi?id=187425
2442         https://trac.webkit.org/changeset/233612
2443
2444 2018-07-06  Timothy Hatcher  <timothy@apple.com>
2445
2446         Semantic colors don't update when accessibility Increase Contrast mode is enabled.
2447         https://bugs.webkit.org/show_bug.cgi?id=187425
2448         rdar://problem/39948240
2449
2450         Reviewed by Tim Horton.
2451
2452         * WebView/WebView.mm:
2453         (-[WebView _commonInitializationWithFrameName:groupName:]): Removed call to
2454         _updateDefaultAppearance, which called setUseDarkAppearance. There is already
2455         a call in this method to setUseDarkAppearance.
2456         (-[WebView _setUseSystemAppearance:]): Just call the page, not setUseDarkAppearance.
2457         (-[WebView viewDidChangeEffectiveAppearance]): Added. This is the proper NSView method to use.
2458         (-[WebView _updateDefaultAppearance]): Deleted.
2459         (-[WebView effectiveAppearanceDidChange]): Deleted. This method is a deprecated name.
2460
2461 2018-07-05  Timothy Hatcher  <timothy@apple.com>
2462
2463         Rename and flip the meaning of defaultAppearance to be useDarkAppearance.
2464         https://bugs.webkit.org/show_bug.cgi?id=187369
2465         rdar://problem/41870420
2466
2467         Reviewed by Tim Horton.
2468
2469         * WebView/WebMediaPlaybackTargetPicker.mm:
2470         (WebMediaPlaybackTargetPicker::showPlaybackTargetPicker):
2471         * WebView/WebView.mm:
2472         (-[WebView _commonInitializationWithFrameName:groupName:]):
2473         (-[WebView _effectiveAppearanceIsDark]):
2474         (-[WebView _updateDefaultAppearance]):
2475         (-[WebView _defaultAppearance]): Deleted.
2476
2477 2018-07-04  Ryosuke Niwa  <rniwa@webkit.org>
2478
2479         Youtube video pages crash after a couple of minutes
2480         https://bugs.webkit.org/show_bug.cgi?id=187316
2481
2482         Reviewed by Antti Koivisto.
2483
2484         * WebView/WebView.mm:
2485         (-[WebView _preferencesChanged:]):
2486
2487 2018-07-04  Tim Horton  <timothy_horton@apple.com>
2488
2489         Introduce PLATFORM(IOSMAC)
2490         https://bugs.webkit.org/show_bug.cgi?id=187315
2491
2492         Reviewed by Dan Bernstein.
2493
2494         * Configurations/Base.xcconfig:
2495         * Configurations/FeatureDefines.xcconfig:
2496
2497 2018-06-28  Wenson Hsieh  <wenson_hsieh@apple.com>
2498
2499         [iOS] DataTransfer.getData always returns the empty string when dropping text
2500         https://bugs.webkit.org/show_bug.cgi?id=187130
2501         <rdar://problem/41014117>
2502
2503         Reviewed by Ryosuke Niwa.
2504
2505         Add plumbing to grab information for each item in the pasteboard. See WebCore ChangeLog for more detail.
2506
2507         * WebCoreSupport/WebPlatformStrategies.h:
2508         * WebCoreSupport/WebPlatformStrategies.mm:
2509         (WebPlatformStrategies::allPasteboardItemInfo):
2510
2511 2018-06-26  Eric Carlson  <eric.carlson@apple.com>
2512
2513         [Mac] AirPlay picker uses incorrect theme in Dark mode
2514         https://bugs.webkit.org/show_bug.cgi?id=187054
2515         <rdar://problem/41291093>
2516
2517         Reviewed by Timothy Hatcher.
2518
2519         * WebView/WebMediaPlaybackTargetPicker.mm:
2520         (WebMediaPlaybackTargetPicker::showPlaybackTargetPicker): Pass page->defaultAppearance().
2521
2522 2018-06-23  Yusuke Suzuki  <utatane.tea@gmail.com>
2523
2524         [WTF] Add user-defined literal for ASCIILiteral
2525         https://bugs.webkit.org/show_bug.cgi?id=186839
2526
2527         Reviewed by Darin Adler.
2528
2529         * DOM/ExceptionHandlers.mm:
2530         (raiseDOMErrorException):
2531         * Plugins/Hosted/ProxyInstance.mm:
2532         (WebKit::ProxyInstance::invokeMethod):
2533         * Storage/WebDatabaseProvider.mm:
2534         (WebDatabaseProvider::indexedDatabaseDirectoryPath):
2535
2536 2018-06-22  Timothy Hatcher  <timothy@apple.com>
2537
2538         Recalc styles every time defaultAppearance changes.
2539         https://bugs.webkit.org/show_bug.cgi?id=186866
2540         rdar://problem/41309805
2541
2542         Reviewed by Tim Horton.
2543
2544         * WebView/WebView.mm:
2545         (-[WebView _updateDefaultAppearance]):
2546         (-[WebView _setUseSystemAppearance:]):
2547         (-[WebView _useSystemAppearance]):
2548
2549 2018-06-20  Darin Adler  <darin@apple.com>
2550
2551         [Cocoa] Use the isDirectory: variants of NSURL methods more to eliminate unnecessary file system activity
2552         https://bugs.webkit.org/show_bug.cgi?id=186875
2553
2554         Reviewed by Anders Carlsson.
2555
2556         * WebView/WebHTMLView.mm:
2557         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Use isDirectory:NO for the URL of the location
2558         to write te file to.
2559         * WebView/WebPreferences.mm:
2560         (-[WebPreferences userStyleSheetLocation]): Use isDirectory:NO to create a URL for the user style sheet.
2561         * WebView/WebView.mm:
2562         (-[WebView setMainFrameURL:]): Use isDirectory:NO to create a URL for a local webpage to load.
2563
2564 2018-06-12  Darin Adler  <darin@apple.com>
2565
2566         [Cocoa] Make some RetainPtr refinements to get more ready for ARC
2567         https://bugs.webkit.org/show_bug.cgi?id=186526
2568
2569         Reviewed by Anders Carlsson.
2570
2571         * Plugins/Hosted/NetscapePluginHostManager.mm:
2572         (WebKit::preferredBundleLocalizationName): Use bridgingAutorelease.
2573
2574         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
2575         (-[WebHostedNetscapePluginView createPluginLayer]): Use move
2576         assignment rather than adoptNS/leakRef.
2577         * Plugins/WebNetscapePluginView.mm:
2578         (-[WebNetscapePluginView createPlugin]): Ditto.
2579
2580         * WebCoreSupport/WebContextMenuClient.mm:
2581         (WebContextMenuClient::contextMenuForEvent): Get rid of unnecessary use of
2582         RetainPtr::autorelease; no need to autorelease just to pass something as a function
2583         argument, so use RetainPtr::get instead.
2584
2585         * WebView/WebHTMLView.mm:
2586         (customMenuFromDefaultItems): Get rid of of unnecessary use of RetainPtr::autorelease.
2587         No need to autorelease the result when the return type is RetainPtr.
2588
2589         * WebView/WebPDFRepresentation.mm:
2590         (-[WebPDFRepresentation convertPostScriptDataSourceToPDF:]): Use bridgingAutorelease.
2591
2592 2018-06-13  Youenn Fablet  <youenn@apple.com>
2593
2594         Supported plugin check should be based on plugin identifier
2595         https://bugs.webkit.org/show_bug.cgi?id=186578
2596         <rdar://problem/40523828>
2597
2598         Reviewed by Darin Adler.
2599
2600         * WebCoreSupport/WebPluginInfoProvider.h:
2601         * WebCoreSupport/WebPluginInfoProvider.mm:
2602         (WebPluginInfoProvider::pluginInfo):
2603         (WebPluginInfoProvider::webVisiblePluginInfo):
2604
2605 2018-06-13  Chris Dumez  <cdumez@apple.com>
2606
2607         PSON: http/tests/resourceLoadStatistics/classify-as-prevalent-based-on-top-frame-redirect-collusion.html ASSERTS with process swap enabled
2608         https://bugs.webkit.org/show_bug.cgi?id=186545
2609
2610         Reviewed by Brady Eidson.
2611
2612         Update client delegate now that parameter type has changed.
2613
2614         * WebCoreSupport/WebFrameLoaderClient.h:
2615         * WebCoreSupport/WebFrameLoaderClient.mm:
2616         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2617
2618 2018-06-11  Tim Horton  <timothy_horton@apple.com>
2619
2620         Link drag image is inconsistently unreadable in dark mode
2621         https://bugs.webkit.org/show_bug.cgi?id=186472
2622
2623         Reviewed by Timothy Hatcher.
2624
2625         * WebView/WebView.mm:
2626         (-[WebView _defaultAppearance]):
2627         Make defaultAppearance accurate even if useSystemAppearance is false.
2628         Some parts of WebKit (like the link drag image, but also context menus)
2629         want to be able to follow the system appearance regardless of whether
2630         the view or content has opted in.
2631
2632 2018-06-11  Chris Dumez  <cdumez@apple.com>
2633
2634         http/tests/security/cors-post-redirect-307.html fails with PSON enabled
2635         https://bugs.webkit.org/show_bug.cgi?id=186441
2636
2637         Reviewed by Brady Eidson.
2638
2639         Rename existing flag to something a bit more generic, now that it is used for
2640         more things than bypassing the navigation policy check.
2641
2642         * WebView/WebView.mm:
2643         (-[WebView _loadBackForwardListFromOtherView:]):
2644         (-[WebView goToBackForwardItem:]):
2645
2646 2018-06-09  Dan Bernstein  <mitz@apple.com>
2647
2648         [Xcode] Clean up and modernize some build setting definitions
2649         https://bugs.webkit.org/show_bug.cgi?id=186463
2650
2651         Reviewed by Sam Weinig.
2652
2653         * Configurations/Base.xcconfig: Removed definition for macOS 10.11.
2654         * Configurations/DebugRelease.xcconfig: Ditto.
2655         * Configurations/FeatureDefines.xcconfig: Simplified the definitions of ENABLE_APPLE_PAY and
2656           ENABLE_VIDEO_PRESENTATION_MODE now macOS 10.12 is the earliest supported version.
2657         * Configurations/Version.xcconfig: Removed definition for macOS 10.11.
2658         * Configurations/WebKitLegacy.xcconfig: Simplified the definition of WK_PRIVATE_FRAMEWORKS_DIR
2659           now that WK_XCODE_SUPPORTS_TEXT_BASED_STUBS is true for all supported Xcode versions.
2660         * Configurations/WebKitTargetConditionals.xcconfig: Removed definitions for macOS 10.11.
2661
2662 2018-06-08  Darin Adler  <darin@apple.com>
2663
2664         [Cocoa] Remove all uses of NSAutoreleasePool as part of preparation for ARC
2665         https://bugs.webkit.org/show_bug.cgi?id=186436
2666
2667         Reviewed by Anders Carlsson.
2668
2669         * Carbon/CarbonUtils.m: Updated include location of FoundationSPI.h.
2670         (getNSAutoreleasePoolCount): Use objc_autoreleasePoolPush/Pop.
2671         (WebInitForCarbon): Use objc_autoreleasePoolPush/Pop instead of NSAutoreleasePool object.
2672         (PoolCleaner): Ditto.
2673
2674         * History/WebHistory.mm:
2675         (-[WebHistoryPrivate loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]):
2676         Use @autoreleasepool instead of NSAutoreleasePool object. No need to do the "drain pool only
2677         every 50 times"; the -[WebHistory loadFromURL] family of methods were once used by Safari, and
2678         now hardly used if at all.
2679         * WebView/WebView.mm:
2680         (-[WebView rectsForTextMatches]): Ditto.
2681
2682 2018-06-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2683
2684         [WebKit on watchOS] Upstream watchOS source additions to OpenSource (Part 1)
2685         https://bugs.webkit.org/show_bug.cgi?id=186442
2686         <rdar://problem/40879364>
2687
2688         Reviewed by Tim Horton.
2689
2690         * Configurations/FeatureDefines.xcconfig:
2691
2692 2018-06-08  Aditya Keerthi  <akeerthi@apple.com>
2693
2694         [Datalist] Allow TextFieldInputType to show and hide suggestions
2695         https://bugs.webkit.org/show_bug.cgi?id=186151
2696
2697         Reviewed by Tim Horton.
2698
2699         * WebCoreSupport/WebChromeClient.h:
2700         * WebCoreSupport/WebChromeClient.mm:
2701         (WebChromeClient::createDataListSuggestionPicker):
2702
2703 2018-06-07  Chris Dumez  <cdumez@apple.com>
2704
2705         Add base class to get WeakPtrFactory member and avoid some boilerplate code
2706         https://bugs.webkit.org/show_bug.cgi?id=186407
2707
2708         Reviewed by Brent Fulgham.
2709
2710         Add CanMakeWeakPtr base class to get WeakPtrFactory member and its getter, in
2711         order to avoid some boilerplate code in every class needing a WeakPtrFactory.
2712         This also gets rid of old-style createWeakPtr() methods in favor of the newer
2713         makeWeakPtr().
2714
2715         * WebCoreSupport/WebEditorClient.h:
2716         * WebCoreSupport/WebEditorClient.mm:
2717         (WebEditorClient::requestCandidatesForSelection):
2718
2719 2018-06-05  Chris Dumez  <cdumez@apple.com>
2720
2721         Regression(r232082): Websites get loaded inside of Messages App chat transcript
2722         https://bugs.webkit.org/show_bug.cgi?id=186331
2723         <rdar://problem/40735446>
2724
2725         Reviewed by Darin Adler.
2726
2727         r232082 made it so that if the client implements decidePolicyForMIMEType / decidePolicyForNavigationAction
2728         but does not call use / ignore on the listener, then we would do "use" by default.
2729         The intention was to restore pre-AsyncPolicyDelegates behavior and unbreak Box.app. However,
2730         the pre-AsyncPolicyDelegates behavior was only to "use" by default for decidePolicyForMIMEType,
2731         not decidePolicyForNavigationAction. Doing "use" by default for decidePolicyForNavigationAction
2732         is new behavior and it breaks Messages.app. This patch updates r232082 so that we now do call
2733         "use" by default on the listener for decidePolicyForMIMEType and "ignore" by default for other
2734         policy decisions. This should restore pre-AsyncPolicyDelegates behavior. This fixes Messages.app
2735         and Box.app is still working properly.
2736
2737         * WebCoreSupport/WebFrameLoaderClient.h:
2738         * WebCoreSupport/WebFrameLoaderClient.mm:
2739         (WebFrameLoaderClient::dispatchDecidePolicyForResponse):
2740         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
2741         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2742         (WebFrameLoaderClient::dispatchWillSubmitForm):
2743         (WebFrameLoaderClient::setUpPolicyListener):
2744         (-[WebFramePolicyListener initWithFrame:policyFunction:defaultPolicy:]):
2745         (-[WebFramePolicyListener initWithFrame:policyFunction:defaultPolicy:appLinkURL:]):
2746         (-[WebFramePolicyListener dealloc]):
2747         (-[WebFramePolicyListener initWithFrame:policyFunction:]): Deleted.
2748         (-[WebFramePolicyListener initWithFrame:policyFunction:appLinkURL:]): Deleted.
2749
2750 2018-06-05  Brent Fulgham  <bfulgham@apple.com>
2751
2752         Adjust compile and runtime flags to match shippable state of features
2753         https://bugs.webkit.org/show_bug.cgi?id=186319
2754         <rdar://problem/40352045>
2755
2756         Reviewed by Maciej Stachowiak, Jon Lee, and others.
2757
2758         * Configurations/DebugRelease.xcconfig: Don't build ENABLE_INPUT_TYPE_COLOR
2759         or ENABLE_INPUT_TYPE_COLOR_POPOVER.
2760         * Configurations/FeatureDefines.xcconfig: Update to match WebKit definition of
2761         WK_RELOCATABLE_FRAMEWORKS so that ENABLE(EXPERIMENTAL_FEATURES) is defined properly for
2762         Cocoa builds.
2763
2764 2018-06-05  Timothy Hatcher  <timothy@apple.com>
2765
2766         Clean up LocalDefaultSystemAppearance and prefers-dark-interface media query
2767
2768         https://bugs.webkit.org/show_bug.cgi?id=186323
2769         rdar://problem/38382252
2770
2771         Reviewed by Tim Horton.
2772
2773         * WebView/WebView.mm:
2774         (-[WebView _defaultAppearance]):
2775
2776 2018-06-05  Brent Fulgham  <bfulgham@apple.com>
2777
2778         Revise DEFAULT_EXPERIMENTAL_FEATURES_ENABLED to work properly on Apple builds
2779         https://bugs.webkit.org/show_bug.cgi?id=186286
2780         <rdar://problem/40782992>
2781
2782         Reviewed by Dan Bernstein.
2783
2784         Use the WK_RELOCATABLE_FRAMEWORKS flag (which is always defined for non-production builds)
2785         to define ENABLE(EXPERIMENTAL_FEATURES) so that we do not need to manually
2786         change this flag when preparing for a production release.
2787
2788         * Configurations/FeatureDefines.xcconfig: Use WK_RELOCATABLE_FRAMEWORKS to determine
2789         whether experimental features should be enabled, and use it to properly define the
2790         feature flag.
2791
2792 2018-06-03  Darin Adler  <darin@apple.com>
2793
2794         Simplify and remove some unused video element code (helpful for ARC-compatibility)
2795         https://bugs.webkit.org/show_bug.cgi?id=186258
2796
2797         Reviewed by Daniel Bates.
2798
2799         * WebView/WebVideoFullscreenController.h: Removed some unneeded includes and
2800         forward declarations. Removed methods that don't need to be public.
2801
2802         * WebView/WebVideoFullscreenController.mm: Added additional includes. Removed
2803         #if COMPILER(CLANG) since that's all we use on Mac. Moved fields into an
2804         unnamed category in here and also replaced the HUDWindowControllerDelegate
2805         with the unnamed category. Removed unused NSWindow category defining the
2806         isOnActiveSpace, which is not called anywhere in this file at this time.
2807         (-[WebVideoFullscreenController setupVideoOverlay:]): Deleted. Moved the code
2808         into setVideoElement.
2809         (-[WebVideoFullscreenController windowDidLoad]): Slightly rearranged the code
2810         and removed unneeded typecast.
2811         (-[WebVideoFullscreenController videoElement]): Updated to not rely on a
2812         using statement at the top of the file.
2813         (-[WebVideoFullscreenController setVideoElement:]): Added a comment about
2814         the many side effects and special considerations that this method that sounds
2815         like a setter has. Updated code to use the new
2816         MediaPlayer::objCAVFoundationAVPlayer function instead of the old
2817         HTMLVideoElement::platformMedia function. Also straightened out the logic a
2818         bit and added some FIXME comments about small problems noticed but not fixed.
2819         (-[WebVideoFullscreenController delegate]): Deleted. Was never called.
2820         (-[WebVideoFullscreenController setDelegate:]): Deleted. Was never called.
2821         (-[WebVideoFullscreenController windowDidExitFullscreen]): Removed unneeded
2822         typecast. Removed call to updatePowerAssertions method.
2823         (-[WebVideoFullscreenController windowDidEnterFullscreen]): Removed call to
2824         updatePowerAssertions method.
2825         (-[WebVideoFullscreenController updatePowerAssertions]): Deleted. This method
2826         set _displaySleepEnabler to nullptr, but nothing was ever setting it to anything
2827         else, so this was dead code that did nothing.
2828         (-[WebVideoFullscreenController rateChanged:]): Removed call to
2829         updatePowerAssertions method.
2830
2831 2018-06-04  Chris Dumez  <cdumez@apple.com>
2832
2833         Rename "Cross-Origin-Options" HTTP header to "Cross-Origin-Window-Policy"
2834         https://bugs.webkit.org/show_bug.cgi?id=186287
2835         <rdar://problem/40783352>
2836
2837         Reviewed by Youenn Fablet.
2838
2839         * WebView/WebPreferenceKeysPrivate.h:
2840         * WebView/WebPreferences.mm:
2841         (+[WebPreferences initialize]):
2842         (-[WebPreferences crossOriginWindowPolicySupportEnabled]):
2843         (-[WebPreferences setCrossOriginWindowPolicySupportEnabled:]):
2844         * WebView/WebPreferencesPrivate.h:
2845         * WebView/WebView.mm:
2846         (-[WebView _preferencesChanged:]):
2847
2848 2018-06-02  Darin Adler  <darin@apple.com>
2849
2850         [Cocoa] Update some code to be more ARC-compatible to prepare for future ARC adoption
2851         https://bugs.webkit.org/show_bug.cgi?id=186227
2852
2853         Reviewed by Dan Bernstein.
2854
2855         * Misc/WebKitErrors.m:
2856         (+[NSError _registerWebKitErrors]): Use @autoreleasepool instead of NSAutoreleasePool.
2857         * Plugins/WebPluginDatabase.mm:
2858         (-[WebPluginDatabase refresh]): Ditto.
2859         * WebCoreSupport/WebChromeClient.mm:
2860         (WebChromeClient::setStatusbarText): Ditto.
2861
2862 2018-06-01  Chris Dumez  <cdumez@apple.com>
2863
2864         REGRESSION (r231456): Colloquy is broken
2865         https://bugs.webkit.org/show_bug.cgi?id=186197
2866         <rdar://problem/40722960>
2867
2868         Reviewed by Timothy Hatcher.
2869
2870         Restore pre-r231456 behavior for Colloquy app so that it works again.
2871
2872         * WebView/WebView.mm:
2873         (-[WebView _needsFrameNameFallbackToIdQuirk]):
2874         (-[WebView _preferencesChanged:]):
2875
2876 2018-05-30  Yusuke Suzuki  <utatane.tea@gmail.com>
2877
2878         [JSC] Pass VM& parameter as much as possible
2879         https://bugs.webkit.org/show_bug.cgi?id=186085
2880
2881         Reviewed by Saam Barati.
2882
2883         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2884         (WebKit::NetscapePluginInstanceProxy::invoke):
2885
2886 2018-05-30  Daniel Bates  <dabates@apple.com>
2887
2888         NavigationAction does not need to hold initiating DOM Event
2889         https://bugs.webkit.org/show_bug.cgi?id=185958
2890         <rdar://problem/40531539>
2891
2892         Reviewed by Simon Fraser.
2893
2894         Write in terms of NavigationAction::{keyStateEventData, mouseEventDataForFirstMouseEvent}().
2895
2896         * WebCoreSupport/WebFrameLoaderClient.mm:
2897         (WebFrameLoaderClient::actionDictionary const):
2898         (findMouseEvent): Deleted.
2899
2900 2018-05-27  Dan Bernstein  <mitz@apple.com>
2901
2902         Reverted the changes made for https://webkit.org/b/186016
2903
2904         They broke the USE(APPLE_INTERNAL_SDK) Sierra build.
2905
2906
2907 2018-05-27  David Kilzer  <ddkilzer@apple.com>
2908
2909         [iOS] Fix warnings about leaks found by clang static analyzer
2910         <https://webkit.org/b/186009>
2911         <rdar://problem/40574267>
2912
2913         Reviewed by Daniel Bates.
2914
2915         * WebView/WebHTMLView.mm:
2916         (-[WebHTMLView doCommandBySelector:]): Fix use of an
2917         uninitialized boolean variable (`eventWasHandled`) that only
2918         happened on iOS.
2919
2920 2018-05-27  Dan Bernstein  <mitz@apple.com>
2921
2922         [Cocoa] Avoid importing directly from subumbrella frameworks
2923         https://bugs.webkit.org/show_bug.cgi?id=186016
2924
2925         Reviewed by Sam Weinig.
2926
2927         * Carbon/CarbonWindowAdapter.h: Import Carbon.h instead of HIToolbox headers.
2928         * Carbon/CarbonWindowAdapter.mm: Ditto.
2929         * Carbon/CarbonWindowFrame.m: Ditto.
2930         * Carbon/HIViewAdapter.h: Ditto.
2931         * Configurations/WebKitLegacy.xcconfig: Removed -iframework options from OTHER_CFLAGS and
2932           OTHER_CPLUSPLUSFLAGS.
2933         * Plugins/WebNetscapePluginEventHandlerCarbon.mm: Import Carbon.h instead of CarbonEvents.h.
2934         * WebView/WebPDFDocumentExtras.mm: Import Quartz.h instead of a PDFKit header.
2935         * WebView/WebPDFView.h: Ditto.
2936
2937 2018-05-27  Sam Weinig  <sam@webkit.org>
2938
2939         Modernize RenderStyleConstants.h - Part 3
2940         https://bugs.webkit.org/show_bug.cgi?id=186015
2941
2942         Reviewed by Yusuke Suzuki.
2943
2944         * WebView/WebView.mm:
2945         (-[WebView updateTextTouchBar]):
2946         Update for new enum name.
2947
2948 2018-05-25  Chris Dumez  <cdumez@apple.com>
2949
2950         Minor ApplicationCacheStorage clean up
2951         https://bugs.webkit.org/show_bug.cgi?id=185984
2952
2953         Reviewed by Youenn Fablet.
2954
2955         * WebCoreSupport/WebApplicationCache.mm:
2956         (+[WebApplicationCache originsWithCache]):
2957
2958 2018-05-25  David Kilzer  <ddkilzer@apple.com>
2959
2960         Fix issues with -dealloc methods found by clang static analyzer
2961         <https://webkit.org/b/185887>
2962
2963         Reviewed by Joseph Pecoraro.
2964
2965         * WebView/WebView.mm:
2966         (-[WebUITextIndicatorData dealloc]):
2967         - Move method implementation from (WebUITextIndicatorInternal)
2968           category to the main category since this is public API.  This
2969           fixes the false positive warning about a missing -dealloc
2970           method.
2971
2972 2018-05-24  Sam Weinig  <sam@webkit.org>
2973
2974         Modernize RenderStyleConstants.h - Part 2
2975         https://bugs.webkit.org/show_bug.cgi?id=185901
2976
2977         Reviewed by Simon Fraser.
2978
2979         * WebView/WebHTMLRepresentation.mm:
2980         (searchForLabelsBeforeElement):
2981         * WebView/WebView.mm:
2982         (nsTextAlignmentFromRenderStyle):
2983         Update for new enum names.
2984
2985 2018-05-22  Chris Dumez  <cdumez@apple.com>
2986
2987         Regression(AsyncPolicyDelegates): Box.app login Window is blank
2988         https://bugs.webkit.org/show_bug.cgi?id=185832
2989         <rdar://problem/40307871>
2990
2991         Reviewed by Geoffrey Garen.
2992
2993         We used to have a bug where where we would fail to wait for the policy decision for
2994         the navigation response from the client and the load would keep going, racing with
2995         the client's policy decision. If the client did not respond in time, the behavior
2996         would be the same as "Use" policy action.
2997
2998         Box.app fails to make any policy decision in its decidePolicyForMIMEType delegate
2999         but the load happened to proceed anyway due to our bug. Now that we've fixed the
3000         WebKit bug, however, the load would hang because the completion handler for the
3001         decidePolicyForNavigationResponse would never get called.
3002
3003         To work around the issue, I made the policy listener weak on the WebFrameLoaderClient
3004         instead of retaining it. If the policy listener object gets destroyed because getting
3005         resolved, we now use "Use" policy action in its dealloc function to maintain previous
3006         behavior.
3007
3008         * WebCoreSupport/WebFrameLoaderClient.h:
3009         * WebCoreSupport/WebFrameLoaderClient.mm:
3010         (WebFrameLoaderClient::cancelPolicyCheck):
3011         (WebFrameLoaderClient::setUpPolicyListener):
3012         (-[WebFramePolicyListener dealloc]):
3013
3014 2018-05-22  Ryan Haddad  <ryanhaddad@apple.com>
3015
3016         Unreviewed, rolling out r232052.
3017
3018         Breaks internal builds.
3019
3020         Reverted changeset:
3021
3022         "Use more C++17"
3023         https://bugs.webkit.org/show_bug.cgi?id=185176
3024         https://trac.webkit.org/changeset/232052
3025
3026 2018-05-21  Yusuke Suzuki  <utatane.tea@gmail.com>
3027
3028         Use more C++17
3029         https://bugs.webkit.org/show_bug.cgi?id=185176
3030
3031         Reviewed by JF Bastien.
3032
3033         * Configurations/Base.xcconfig:
3034         * Configurations/WebKitLegacy.xcconfig:
3035
3036 2018-05-21  Chris Nardi  <cnardi@chromium.org>
3037
3038         Remove dead exception in MediaList.appendMedium
3039         https://bugs.webkit.org/show_bug.cgi?id=185278
3040
3041         Reviewed by Chris Dumez.
3042
3043         Remove code pertaining to an exception being thrown by appendMedium().
3044
3045         * DOM/DOMMediaList.mm:
3046         (-[DOMMediaList appendMedium:]):
3047
3048 2018-05-21  Jer Noble  <jer.noble@apple.com>
3049
3050         Complete fix for enabling modern EME by default
3051         https://bugs.webkit.org/show_bug.cgi?id=185770
3052         <rdar://problem/40368220>
3053
3054         Reviewed by Eric Carlson.
3055
3056         * Configurations/FeatureDefines.xcconfig:
3057
3058 2018-05-21  Antti Koivisto  <antti@apple.com>
3059
3060         WebView._preferencesChanged should apply colorFilterEnabled preference before parsing user stylesheet
3061         https://bugs.webkit.org/show_bug.cgi?id=185815
3062         <rdar://problem/40310069>
3063
3064         Reviewed by Simon Fraser.
3065
3066         User stylesheet parsing may depend on the colorFilterEnabled preference.
3067
3068         * WebView/WebView.mm:
3069         (-[WebView _preferencesChanged:]):
3070
3071 2018-05-18  Commit Queue  <commit-queue@webkit.org>
3072
3073         Unreviewed, rolling out r231982.
3074         https://bugs.webkit.org/show_bug.cgi?id=185793
3075
3076         Caused layout test failures (Requested by realdawei on
3077         #webkit).
3078
3079         Reverted changeset:
3080
3081         "Complete fix for enabling modern EME by default"
3082         https://bugs.webkit.org/show_bug.cgi?id=185770
3083         https://trac.webkit.org/changeset/231982
3084
3085 2018-05-18  Jer Noble  <jer.noble@apple.com>
3086
3087         Complete fix for enabling modern EME by default
3088         https://bugs.webkit.org/show_bug.cgi?id=185770
3089         <rdar://problem/40368220>
3090
3091         Reviewed by Eric Carlson.
3092
3093         * Configurations/FeatureDefines.xcconfig:
3094
3095 2018-05-18  Chris Dumez  <cdumez@apple.com>
3096
3097         Avoid keeping the frame alive when ref'ing a WindowProxy
3098         https://bugs.webkit.org/show_bug.cgi?id=185737
3099         <rdar://problem/40004666>
3100
3101         Reviewed by Sam Weinig.
3102
3103         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3104         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
3105
3106 2018-05-16  Andy VanWagoner  <andy@vanwagoner.family>
3107
3108         Add support for Intl NumberFormat formatToParts
3109         https://bugs.webkit.org/show_bug.cgi?id=185375
3110
3111         Reviewed by Yusuke Suzuki.
3112
3113         Add flag for NumberFormat formatToParts.
3114
3115         * Configurations/FeatureDefines.xcconfig:
3116
3117 2018-05-16  Chris Nardi  <cnardi@chromium.org>
3118
3119         Fixup after r231849: Do not mark Mac API methods as deprecated
3120         https://bugs.webkit.org/show_bug.cgi?id=185684
3121
3122         Reviewed by Darin Adler.
3123
3124         Do not mark API methods for Document#selectedStylesheetSet/preferredStylesheetSet as deprecated
3125         as the entire class is already marked as deprecated, so it is unnecessary.
3126
3127         * DOM/DOMDocument.h:
3128
3129 2018-05-16  Chris Nardi  <cnardi@chromium.org>
3130
3131         Remove Document#selectedStylesheetSet/preferredStylesheetSet
3132         https://bugs.webkit.org/show_bug.cgi?id=185381
3133
3134         Reviewed by Darin Adler.
3135
3136         Mark API methods for Document#selectedStylesheetSet/preferredStylesheetSet as deprecated
3137         and make them do nothing.
3138
3139         * DOM/DOMDocument.h:
3140         * DOM/DOMDocument.mm:
3141         (-[DOMDocument preferredStylesheetSet]):
3142         (-[DOMDocument selectedStylesheetSet]):
3143         (-[DOMDocument setSelectedStylesheetSet:]):
3144
3145 2018-05-15  Antoine Quint  <graouts@apple.com>
3146
3147         [Web Animations] Expose Web Animations CSS integration as an experimental feature
3148         https://bugs.webkit.org/show_bug.cgi?id=185647
3149
3150         Reviewed by Dean Jackson.
3151
3152         Rename the Web Animations CSS integration flag.
3153
3154         * WebView/WebPreferenceKeysPrivate.h:
3155         * WebView/WebPreferences.mm:
3156         (+[WebPreferences initialize]):
3157         (-[WebPreferences webAnimationsCSSIntegrationEnabled]):
3158         (-[WebPreferences setWebAnimationsCSSIntegrationEnabled:]):
3159         (-[WebPreferences cssAnimationsAndCSSTransitionsBackedByWebAnimationsEnabled]): Deleted.
3160         (-[WebPreferences setCSSAnimationsAndCSSTransitionsBackedByWebAnimationsEnabled:]): Deleted.
3161         * WebView/WebPreferencesPrivate.h:
3162         * WebView/WebView.mm:
3163         (-[WebView _preferencesChanged:]):
3164
3165 2018-05-14  Daniel Bates  <dabates@apple.com>
3166
3167         Fix the Apple Internal build
3168
3169         See <rdar://problem/40237873> for more details.
3170
3171         * WebView/WebFullScreenController.mm:
3172         (-[WebFullScreenController enterFullScreen:]):
3173         (-[WebFullScreenController finishedEnterFullScreenAnimation:]):
3174         (-[WebFullScreenController exitFullScreen]):
3175         (-[WebFullScreenController finishedExitFullScreenAnimation:]):
3176         (-[WebFullScreenController _startEnterFullScreenAnimationWithDuration:]):
3177         (-[WebFullScreenController _startExitFullScreenAnimationWithDuration:]):
3178
3179 2018-05-11  Timothy Hatcher  <timothy@apple.com>
3180
3181         WebHTMLView is not setting aside subviews when drawing.
3182
3183         https://bugs.webkit.org/show_bug.cgi?id=185561
3184         rdar://problem/40172894
3185
3186         Reviewed by Simon Fraser.
3187
3188         Use the new method signature for _recursive:displayRectIgnoringOpacity:shouldChangeFontReferenceColor:.
3189
3190         * WebView/WebHTMLView.mm:
3191         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:stopAtLayerBackedViews:]): Added.
3192
3193 2018-05-07  Daniel Bates  <dabates@apple.com>
3194
3195         Substitute CrossOriginPreflightResultCache::clear() for CrossOriginPreflightResultCache::empty()
3196         https://bugs.webkit.org/show_bug.cgi?id=185170
3197
3198         Reviewed by Per Arne Vollan.
3199
3200         * Misc/WebCache.mm:
3201         (+[WebCache empty]):
3202
3203 2018-05-04  Timothy Hatcher  <timothy@apple.com>
3204
3205         Deprecate legacy WebView and friends
3206         https://bugs.webkit.org/show_bug.cgi?id=185279
3207         rdar://problem/33268700
3208
3209         Reviewed by Tim Horton.
3210
3211         Added deprecation macros to all the classes, extern strings, and enums.
3212
3213         * Configurations/WebKitLegacy.xcconfig:
3214         Added BUILDING_WEBKIT define to disable the deprecation macros.
3215         * DOM/DOMAbstractView.h:
3216         * DOM/DOMAttr.h:
3217         * DOM/DOMBlob.h:
3218         * DOM/DOMCDATASection.h:
3219         * DOM/DOMCSSCharsetRule.h:
3220         * DOM/DOMCSSFontFaceRule.h:
3221         * DOM/DOMCSSImportRule.h:
3222         * DOM/DOMCSSMediaRule.h:
3223         * DOM/DOMCSSPageRule.h:
3224         * DOM/DOMCSSPrimitiveValue.h:
3225         * DOM/DOMCSSRule.h:
3226         * DOM/DOMCSSRuleList.h:
3227         * DOM/DOMCSSStyleDeclaration.h:
3228         * DOM/DOMCSSStyleRule.h:
3229         * DOM/DOMCSSStyleSheet.h:
3230         * DOM/DOMCSSUnknownRule.h:
3231         * DOM/DOMCSSValue.h:
3232         * DOM/DOMCSSValueList.h:
3233         * DOM/DOMCharacterData.h:
3234         * DOM/DOMComment.h:
3235         * DOM/DOMCounter.h:
3236         * DOM/DOMDocument.h:
3237         * DOM/DOMDocumentFragment.h:
3238         * DOM/DOMDocumentType.h:
3239         * DOM/DOMElement.h:
3240         * DOM/DOMEntity.h:
3241         * DOM/DOMEntityReference.h:
3242         * DOM/DOMEvent.h:
3243         * DOM/DOMEventException.h:
3244         * DOM/DOMEventListener.h:
3245         * DOM/DOMEventTarget.h:
3246         * DOM/DOMException.h:
3247         * DOM/DOMFile.h:
3248         * DOM/DOMFileList.h:
3249         * DOM/DOMHTMLAnchorElement.h:
3250         * DOM/DOMHTMLAppletElement.h:
3251         * DOM/DOMHTMLAreaElement.h:
3252         * DOM/DOMHTMLBRElement.h:
3253         * DOM/DOMHTMLBaseElement.h:
3254         * DOM/DOMHTMLBaseFontElement.h:
3255         * DOM/DOMHTMLBodyElement.h:
3256         * DOM/DOMHTMLButtonElement.h:
3257         * DOM/DOMHTMLCanvasElement.h:
3258         * DOM/DOMHTMLCollection.h:
3259         * DOM/DOMHTMLDListElement.h:
3260         * DOM/DOMHTMLDirectoryElement.h:
3261         * DOM/DOMHTMLDivElement.h:
3262         * DOM/DOMHTMLDocument.h:
3263         * DOM/DOMHTMLElement.h:
3264         * DOM/DOMHTMLEmbedElement.h:
3265         * DOM/DOMHTMLFieldSetElement.h:
3266         * DOM/DOMHTMLFontElement.h:
3267         * DOM/DOMHTMLFormElement.h:
3268         * DOM/DOMHTMLFrameElement.h:
3269         * DOM/DOMHTMLFrameSetElement.h:
3270         * DOM/DOMHTMLHRElement.h:
3271         * DOM/DOMHTMLHeadElement.h:
3272         * DOM/DOMHTMLHeadingElement.h:
3273         * DOM/DOMHTMLHtmlElement.h:
3274         * DOM/DOMHTMLIFrameElement.h:
3275         * DOM/DOMHTMLImageElement.h:
3276         * DOM/DOMHTMLInputElement.h:
3277         * DOM/DOMHTMLLIElement.h:
3278         * DOM/DOMHTMLLabelElement.h:
3279         * DOM/DOMHTMLLegendElement.h:
3280         * DOM/DOMHTMLLinkElement.h:
3281         * DOM/DOMHTMLMapElement.h:
3282         * DOM/DOMHTMLMarqueeElement.h:
3283         * DOM/DOMHTMLMediaElement.h:
3284         * DOM/DOMHTMLMenuElement.h:
3285         * DOM/DOMHTMLMetaElement.h:
3286         * DOM/DOMHTMLModElement.h:
3287         * DOM/DOMHTMLOListElement.h:
3288         * DOM/DOMHTMLObjectElement.h:
3289         * DOM/DOMHTMLOptGroupElement.h:
3290         * DOM/DOMHTMLOptionElement.h:
3291         * DOM/DOMHTMLOptionsCollection.h:
3292         * DOM/DOMHTMLParagraphElement.h:
3293         * DOM/DOMHTMLParamElement.h:
3294         * DOM/DOMHTMLPreElement.h:
3295         * DOM/DOMHTMLQuoteElement.h:
3296         * DOM/DOMHTMLScriptElement.h:
3297         * DOM/DOMHTMLSelectElement.h:
3298         * DOM/DOMHTMLStyleElement.h:
3299         * DOM/DOMHTMLTableCaptionElement.h:
3300         * DOM/DOMHTMLTableCellElement.h:
3301         * DOM/DOMHTMLTableColElement.h:
3302         * DOM/DOMHTMLTableElement.h:
3303         * DOM/DOMHTMLTableRowElement.h:
3304         * DOM/DOMHTMLTableSectionElement.h:
3305         * DOM/DOMHTMLTextAreaElement.h:
3306         * DOM/DOMHTMLTitleElement.h:
3307         * DOM/DOMHTMLUListElement.h:
3308         * DOM/DOMHTMLVideoElement.h:
3309         * DOM/DOMImplementation.h:
3310         * DOM/DOMKeyboardEvent.h:
3311         * DOM/DOMMediaError.h:
3312         * DOM/DOMMediaList.h:
3313         * DOM/DOMMouseEvent.h:
3314         * DOM/DOMMutationEvent.h:
3315         * DOM/DOMNamedNodeMap.h:
3316         * DOM/DOMNode.h:
3317         * DOM/DOMNodeFilter.h:
3318         * DOM/DOMNodeIterator.h:
3319         * DOM/DOMNodeList.h:
3320         * DOM/DOMObject.h:
3321         * DOM/DOMOverflowEvent.h:
3322         * DOM/DOMProcessingInstruction.h:
3323         * DOM/DOMProgressEvent.h:
3324         * DOM/DOMRGBColor.h:
3325         * DOM/DOMRange.h:
3326         * DOM/DOMRangeException.h:
3327         * DOM/DOMRect.h:
3328         * DOM/DOMStyleSheet.h:
3329         * DOM/DOMStyleSheetList.h:
3330         * DOM/DOMText.h:
3331         * DOM/DOMTextEvent.h:
3332         * DOM/DOMTimeRanges.h:
3333         * DOM/DOMTokenList.h:
3334         * DOM/DOMTreeWalker.h:
3335         * DOM/DOMUIEvent.h:
3336         * DOM/DOMWheelEvent.h:
3337         * DOM/DOMXPathException.h:
3338         * DOM/DOMXPathExpression.h:
3339         * DOM/DOMXPathNSResolver.h:
3340         * DOM/DOMXPathResult.h:
3341         * History/WebBackForwardList.h:
3342         * History/WebHistory.h:
3343         * History/WebHistoryItem.h:
3344         * Misc/WebDownload.h:
3345         * Misc/WebKitErrors.h:
3346         * Plugins/WebPluginViewFactory.h:
3347         * WebView/WebArchive.h:
3348         * WebView/WebDataSource.h:
3349         * WebView/WebDocument.h:
3350         * WebView/WebEditingDelegate.h:
3351         * WebView/WebFormDelegate.h:
3352         * WebView/WebFrame.h:
3353         * WebView/WebFrameLoadDelegate.h:
3354         * WebView/WebFrameView.h:
3355         * WebView/WebPolicyDelegate.h:
3356         * WebView/WebPreferences.h:
3357         * WebView/WebPreferencesPrivate.h:
3358         * WebView/WebResourceLoadDelegate.h:
3359         * WebView/WebUIDelegate.h:
3360         * WebView/WebUIDelegatePrivate.h:
3361         * WebView/WebView.h:
3362         * WebView/WebViewPrivate.h:
3363         * postprocess-headers.sh:
3364         Remove step that converts WEBKIT macros to NS macros.
3365         Change it to just remove the macros on iOS builds.
3366
3367 2018-05-01  Eric Carlson  <eric.carlson@apple.com>
3368
3369         [MediaStream] remove WK1 support
3370         https://bugs.webkit.org/show_bug.cgi?id=185136
3371
3372         Reviewed by Youenn Fablet.
3373
3374         * WebCoreSupport/WebUserMediaClient.h: Removed.
3375         * WebCoreSupport/WebUserMediaClient.mm: Removed.
3376         * WebView/WebView.mm:
3377         (-[WebView _commonInitializationWithFrameName:groupName:]):
3378         (-[WebView _preferencesChanged:]):
3379         (-[WebView _setUserMediaClient:]): Deleted.
3380         (-[WebView _userMediaClient]): Deleted.
3381         * WebView/WebViewData.h:
3382         * WebView/WebViewPrivate.h:
3383
3384 2018-05-01  Oleksandr Skachkov  <gskachkov@gmail.com>
3385
3386         WebAssembly: add support for stream APIs - JavaScript API
3387         https://bugs.webkit.org/show_bug.cgi?id=183442
3388
3389         Reviewed by Yusuke Suzuki and JF Bastien.
3390
3391         Add WEBASSEMBLY_STREAMINNG_API feature flag
3392
3393         * Configurations/FeatureDefines.xcconfig:
3394
3395 2018-04-30  JF Bastien  <jfbastien@apple.com>
3396
3397         Use some C++17 features
3398         https://bugs.webkit.org/show_bug.cgi?id=185135
3399
3400         Reviewed by Alex Christensen.
3401
3402         * Configurations/WebKitLegacy.xcconfig:
3403
3404 2018-04-27  Chris Dumez  <cdumez@apple.com>
3405
3406         Use WindowProxy instead of DOMWindow in our IDL
3407         https://bugs.webkit.org/show_bug.cgi?id=185022
3408
3409         Reviewed by Sam Weinig.
3410
3411         * DOM/DOMAbstractView.mm:
3412         (kit):
3413         (toWindowProxy):
3414         * DOM/DOMAbstractViewInternal.h:
3415         * DOM/DOMDocument.mm:
3416         (-[DOMDocument defaultView]):
3417         (-[DOMDocument getComputedStyle:pseudoElement:]):
3418         (-[DOMDocument getMatchedCSSRules:pseudoElement:authorOnly:]):
3419         * DOM/DOMHTMLFrameElement.mm:
3420         (-[DOMHTMLFrameElement contentWindow]):
3421         * DOM/DOMHTMLIFrameElement.mm:
3422         (-[DOMHTMLIFrameElement contentWindow]):
3423         * DOM/DOMKeyboardEvent.mm:
3424         (-[DOMKeyboardEvent initKeyboardEvent:canBubble:cancelable:view:keyIdentifier:location:ctrlKey:altKey:shiftKey:metaKey:altGraphKey:]):
3425         (-[DOMKeyboardEvent initKeyboardEvent:canBubble:cancelable:view:keyIdentifier:location:ctrlKey:altKey:shiftKey:metaKey:]):
3426         (-[DOMKeyboardEvent initKeyboardEvent:canBubble:cancelable:view:keyIdentifier:keyLocation:ctrlKey:altKey:shiftKey:metaKey:altGraphKey:]):
3427         (-[DOMKeyboardEvent initKeyboardEvent:canBubble:cancelable:view:keyIdentifier:keyLocation:ctrlKey:altKey:shiftKey:metaKey:]):
3428         * DOM/DOMMouseEvent.mm:
3429         (-[DOMMouseEvent initMouseEvent:canBubble:cancelable:view:detail:screenX:screenY:clientX:clientY:ctrlKey:altKey:shiftKey:metaKey:button:relatedTarget:]):
3430         * DOM/DOMTextEvent.mm:
3431         (-[DOMTextEvent initTextEvent:canBubbleArg:cancelableArg:viewArg:dataArg:]):
3432         * DOM/DOMUIEvent.mm:
3433         (-[DOMUIEvent view]):
3434         (-[DOMUIEvent initUIEvent:canBubble:cancelable:view:detail:]):
3435         * DOM/DOMWheelEvent.mm:
3436         (-[DOMWheelEvent initWheelEvent:wheelDeltaY:view:screenX:screenY:clientX:clientY:ctrlKey:altKey:shiftKey:metaKey:]):
3437
3438 2018-04-26  Simon Fraser  <simon.fraser@apple.com>
3439
3440         Implement rendering support for the color-filter CSS property
3441         https://bugs.webkit.org/show_bug.cgi?id=185047
3442         rdar://problem/39664967
3443
3444         Reviewed by Tim Horton.
3445         
3446         The body background should reflect the filtered color.
3447
3448         * WebView/WebFrame.mm:
3449         (-[WebFrame _bodyBackgroundColor]):
3450         * WebView/WebView.mm:
3451         (-[WebView updateTextTouchBar]): No logic change, just cleanup.
3452
3453 2018-04-26  Jer Noble  <jer.noble@apple.com>
3454
3455         WK_COCOA_TOUCH all the things.
3456         https://bugs.webkit.org/show_bug.cgi?id=185006
3457
3458         Reviewed by Tim Horton.
3459
3460         * Configurations/WebKitLegacy.xcconfig:
3461
3462 2018-04-26  Daniel Bates  <dabates@apple.com>
3463
3464         ASSERTION FAILED: ASSERT(!containsImage || MIMETypeRegistry::isSupportedImageResourceMIMEType([resource MIMEType])) in -[NSPasteboard(WebExtras) _web_writePromisedRTFDFromArchive:containsImage:]
3465         https://bugs.webkit.org/show_bug.cgi?id=184161
3466         <rdar://problem/39051645>
3467
3468         Reviewed by Dan Bernstein.
3469
3470         Fixes an assertion failure when quitting an app that uses a Legacy WebKit web view after dragging-and-
3471         dropping a PDF embedded using an HTML image element into the same web view.
3472
3473         When performing a drag-and-drop of a PDF document image (WebCore::PDFDocumentImage) we create a WebArchive
3474         from the main frame's WebHTMLView and promise AppKit that we will provide a Rich Text Format (RTF) document
3475         from this archive if needed. For some reason, on app termination AppKit requests that the WebHTMLView
3476         fulfill its RTF document promise for the WebArchive created at the start of the drag operation. To do this,
3477         we need to extract the image resource from the Web Archive. Currently we query MIMETypeRegistry::isSupportedImageResourceMIMEType()
3478         to see if the contained image is one that we can handle. However MIMETypeRegistry::isSupportedImageResourceMIMEType()
3479         only returns true if WebKit supports creating an image document for the specified MIME type. Disregarding
3480         the iOS motivated setting Settings::useImageDocumentForSubframePDF, PDFs and PostScripts do not create an
3481         image document when navigated to directly. Since we can support dragging PDF document images we need to
3482         query if MIMETypeRegistry::isPDFOrPostScriptMIMEType() in addition to querying MIMETypeRegistry::isSupportedImageResourceMIMEType().
3483         We need to do both such queries before falling back to using the main resource of the Web Archive as
3484         the image. Otherwise, we will cause an assertion failure if the main resource of the Web Archive is
3485         not an image document.
3486
3487         * Misc/WebNSPasteboardExtras.mm:
3488         (-[NSPasteboard _web_writePromisedRTFDFromArchive:containsImage:]):
3489
3490 2018-04-26  Per Arne Vollan  <pvollan@apple.com>
3491
3492         Disable content filtering in minimal simulator mode
3493         https://bugs.webkit.org/show_bug.cgi?id=185027
3494         <rdar://problem/39736091>
3495
3496         Reviewed by Jer Noble.
3497
3498         * Configurations/FeatureDefines.xcconfig:
3499
3500 2018-04-26  Andy VanWagoner  <thetalecrafter@gmail.com>
3501
3502         [INTL] Implement Intl.PluralRules
3503         https://bugs.webkit.org/show_bug.cgi?id=184312
3504
3505         Reviewed by JF Bastien.
3506
3507         Added Intl.PluralRules feature flag.
3508
3509         * Configurations/FeatureDefines.xcconfig:
3510
3511 2018-04-25  Jiewen Tan  <jiewen_tan@apple.com>
3512
3513         Remove access to keychain from the WebContent process
3514         https://bugs.webkit.org/show_bug.cgi?id=184428
3515         <rdar://problem/13150903>
3516
3517         Reviewed by Brent Fulgham.
3518
3519         This patch does the followings:
3520         1. Added necessary support to move HTMLKeygenElement's operation from WebCore space to Client space.
3521         2. Craft new SPI signedPublicKeyAndChallengeStringForWebView to supply HTMLKeygenElement with dummy data
3522         such that DumpRenderTree tests will not modify the underlying key store (e.g., the macOS Keychain).
3523
3524         * WebCoreSupport/WebChromeClient.h:
3525         * WebCoreSupport/WebChromeClient.mm:
3526         (WebChromeClient::signedPublicKeyAndChallengeString const):
3527         * WebView/WebUIDelegatePrivate.h:
3528
3529 2018-04-24  Jer Noble  <jer.noble@apple.com>
3530
3531         Don't add system framework paths to FRAMEWORK_SEARCH_PATHS
3532         https://bugs.webkit.org/show_bug.cgi?id=184786
3533
3534         Reviewed by Tim Horton.
3535
3536         * Configurations/WebKitLegacy.xcconfig:
3537         * MigrateHeaders.make:
3538
3539 2018-04-23  Daniel Bates  <dabates@apple.com>
3540
3541         Implement Same-Site cookies
3542         https://bugs.webkit.org/show_bug.cgi?id=159464
3543         <rdar://problem/27196358>
3544
3545         Reviewed by Brent Fulgham.
3546
3547         Pass the Same-Site info through the strategy.
3548
3549         * WebCoreSupport/WebPlatformStrategies.h:
3550         * WebCoreSupport/WebPlatformStrategies.mm:
3551         (WebPlatformStrategies::cookiesForDOM):
3552         (WebPlatformStrategies::setCookiesFromDOM):
3553         (WebPlatformStrategies::cookieRequestHeaderFieldValue):
3554         (WebPlatformStrategies::getRawCookies):
3555
3556 2018-04-23  Zalan Bujtas  <zalan@apple.com>
3557
3558         [LayoutFormattingContext] Initial commit.
3559         https://bugs.webkit.org/show_bug.cgi?id=184896
3560
3561         Reviewed by Antti Koivisto.
3562
3563         * Configurations/FeatureDefines.xcconfig:
3564
3565 2018-04-23  Daniel Bates  <dabates@apple.com>
3566
3567         Implement Same-Site cookies
3568         https://bugs.webkit.org/show_bug.cgi?id=159464
3569         <rdar://problem/27196358>
3570
3571         Reviewed by Brent Fulgham.
3572
3573         Pass the Same-Site info through the strategy.
3574
3575         * WebCoreSupport/WebPlatformStrategies.h:
3576         * WebCoreSupport/WebPlatformStrategies.mm:
3577         (WebPlatformStrategies::cookiesForDOM):
3578         (WebPlatformStrategies::setCookiesFromDOM):
3579         (WebPlatformStrategies::cookieRequestHeaderFieldValue):
3580         (WebPlatformStrategies::getRawCookies):
3581
3582 2018-04-20  Timothy Hatcher  <timothy@apple.com>
3583
3584         NULL dereference crash sometimes under [super initWithCoder:] in WebView
3585
3586         https://bugs.webkit.org/show_bug.cgi?id=184851
3587         rdar://problem/39611236
3588
3589         Reviewed by Tim Horton.
3590
3591         * WebView/WebView.mm:
3592         (-[WebView _commonInitializationWithFrameName:groupName:]):
3593         (-[WebView effectiveAppearanceDidChange]):
3594         Added a null check and call the code later in initialization.
3595
3596 2018-04-20  Tim Horton  <timothy_horton@apple.com>
3597
3598         Adjust geolocation feature flag
3599         https://bugs.webkit.org/show_bug.cgi?id=184856
3600
3601         Reviewed by Wenson Hsieh.
3602
3603         * Configurations/FeatureDefines.xcconfig:
3604
3605 2018-04-18  Jer Noble  <jer.noble@apple.com>
3606
3607         Don't put build products into WK_ALTERNATE_WEBKIT_SDK_PATH for engineering builds
3608         https://bugs.webkit.org/show_bug.cgi?id=184762
3609
3610         Reviewed by Dan Bernstein.
3611
3612         * Configurations/WebKitLegacy.xcconfig:
3613
3614 2018-04-20  Youenn Fablet  <youenn@apple.com>
3615
3616         Make PluginData cache its web visible plugins
3617         https://bugs.webkit.org/show_bug.cgi?id=184421
3618
3619         Reviewed by Chris Dumez.
3620
3621         * WebCoreSupport/WebPluginInfoProvider.h:
3622         * WebCoreSupport/WebPluginInfoProvider.mm:
3623         (WebPluginInfoProvider::pluginInfo):
3624         (WebPluginInfoProvider::webVisiblePluginInfo):
3625
3626 2018-04-19  Chris Dumez  <cdumez@apple.com>
3627
3628         Rename JSDOMWindowProxy to JSWindowProxy
3629         https://bugs.webkit.org/show_bug.cgi?id=184797
3630
3631         Reviewed by Sam Weinig.
3632
3633         Rename JSDOMWindowProxy to JSWindowProxy for consistency with WindowProxy.
3634
3635         * DOM/DOMUtility.mm:
3636         (createDOMWrapper):
3637         * WebView/WebFrame.mm:
3638         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
3639
3640 2018-04-19  David Kilzer  <ddkilzer@apple.com>
3641
3642         Enable Objective-C weak references
3643         <https://webkit.org/b/184789>
3644         <rdar://problem/39571716>
3645
3646         Reviewed by Dan Bernstein.
3647
3648         * Configurations/Base.xcconfig:
3649         (CLANG_ENABLE_OBJC_WEAK): Enable.
3650
3651 2018-04-18  Chris Dumez  <cdumez@apple.com>
3652
3653         Rename WindowProxyController to WindowProxy
3654         https://bugs.webkit.org/show_bug.cgi?id=184756
3655
3656         Reviewed by Sam Weinig.
3657
3658         Rename WindowProxyController to WindowProxy for clarity. When the IDL uses WindowProxy, the implementation
3659         needed use WindowProxyController type, which was a bit confusing.
3660
3661         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3662         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
3663         * WebView/WebFrame.mm:
3664         (-[WebFrame _attachScriptDebugger]):
3665
3666 2018-04-17  Jonathan Bedard  <jbedard@apple.com>
3667
3668         Unreviewed rollout of r230632. Regression in memory usage.
3669
3670         That bug tracked in https://bugs.webkit.org/show_bug.cgi?id=184569.
3671
3672         * WebView/WebPreferences.mm:
3673         (+[WebPreferences initialize]):
3674
3675 2018-04-17  Chris Dumez  <cdumez@apple.com>
3676
3677         REGRESSION (r229831): CMD-clicking an iCloud web app link unexpectedly opens that link in a new tab and the current tab
3678         https://bugs.webkit.org/show_bug.cgi?id=184678
3679         <rdar://problem/39422122>
3680
3681         Reviewed by Alex Christensen.
3682
3683         Add new parameter to dispatchDecidePolicyForNavigationAction.
3684
3685         * WebCoreSupport/WebFrameLoaderClient.h:
3686         * WebCoreSupport/WebFrameLoaderClient.mm:
3687         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
3688
3689 2018-04-13  Chris Dumez  <cdumez@apple.com>
3690
3691         Split WindowProxy handling out of ScriptController and into a new class owned by AbstractFrame
3692         https://bugs.webkit.org/show_bug.cgi?id=184591
3693
3694         Reviewed by Sam Weinig.
3695
3696         Split WindowProxy handling out of ScriptController and into a new class owned by AbstractFrame.
3697         RemoteFrames do not need a ScriptController but do need to maintain WindowProxies.
3698         This is work towards fixing Bug 184515.
3699
3700         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3701         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
3702         * WebView/WebFrame.mm:
3703         (-[WebFrame _attachScriptDebugger]):
3704
3705 2018-04-12  Antoine Quint  <graouts@apple.com>
3706
3707         [Web Animations] Turn CSS Animations and CSS Transitions as Web Animations on by default
3708         https://bugs.webkit.org/show_bug.cgi?id=184569
3709         <rdar://problem/38671301>
3710
3711         Reviewed by Jon Lee.
3712
3713         * WebView/WebPreferences.mm:
3714
3715 2018-04-05  Yusuke Suzuki  <utatane.tea@gmail.com>
3716
3717         [WTF] Remove StaticLock
3718         https://bugs.webkit.org/show_bug.cgi?id=184332
3719
3720         Reviewed by Mark Lam.
3721
3722         * DOM/DOMInternal.mm:
3723         (getDOMWrapper):
3724         (addDOMWrapper):
3725         (removeDOMWrapper):
3726
3727 2018-04-04  Brent Fulgham  <bfulgham@apple.com>
3728
3729         Failures from mach port reference handling should be fatal
3730         https://bugs.webkit.org/show_bug.cgi?id=184202
3731         <rdar://problem/37771114>
3732
3733         Reviewed by Anders Carlsson.
3734
3735         * Plugins/Hosted/NetscapePluginHostManager.mm:
3736         (WebKit::NetscapePluginHostManager::spawnPluginHost): Adopt new 'safe mach_port_t deallocation' function.
3737
3738 2018-04-03  Andy Estes  <aestes@apple.com>
3739
3740         [Mac] Prioritize file promises over filenames during drag and drop
3741         https://bugs.webkit.org/show_bug.cgi?id=184237
3742         <rdar://problem/38278076>
3743
3744         Reviewed by Wenson Hsieh.
3745
3746         * WebView/WebView.mm:
3747         (-[WebView performDragOperation:]):
3748
3749 2018-04-03  Chris Dumez  <cdumez@apple.com>
3750
3751         Drop MainFrame class
3752         https://bugs.webkit.org/show_bug.cgi?id=184191
3753
3754         Reviewed by Darin Adler.
3755
3756         Drop MainFrame class and move contents into Page / Frame since there is a 1:1
3757         relationship between the Page and the MainFrame.
3758
3759         This is ground work for introducing LocalFrame / RemoteFrame concepts.
3760
3761         * WebCoreSupport/WebDragClient.mm:
3762         * WebCoreSupport/WebFrameLoaderClient.mm:
3763         * WebCoreSupport/WebInspectorClient.mm:
3764         * WebCoreSupport/WebPlatformStrategies.mm:
3765         * WebCoreSupport/WebPluginInfoProvider.mm:
3766         * WebView/WebFrame.mm:
3767         * WebView/WebFrameView.mm:
3768         * WebView/WebHTMLView.mm:
3769         * WebView/WebView.mm:
3770
3771 2018-04-02  Jer Noble  <jer.noble@apple.com>
3772
3773         Enable Legacy EME for all WebKit & WebKitLegacy clients
3774         https://bugs.webkit.org/show_bug.cgi?id=184018
3775         <rdar://problem/34887387>
3776
3777         Reviewed by Eric Carlson.
3778
3779         * WebView/WebPreferences.mm:
3780         (+[WebPreferences initialize]):
3781
3782 2018-03-29  JF Bastien  <jfbastien@apple.com>
3783
3784         Use Forward.h instead of forward-declaring WTF::String
3785         https://bugs.webkit.org/show_bug.cgi?id=184172
3786         <rdar://problem/39026146>
3787
3788         Reviewed by Yusuke Suzuki.
3789
3790         As part of #184164 I'm changing WTF::String, and the forward
3791         declarations are just wrong because I'm making it templated. We
3792         should use Forward.h anyways, so do that instead.
3793
3794         * WebView/WebScriptDebugger.h:
3795
3796 2018-03-28  Brent Fulgham  <bfulgham@apple.com>
3797
3798         Protect against invalid mach ports returned by mach_port_request_notification
3799         https://bugs.webkit.org/show_bug.cgi?id=184106
3800         <rdar://problem/37865316>
3801
3802         Reviewed by Chris Dumez.
3803
3804         * Plugins/Hosted/NetscapePluginHostProxy.mm:
3805         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): Check return value from 'mach_port_request_notification'
3806         and clean up if it experienced an error.
3807         (WebKit::NetscapePluginHostProxy::processRequests): Drive-by-fix: Include formatted mach error message in logging.
3808
3809 2018-03-28  Brent Fulgham  <bfulgham@apple.com>
3810
3811         Avoid uninitialized mach ports
3812         https://bugs.webkit.org/show_bug.cgi?id=184090
3813         <rdar://problem/37261129>
3814
3815         Reviewed by Chris Dumez.
3816
3817         It is possible for mach_port_allocate to return an error, but we rarely check its return value. The value
3818         of the argument passed to mach_port_allocate is not guaranteed to be valid when it returns an error, so
3819         there is a potential for us to try to use invalid ports.
3820
3821         We should always check return values, and ensure that the mach port variables we seek to initialize are
3822         kept in a valid state.
3823
3824         Reviewed by Chris Dumez.
3825
3826         * Plugins/Hosted/NetscapePluginHostManager.h:
3827         * Plugins/Hosted/NetscapePluginHostManager.mm:
3828         (WebKit::NetscapePluginHostManager::hostForPlugin): Initialize port to a valid state, ASSERT if an invalid
3829         port is passed to an API function.
3830         (WebKit::NetscapePluginHostManager::spawnPluginHost): Ditto.
3831         (WebKit::NetscapePluginHostManager::initializeVendorPort): Ditto.
3832         * Plugins/Hosted/NetscapePluginHostProxy.h:
3833         * Plugins/Hosted/NetscapePluginHostProxy.mm:
3834         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): Ditto.
3835         (WebKit::NetscapePluginHostProxy::~NetscapePluginHostProxy): Ditto.
3836         (WebKit::NetscapePluginHostProxy::processRequests): Ditto.
3837         (WKPCStatusText): Ditto.
3838         (WKPCLoadURL): Ditto.
3839         (WKPCCancelLoadURL): Ditto.
3840         (WKPCInvalidateRect): Ditto.
3841         (WKPCGetScriptableNPObjectReply): Ditto.
3842         (WKPCBooleanReply): Ditto.
3843         (WKPCBooleanAndDataReply): Ditto.
3844         (WKPCInstantiatePluginReply): Ditto.
3845         (WKPCGetWindowNPObject): Ditto.
3846         (WKPCGetPluginElementNPObject): Ditto.
3847         (WKPCForgetBrowserObject): Ditto.
3848         (WKPCEvaluate): Ditto.
3849         (WKPCGetStringIdentifier): Ditto.
3850         (WKPCGetIntIdentifier): Ditto.
3851         (WKPCInvoke): Ditto.
3852         (WKPCInvokeDefault): Ditto.
3853         (WKPCConstruct): Ditto.
3854         (WKPCGetProperty): Ditto.
3855         (WKPCSetProperty): Ditto.
3856         (WKPCRemoveProperty): Ditto.
3857         (WKPCHasProperty): Ditto.
3858         (WKPCHasMethod): Ditto.
3859         (WKPCIdentifierInfo): Ditto.
3860         (WKPCEnumerate): Ditto.
3861         (WKPCSetMenuBarVisible): Ditto.
3862         (WKPCSetFullscreenWindowIsShowing): Ditto.
3863         (WKPCSetModal): Ditto.
3864         (WKPCGetCookies): Ditto.
3865         (WKPCGetProxy): Ditto.
3866         (WKPCSetCookies): Ditto.
3867         (WKPCGetAuthenticationInfo): Ditto.
3868         (WKPCConvertPoint): Ditto.
3869         (WKPCLayerHostingModeChanged): Ditto.
3870         (WKPCSetException): Ditto.
3871
3872 2018-03-26  Tim Horton  <timothy_horton@apple.com>
3873
3874         Adopt WK_ALTERNATE_FRAMEWORKS_DIR in WebKit
3875         https://bugs.webkit.org/show_bug.cgi?id=184030
3876         <rdar://problem/38895281>
3877
3878         Reviewed by Dan Bernstein.
3879
3880         * Configurations/Base.xcconfig:
3881
3882 2018-03-26  Chris Dumez  <cdumez@apple.com>
3883
3884         Use SecurityOriginData more consistently in Service Worker code
3885         https://bugs.webkit.org/show_bug.cgi?id=183969
3886
3887         Reviewed by Darin Adler.
3888
3889         Use SecurityOrigin::data() instead of SecurityOriginData::fromSecurityOrigin().
3890
3891         * Storage/WebDatabaseManager.mm:
3892         (-[WebDatabaseManager databasesWithOrigin:]):
3893         (-[WebDatabaseManager deleteOrigin:]):
3894         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
3895         * Storage/WebDatabaseQuotaManager.mm:
3896         (-[WebDatabaseQuotaManager usage]):
3897         (-[WebDatabaseQuotaManager quota]):
3898         (-[WebDatabaseQuotaManager setQuota:]):
3899         * Storage/WebStorageManager.mm:
3900         (-[WebStorageManager deleteOrigin:]):
3901         * WebCoreSupport/WebSecurityOrigin.mm:
3902         (-[WebSecurityOrigin databaseIdentifier]):
3903         (-[WebSecurityOrigin usage]):
3904         (-[WebSecurityOrigin quota]):
3905         (-[WebSecurityOrigin setQuota:]):
3906
3907 2018-03-26  Brent Fulgham  <bfulgham@apple.com>
3908
3909         Warn against cookie access in the WebContent process using ProcessPrivilege assertions
3910         https://bugs.webkit.org/show_bug.cgi?id=183911
3911         <rdar://problem/38762306>
3912
3913         Reviewed by Youenn Fablet.
3914
3915         Initialize the ProcessPrivilege and Cookie API access levels for single-process use.
3916
3917         * WebView/WebView.mm:
3918         (+[WebView initialize]):
3919
3920 2018-03-26  Alex Christensen  <achristensen@webkit.org>
3921
3922         Merge ResourceHandleClient::willCacheResponseAsync with ResourceHandleClient::willCacheResponse
3923         https://bugs.webkit.org/show_bug.cgi?id=183965
3924
3925         Reviewed by Chris Dumez.
3926
3927         * WebCoreSupport/WebFrameLoaderClient.h:
3928         * WebCoreSupport/WebFrameLoaderClient.mm:
3929         (WebFrameLoaderClient::willCacheResponse const):
3930
3931 2018-03-25  Commit Queue  <commit-queue@webkit.org>
3932
3933         Unreviewed, rolling out r229954.
3934         https://bugs.webkit.org/show_bug.cgi?id=184000
3935
3936         Caused many layout tests to crash on Apple High Sierra,
3937         Sierra, iOS Simulator and GTK Linux Debug test bots (Requested
3938         by dydz on #webkit).
3939
3940         Reverted changeset:
3941
3942         "Use SecurityOriginData more consistently in Service Worker
3943         code"
3944         https://bugs.webkit.org/show_bug.cgi?id=183969
3945         https://trac.webkit.org/changeset/229954
3946
3947 2018-03-24  Chris Dumez  <cdumez@apple.com>
3948
3949         Use SecurityOriginData more consistently in Service Worker code
3950         https://bugs.webkit.org/show_bug.cgi?id=183969
3951
3952         Reviewed by Darin Adler.
3953
3954         Use SecurityOrigin::data() instead of SecurityOriginData::fromSecurityOrigin().
3955
3956         * Storage/WebDatabaseManager.mm:
3957         (-[WebDatabaseManager databasesWithOrigin:]):
3958         (-[WebDatabaseManager deleteOrigin:]):
3959         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
3960         * Storage/WebDatabaseQuotaManager.mm:
3961         (-[WebDatabaseQuotaManager usage]):
3962         (-[WebDatabaseQuotaManager quota]):
3963         (-[WebDatabaseQuotaManager setQuota:]):
3964         * Storage/WebStorageManager.mm:
3965         (-[WebStorageManager deleteOrigin:]):
3966         * WebCoreSupport/WebSecurityOrigin.mm:
3967         (-[WebSecurityOrigin databaseIdentifier]):
3968         (-[WebSecurityOrigin usage]):
3969         (-[WebSecurityOrigin quota]):
3970         (-[WebSecurityOrigin setQuota:]):
3971
3972 2018-03-24  Timothy Horton  <timothy_horton@apple.com>
3973
3974         Fix the build
3975
3976         * WebView/WebView.mm:
3977
3978 2018-03-23  Tim Horton  <timothy_horton@apple.com>
3979
3980         Fix the build with no pasteboard
3981         https://bugs.webkit.org/show_bug.cgi?id=183973
3982
3983         Reviewed by Dan Bernstein.
3984
3985         * Configurations/FeatureDefines.xcconfig:
3986         * WebView/WebView.mm:
3987         (-[WebView _requestStartDataInteraction:globalPosition:]):
3988         (-[WebView _getDataInteractionData]):
3989         (-[WebView _dataOperationTextIndicator]):
3990         (-[WebView _dragSourceAction]):
3991         (-[WebView _draggedLinkTitle]):
3992         (-[WebView _draggedLinkURL]):
3993         (-[WebView _draggedElementBounds]):
3994         (-[WebView _enteredDataInteraction:client:global:operation:]):
3995         (-[WebView _updatedDataInteraction:client:global:operation:]):
3996         (-[WebView _exitedDataInteraction:client:global:operation:]):
3997         (-[WebView _performDataInteraction:client:global:operation:]):
3998         (-[WebView _tryToPerformDataInteraction:client:global:operation:]):
3999         (-[WebView _endedDataInteraction:global:]):
4000         (-[WebView _dataInteractionCaretRect]):
4001         * WebView/WebViewPrivate.h:
4002
4003 2018-03-23  Tim Horton  <timothy_horton@apple.com>
4004
4005         Adopt WK_ALTERNATE_FRAMEWORKS_DIR in WebKitLegacy and update install name
4006         https://bugs.webkit.org/show_bug.cgi?id=183960
4007         <rdar://problem/38812356>
4008
4009         Reviewed by Dan Bernstein.
4010
4011         * Configurations/WebKitLegacy.xcconfig:
4012
4013 2018-03-23  Tim Horton  <timothy_horton@apple.com>
4014
4015         Introduce and adopt HAVE(AUDIO_TOOLBOX_AUDIO_SESSION)
4016         https://bugs.webkit.org/show_bug.cgi?id=183954
4017         <rdar://problem/38808858>
4018
4019         Reviewed by Dan Bernstein.
4020
4021         * WebView/WebPreferences.mm:
4022         (-[WebPreferences setAudioSessionCategoryOverride:]):
4023
4024 2018-03-23  Tim Horton  <timothy_horton@apple.com>
4025
4026         Adopt WK_PLATFORM_NAME in WebKitLegacy
4027         https://bugs.webkit.org/show_bug.cgi?id=183948
4028         <rdar://problem/38803908>
4029
4030         Reviewed by Dan Bernstein.
4031
4032         * Configurations/WebKitLegacy.xcconfig:
4033         * MigrateHeaders.make:
4034         * postprocess-headers.sh:
4035
4036 2018-03-23  Brady Eidson  <beidson@apple.com>
4037
4038         Go to back/forward list items after a process-swapped navigation.
4039         <rdar://problem/38690544> and https://bugs.webkit.org/show