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