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