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