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