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