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