b12e132afac9c4c627e1f1d6090a22706986d834
[WebKit-https.git] / Source / WebKitLegacy / mac / ChangeLog
1 2018-09-04  Wenson Hsieh  <wenson_hsieh@apple.com>
2
3         Populate "text/uri-list" with multiple URLs when the pasteboard contains multiple URLs
4         https://bugs.webkit.org/show_bug.cgi?id=188890
5         <rdar://problem/43648605>
6
7         Reviewed by Tim Horton.
8
9         Add some plumbing through pasteboard classes to support `Pasteboard::readAllStrings`. See WebCore ChangeLog for
10         more detail.
11
12         * WebCoreSupport/WebPlatformStrategies.h:
13         * WebCoreSupport/WebPlatformStrategies.mm:
14         (WebPlatformStrategies::allStringsForType):
15
16 2018-09-01  Darin Adler  <darin@apple.com>
17
18         [CFNetwork] Update CFNetwork SPI use to use CFNetworkSPI.h more consistently
19         https://bugs.webkit.org/show_bug.cgi?id=189072
20         Reviewed by Dan Bernstein.
21
22         * Misc/WebDownload.mm: Removed forward declaration of NSURLConnectionDelegateProxy
23         and declarations for NSURLDownload init methods.
24
25         * Misc/WebDownloadInternal.h: Removed.
26
27         * WebCoreSupport/WebFrameLoaderClient.mm: Removed include of WebDownloadInternal.h.
28         (WebFrameLoaderClient::convertMainResourceLoadToDownload): Ignore
29         "-Wdeprecated-declarations" because the method used here is deprecated.
30
31         * WebView/WebView.mm:
32         (-[WebView _downloadURL:]): Ignore "-Wdeprecated-declarations" because the method
33         used here is deprecated.
34
35 2018-08-31  Chris Dumez  <cdumez@apple.com>
36
37         Assertion hit in ~CompletionHandler() from ~WebFrame()
38         https://bugs.webkit.org/show_bug.cgi?id=189199
39         <rdar://problem/42657233>
40
41         Reviewed by Youenn Fablet.
42
43         * WebCoreSupport/WebFrameLoaderClient.h:
44         * WebCoreSupport/WebFrameLoaderClient.mm:
45         (WebFrameLoaderClient::dispatchWillSubmitForm):
46
47 2018-08-31  Antti Koivisto  <antti@apple.com>
48
49         Replace OptionSet |= and -= operators with add() and remove() functions
50         https://bugs.webkit.org/show_bug.cgi?id=189169
51
52         Reviewed by Anders Carlsson.
53
54         * WebView/WebFrame.mm:
55         (-[WebFrame _drawRect:contentsOnly:]):
56         * WebView/WebView.mm:
57         (coreOptions):
58
59 2018-08-31  Frederic Wang  <fwang@igalia.com>
60
61         Bug 182053 - [CSSOM View] Implement standard behavior for scrollingElement
62         https://bugs.webkit.org/show_bug.cgi?id=182053
63
64         Reviewed by Simon Fraser.
65
66         Add developer flag to use standard behavior for scrolling* attributes.
67
68         * WebView/WebPreferenceKeysPrivate.h:
69         * WebView/WebPreferences.mm:
70         (+[WebPreferences initialize]):
71         (-[WebPreferences CSSOMViewScrollingAPIEnabled]):
72         (-[WebPreferences setCSSOMViewScrollingAPIEnabled:]):
73         * WebView/WebPreferencesPrivate.h:
74         * WebView/WebView.mm:
75         (-[WebView _preferencesChanged:]):
76
77 2018-08-29  Olivia Barnett  <obarnett@apple.com>
78
79         Implement the Web Share API
80         https://bugs.webkit.org/show_bug.cgi?id=171100
81         <rdar://problem/31751734>
82
83         Reviewed by Tim Horton.
84
85         * WebCoreSupport/WebChromeClient.h:
86         * WebCoreSupport/WebChromeClient.mm:
87         (WebChromeClient::showShareSheet):
88         Empty declaration of showShareSheet.
89
90 2018-08-29  Youenn Fablet  <youenn@apple.com>
91
92         Remove WebRTC legacy API implementation
93         https://bugs.webkit.org/show_bug.cgi?id=189040
94
95         Reviewed by Eric Carlson.
96
97         * WebView/WebPreferenceKeysPrivate.h:
98         * WebView/WebPreferences.mm:
99         (+[WebPreferences initialize]):
100         (-[WebPreferences webRTCLegacyAPIEnabled]): Deleted.
101         (-[WebPreferences setWebRTCLegacyAPIEnabled:]): Deleted.
102         * WebView/WebPreferencesPrivate.h:
103         * WebView/WebView.mm:
104         (-[WebView _preferencesChanged:]):
105
106 2018-08-28  Wenson Hsieh  <wenson_hsieh@apple.com>
107
108         Work towards: [iOS] Consolidate the implementations of readString, stringForType, and readURL in PlatformPasteboardIOS.mm
109         https://bugs.webkit.org/show_bug.cgi?id=189054
110
111         Reviewed by Andy Estes.
112
113         Remove the pasteboard type argument from readURLFromPasteboard.
114
115         * WebCoreSupport/WebPlatformStrategies.h:
116         * WebCoreSupport/WebPlatformStrategies.mm:
117         (WebPlatformStrategies::readURLFromPasteboard):
118
119 2018-08-27  Keith Rollin  <krollin@apple.com>
120
121         Unreviewed build fix -- disable LTO for production builds
122
123         * Configurations/Base.xcconfig:
124
125 2018-08-27  Aditya Keerthi  <akeerthi@apple.com>
126
127         Consolidate ENABLE_INPUT_TYPE_COLOR and ENABLE_INPUT_TYPE_COLOR_POPOVER
128         https://bugs.webkit.org/show_bug.cgi?id=188931
129
130         Reviewed by Wenson Hsieh.
131
132         * Configurations/FeatureDefines.xcconfig: Removed ENABLE_INPUT_TYPE_COLOR_POPOVER.
133
134 2018-08-27  Keith Rollin  <krollin@apple.com>
135
136         Build system support for LTO
137         https://bugs.webkit.org/show_bug.cgi?id=187785
138         <rdar://problem/42353132>
139
140         Reviewed by Dan Bernstein.
141
142         Update Base.xcconfig and DebugRelease.xcconfig to optionally enable
143         LTO.
144
145         * Configurations/Base.xcconfig:
146         * Configurations/DebugRelease.xcconfig:
147
148 2018-08-24  Ryosuke Niwa  <rniwa@webkit.org>
149
150         Pass in IsComposed flag to Event constructors
151         https://bugs.webkit.org/show_bug.cgi?id=188720
152         <rdar://problem/43580387>
153
154         Reviewed by Simon Fraser.
155
156         * WebView/WebPDFView.mm:
157         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): A trusted click event is composed regardless of
158         whether it's simulated or not.
159
160 2018-08-23  Mark Lam  <mark.lam@apple.com>
161
162         Move vmEntryGlobalObject() to VM from CallFrame.
163         https://bugs.webkit.org/show_bug.cgi?id=188900
164         <rdar://problem/43655753>
165
166         Reviewed by Michael Saboff.
167
168         * WebView/WebScriptDebugger.mm:
169         (WebScriptDebugger::sourceParsed):
170
171 2018-08-23  Andy Estes  <aestes@apple.com>
172
173         [Apple Pay] Introduce Apple Pay JS v4 on iOS 12 and macOS Mojave
174         https://bugs.webkit.org/show_bug.cgi?id=188829
175
176         Reviewed by Tim Horton.
177
178         * Configurations/FeatureDefines.xcconfig:
179
180 2018-08-21  Ryosuke Niwa  <rniwa@webkit.org>
181
182         Replace booleans for modifier keys in UIEventWithKeyState with OptionSet<Modifier>
183         https://bugs.webkit.org/show_bug.cgi?id=188777
184
185         Reviewed by Simon Fraser.
186
187         Create MouseEvent::create with IsSimulated set to Yes; correspoding to the last argument
188         being "true" before the code change.
189
190         Use modifiersForEvent to convert [nsEvent modifierFlags] to OptionSet<Modifier>.
191
192         * WebView/WebPDFView.mm:
193         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
194
195 2018-08-21  Daniel Bates  <dabates@apple.com>
196
197         Replace TextCheckingTypeMask with OptionSet
198         https://bugs.webkit.org/show_bug.cgi?id=188678
199
200         Reviewed by Antti Koivisto.
201
202         Currently we have code in WebEditorClient::checkTextOfParagraph() that incorrectly assumes
203         that the enumerators of TextCheckingType have a one-to-one correspondence with NSTextCheckingType.
204         (This is not the case because there is not corresponding NSTextCheckingType for TextCheckingTypeShowCorrectionPanel).
205         We now explicitly convert from OptionSet<TextCheckingType> to NSTextCheckingTypes.
206
207         * WebCoreSupport/WebEditorClient.h:
208         * WebCoreSupport/WebEditorClient.mm:
209         (WebEditorClient::checkTextOfParagraph):
210         (WebEditorClient::shouldEraseMarkersAfterChangeSelection const):
211         (core): Fix up code style nits; compare resultType on the right-hand side instead of the
212         left as this is more readable and unncessary now that modern compilers like Clang have
213         diagnostics to catch accidental assignments when equality was intended.
214         (WebEditorClient::didCheckSucceed):
215         * WebView/WebView.mm:
216         (coreTextCheckingType):
217         (textCheckingResultFromNSTextCheckingResult):
218
219 2018-08-21  Daniel Bates  <dabates@apple.com>
220
221         [iOS][WK1] Support toggling continuous spell checking from tests
222         https://bugs.webkit.org/show_bug.cgi?id=188763
223
224         Reviewed by Simon Fraser.
225
226         Move some more code out from under a !PLATFORM(IOS)-guard so as to support toggling continuous
227         spell checking from tests in iOS WebKit Legacy.
228
229         * WebCoreSupport/WebEditorClient.h:
230         (WebEditorClient::toggleContinuousSpellChecking): Deleted.
231         * WebCoreSupport/WebEditorClient.mm:
232         * WebView/WebView.h:
233         * WebView/WebView.mm:
234         (-[WebView toggleContinuousSpellChecking:]):
235         (-[WebView toggleSmartInsertDelete:]):
236
237 2018-08-17  Alex Christensen  <achristensen@webkit.org>
238
239         Add some plumbing for safe browsing
240         https://bugs.webkit.org/show_bug.cgi?id=188709
241
242         Reviewed by Tim Horton.
243
244         * WebCoreSupport/WebFrameLoaderClient.h:
245         * WebCoreSupport/WebFrameLoaderClient.mm:
246         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
247
248 2018-08-16  Ryosuke Niwa  <rniwa@webkit.org>
249
250         Replace canBubble and cancelable booleans in Event by enum classes
251         https://bugs.webkit.org/show_bug.cgi?id=188692
252
253         Reviewed by Alex Christensen.
254
255         * WebView/WebPDFView.mm:
256         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
257         * WebView/WebView.mm:
258         (-[WebView _dispatchUnloadEvent]):
259
260 2018-08-16  Jer Noble  <jer.noble@apple.com>
261
262         Add Experimental Feature support for SourceBuffer.changeType()
263         https://bugs.webkit.org/show_bug.cgi?id=188626
264         <rdar://problem/43356021>
265
266         Reviewed by Eric Carlson.
267
268         Add a new WebPreference property mapping to the WebCore SourceBufferChangeTypeEnabled setting.
269
270         * WebView/WebPreferenceKeysPrivate.h:
271         * WebView/WebPreferences.mm:
272         (+[WebPreferences initialize]):
273         (-[WebPreferences sourceBufferChangeTypeEnabled]):
274         (-[WebPreferences setSourceBufferChangeTypeEnabled:]):
275         * WebView/WebPreferencesPrivate.h:
276         * WebView/WebView.mm:
277         (-[WebView _preferencesChanged:]):
278
279 2018-08-16  Aditya Keerthi  <akeerthi@apple.com>
280
281         Support drag-and-drop for input[type=color]
282         https://bugs.webkit.org/show_bug.cgi?id=188464
283
284         Reviewed by Wenson Hsieh.
285
286         * WebCoreSupport/WebPlatformStrategies.h:
287         * WebCoreSupport/WebPlatformStrategies.mm:
288         (WebPlatformStrategies::setColor):
289
290 2018-08-15  Tim Horton  <timothy_horton@apple.com>
291
292         Crashes in Quip under _dictionaryPopupInfoForRange, in setObject:forKey:
293         https://bugs.webkit.org/show_bug.cgi?id=188569
294         <rdar://problem/34201095>
295
296         Reviewed by Megan Gardner.
297
298         * WebView/WebImmediateActionController.mm:
299         (+[WebImmediateActionController _dictionaryPopupInfoForRange:inFrame:withLookupOptions:indicatorOptions:transition:]):
300         Speculative fix; the crashes indicate font is null, but we just checked it,
301         so it must be getting made null by convertFont:toSize:. Check again!
302
303 2018-08-13  Alex Christensen  <achristensen@webkit.org>
304
305         Use a 1-byte enum class for TextDirection
306         https://bugs.webkit.org/show_bug.cgi?id=188350
307
308         Reviewed by Simon Fraser.
309
310         * WebCoreSupport/PopupMenuMac.mm:
311         (PopupMenuMac::populate):
312         (PopupMenuMac::show):
313         * WebCoreSupport/WebFrameLoaderClient.mm:
314         (WebFrameLoaderClient::transitionToCommittedForNewPage):
315         * WebView/WebFrame.mm:
316         (-[WebFrame _dispatchDidReceiveTitle:]):
317
318 2018-08-09  Ali Juma  <ajuma@chromium.org>
319
320         Import WPTs for IntersectionObserver
321         https://bugs.webkit.org/show_bug.cgi?id=188416
322
323         Reviewed by Simon Fraser.
324
325         * WebView/WebPreferencesPrivate.h:
326
327 2018-08-08  Jonathan Bedard  <jbedard@apple.com>
328
329         Follow-up build fix for r234685
330         https://bugs.webkit.org/show_bug.cgi?id=188245
331
332         Unreviewed build fix.
333
334         * WebCoreSupport/WebSecurityOriginPrivate.h:
335
336 2018-08-05  Darin Adler  <darin@apple.com>
337
338         [Cocoa] More tweaks and refactoring to prepare for ARC
339         https://bugs.webkit.org/show_bug.cgi?id=188245
340
341         Reviewed by Dan Bernstein.
342
343         * Carbon/CarbonUtils.m: Updated include for rename: FoundationSPI.h -> objcSPI.h.
344
345         * Carbon/CarbonWindowFrame.m:
346         (-[CarbonWindowFrame dealloc]): Deleted. It was empty.
347
348         * DOM/DOM.mm:
349         (-[DOMElement _imageTIFFRepresentation]): Use a bridging cast.
350         (-[DOMNodeFilter finalize]): Deleted. WebKit no longer supports Objective-C
351         garbage collection so this method isn't useful.
352
353         * DOM/DOMXPath.mm:
354         (-[DOMNativeXPathNSResolver finalize]): Deleted. WebKit no longer supports
355         Objective-C garbage collection so this method isn't useful.
356
357         * History/WebHistory.mm:
358         (-[WebHistoryPrivate data]): Allocate an NSData instead of casting from a CFData.
359
360         * Misc/WebElementDictionary.mm:
361         (addLookupKey): Use a bridging cast.
362         (cacheValueForKey): Ditto.
363         (-[WebElementDictionary _fillCache]): Ditto.
364         (-[WebElementDictionary objectForKey:]): Ditto.
365
366         * Misc/WebKitNSStringExtras.mm:
367         (-[NSString _web_drawAtPoint:font:textColor:]): Use a bridging cast.
368         (-[NSString _web_widthWithFont:]): Ditto.
369         (-[NSString _webkit_stringByTrimmingWhitespace]): Ditto.
370
371         * Misc/WebLocalizableStrings.mm:
372         (WebLocalizedString): Use a bridging cast.
373
374         * Misc/WebNSDataExtras.mm:
375         (-[NSString _web_capitalizeRFC822HeaderFieldName]): Use a bridging cast
376         and use CFBridgingRelease instead of calling autorelease directly.
377         (-[NSData _webkit_parseRFC822HeaderFields]): Use NSString methods instead
378         of a mix of CFString and NSString. Also simplified logic a bit, and cut down
379         on the amount of explicit release and autorelease.
380
381         * Misc/WebNSDictionaryExtras.h: Deleted unused methods.
382         * Misc/WebNSDictionaryExtras.m:
383         (-[NSDictionary _webkit_intForKey:]): Deleted.
384         (-[NSMutableDictionary _webkit_setInt:forKey:]): Deleted.
385         (-[NSMutableDictionary _webkit_setFloat:forKey:]): Deleted.
386         (-[NSMutableDictionary _webkit_setBool:forKey:]): Deleted.
387         (-[NSMutableDictionary _webkit_setLongLong:forKey:]): Deleted.
388         (-[NSMutableDictionary _webkit_setUnsignedLongLong:forKey:]): Deleted.
389         (-[NSMutableDictionary _webkit_setUnsignedInt:forKey:]): Deleted.
390
391         * Misc/WebStringTruncator.mm:
392         (fontFromNSFont): Use a bridging cast.
393
394         * Plugins/Hosted/NetscapePluginHostManager.mm:
395         (WebKit::preferredBundleLocalizationName): Use a bridging cast and CFBridgingRelease.
396
397         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
398         (WebKit::NetscapePluginInstanceProxy::cleanup): Use a bridging cast.
399         (WebKit::NetscapePluginInstanceProxy::status): Ditto.
400         (WebKit::NetscapePluginInstanceProxy::loadURL): Ditto.
401         (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray): Ditto.
402         * Plugins/Hosted/ProxyInstance.mm:
403         (WebKit::ProxyInstance::getPropertyNames): Ditto.
404         * Plugins/WebBasePluginPackage.mm:
405         (-[WebBasePluginPackage _objectForInfoDictionaryKey:]): Ditto.
406         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
407         (WebNetscapePluginEventHandlerCocoa::platformWindow): Ditto.
408         * Plugins/WebNetscapePluginPackage.mm:
409         (-[WebNetscapePluginPackage _initWithPath:]): Ditto.
410
411         * Plugins/WebNetscapePluginView.mm:
412         (-[WebNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]):
413         Use bridging casts and use RetainPtr insteead of an explicit CFRelease.
414         (-[WebNetscapePluginView status:]): Use a bridging cast.
415         (-[WebNetscapePluginView popUpContextMenu:]): Ditto.
416
417         * Plugins/WebPluginController.mm:
418         (-[WebPluginController _cancelOutstandingChecks]): Use a bridging cast.
419
420         * Plugins/WebPluginDatabase.mm:
421         (checkCandidate): Use explicit __strong for out argument types.
422
423         * Plugins/npapi.mm:
424         (pluginViewForInstance): Use a bridging cast.
425
426         * Storage/WebDatabaseManager.mm:
427         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Use modern boxing instead of
428         explicit NSNumber and NSDictionary calls.
429
430         * WebCoreSupport/WebContextMenuClient.mm:
431         (WebContextMenuClient::speak): Remove an unnecessary copy/autorelease pair.
432
433         * WebCoreSupport/WebEditorClient.mm:
434         (WebEditorClient::handleKeyboardEvent): Added a missing typecast.
435         (WebEditorClient::handleInputMethodKeydown): Ditto.
436
437         * WebCoreSupport/WebFrameNetworkingContext.mm:
438         (WebFrameNetworkingContext::sourceApplicationAuditData const): Use a bridging cast.
439
440         * WebCoreSupport/WebSecurityOriginPrivate.h: Forward declare WebSecurityOriginPrivate
441         as a struct rather than an Objective-C class, since that's how it's defined.
442
443         * WebInspector/WebNodeHighlighter.mm: Added missing includes.
444
445         * WebView/WebFullScreenController.mm:
446         (-[WebFullScreenController enterFullScreen:]): Use a bridging cast.
447         * WebView/WebHTMLView.mm:
448         (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
449         Ditto.
450         (-[WebHTMLView pasteboard:provideDataForType:]): Ditto.
451
452         * WebView/WebImmediateActionController.mm:
453         (-[WebImmediateActionController performHitTestAtPoint:]): Removed redundant code to
454         go down to the document and then back to the frame.
455         (-[WebImmediateActionController immediateActionRecognizerDidUpdateAnimation:]): Ditto.
456         (-[WebImmediateActionController immediateActionRecognizerDidCancelAnimation:]): Ditto.
457         (-[WebImmediateActionController immediateActionRecognizerDidCompleteAnimation:]): Ditto.
458
459         * WebView/WebJSPDFDoc.mm:
460         (jsPDFDocInitialize): Removed some unneeded type casting.
461         (jsPDFDocFinalize): Ditto.
462         (jsPDFDocPrint): Use a bridging cast.
463
464         * WebView/WebPDFView.mm:
465         (_applicationInfoForMIMEType): Use bridging casts.
466
467         * WebView/WebPreferences.mm:
468         (-[WebPreferences _setIntegerValue:forKey:]): Use boxing and setObject directly
469         instead of methods from WebNSDictionaryExtras.
470         (-[WebPreferences _setUnsignedIntValue:forKey:]): Ditto.
471         (-[WebPreferences _setFloatValue:forKey:]): Ditto.
472         (-[WebPreferences _setBoolValue:forKey:]): Ditto.
473         (-[WebPreferences _setLongLongValue:forKey:]): Ditto.
474         (-[WebPreferences _setUnsignedLongLongValue:forKey:]): Ditto.
475
476         * WebView/WebView.mm:
477         (-[WebView _removeFromAllWebViewsSet]): Use bridging cast.
478         (-[WebView _addToAllWebViewsSet]): Ditto.
479         (+[WebView closeAllWebViews]): Use a modern for loop instead of NSEnumerator.
480         (-[WebView _windowVisibilityChanged:]): Moved this into the internal category
481         so it can be called from WebViewData methods.
482
483         * WebView/WebViewData.mm: Added an import so we can call an internal WebView
484         method, _windowVisibilityChanged:.
485
486         * WebView/WebViewInternal.h: Declared _windowVisibilityChanged: so it can be
487         called from WebViewData methods.
488
489 2018-08-06  Alex Christensen  <achristensen@webkit.org>
490
491         Use enum classes and OptionSets for PaintPhase and PaintBehavior
492         https://bugs.webkit.org/show_bug.cgi?id=188323
493
494         Reviewed by Simon Fraser.
495
496         * WebCoreSupport/WebContextMenuClient.mm:
497         (WebContextMenuClient::imageForCurrentSharingServicePickerItem):
498         * WebView/WebFrame.mm:
499         (-[WebFrame _paintBehaviorForDestinationContext:]):
500         (-[WebFrame _drawRect:contentsOnly:]):
501         * WebView/WebHTMLView.mm:
502         (imageFromRect):
503         (selectionImage):
504
505 2018-08-05  Yusuke Suzuki  <utatane.tea@gmail.com>
506
507         Add support for microtasks in workers
508         https://bugs.webkit.org/show_bug.cgi?id=188246
509
510         Reviewed by Darin Adler.
511
512         Rename JSMainThreadExecState.h to JSExecState.h.
513
514         * DOM/DOMAttr.mm:
515         * DOM/DOMBlob.mm:
516         * DOM/DOMCDATASection.mm:
517         * DOM/DOMCSSCharsetRule.mm:
518         * DOM/DOMCSSFontFaceRule.mm:
519         * DOM/DOMCSSImportRule.mm:
520         * DOM/DOMCSSMediaRule.mm:
521         * DOM/DOMCSSPageRule.mm:
522         * DOM/DOMCSSPrimitiveValue.mm:
523         * DOM/DOMCSSRule.mm:
524         * DOM/DOMCSSRuleList.mm:
525         * DOM/DOMCSSStyleDeclaration.mm:
526         * DOM/DOMCSSStyleRule.mm:
527         * DOM/DOMCSSStyleSheet.mm:
528         * DOM/DOMCSSUnknownRule.mm:
529         * DOM/DOMCSSValue.mm:
530         * DOM/DOMCSSValueList.mm:
531         * DOM/DOMCharacterData.mm:
532         * DOM/DOMComment.mm:
533         * DOM/DOMCounter.mm:
534         * DOM/DOMDocument.mm:
535         * DOM/DOMDocumentFragment.mm:
536         * DOM/DOMDocumentType.mm:
537         * DOM/DOMElement.mm:
538         * DOM/DOMEvent.mm:
539         * DOM/DOMFile.mm:
540         * DOM/DOMFileList.mm:
541         * DOM/DOMHTML.mm:
542         * DOM/DOMHTMLAnchorElement.mm:
543         * DOM/DOMHTMLAppletElement.mm:
544         * DOM/DOMHTMLAreaElement.mm:
545         * DOM/DOMHTMLBRElement.mm:
546         * DOM/DOMHTMLBaseElement.mm:
547         * DOM/DOMHTMLBaseFontElement.mm:
548         * DOM/DOMHTMLBodyElement.mm:
549         * DOM/DOMHTMLButtonElement.mm:
550         * DOM/DOMHTMLCanvasElement.mm:
551         * DOM/DOMHTMLCollection.mm:
552         * DOM/DOMHTMLDListElement.mm:
553         * DOM/DOMHTMLDirectoryElement.mm:
554         * DOM/DOMHTMLDivElement.mm:
555         * DOM/DOMHTMLDocument.mm:
556         * DOM/DOMHTMLElement.mm:
557         * DOM/DOMHTMLEmbedElement.mm:
558         * DOM/DOMHTMLFieldSetElement.mm:
559         * DOM/DOMHTMLFontElement.mm:
560         * DOM/DOMHTMLFormElement.mm:
561         * DOM/DOMHTMLFrameElement.mm:
562         * DOM/DOMHTMLFrameSetElement.mm:
563         * DOM/DOMHTMLHRElement.mm:
564         * DOM/DOMHTMLHeadElement.mm:
565         * DOM/DOMHTMLHeadingElement.mm:
566         * DOM/DOMHTMLHtmlElement.mm:
567         * DOM/DOMHTMLIFrameElement.mm:
568         * DOM/DOMHTMLImageElement.mm:
569         * DOM/DOMHTMLInputElement.mm:
570         * DOM/DOMHTMLLIElement.mm:
571         * DOM/DOMHTMLLabelElement.mm:
572         * DOM/DOMHTMLLegendElement.mm:
573         * DOM/DOMHTMLLinkElement.mm:
574         * DOM/DOMHTMLMapElement.mm:
575         * DOM/DOMHTMLMarqueeElement.mm:
576         * DOM/DOMHTMLMediaElement.mm:
577         * DOM/DOMHTMLMenuElement.mm:
578         * DOM/DOMHTMLMetaElement.mm:
579         * DOM/DOMHTMLModElement.mm:
580         * DOM/DOMHTMLOListElement.mm:
581         * DOM/DOMHTMLObjectElement.mm:
582         * DOM/DOMHTMLOptGroupElement.mm:
583         * DOM/DOMHTMLOptionElement.mm:
584         * DOM/DOMHTMLOptionsCollection.mm:
585         * DOM/DOMHTMLParagraphElement.mm:
586         * DOM/DOMHTMLParamElement.mm:
587         * DOM/DOMHTMLPreElement.mm:
588         * DOM/DOMHTMLQuoteElement.mm:
589         * DOM/DOMHTMLScriptElement.mm:
590         * DOM/DOMHTMLSelectElement.mm:
591         * DOM/DOMHTMLStyleElement.mm:
592         * DOM/DOMHTMLTableCaptionElement.mm:
593         * DOM/DOMHTMLTableCellElement.mm:
594         * DOM/DOMHTMLTableColElement.mm:
595         * DOM/DOMHTMLTableElement.mm:
596         * DOM/DOMHTMLTableRowElement.mm:
597         * DOM/DOMHTMLTableSectionElement.mm:
598         * DOM/DOMHTMLTextAreaElement.mm:
599         * DOM/DOMHTMLTitleElement.mm:
600         * DOM/DOMHTMLUListElement.mm:
601         * DOM/DOMHTMLVideoElement.mm:
602         * DOM/DOMImplementation.mm:
603         * DOM/DOMKeyboardEvent.mm:
604         * DOM/DOMMediaError.mm:
605         * DOM/DOMMediaList.mm:
606         * DOM/DOMMouseEvent.mm:
607         * DOM/DOMMutationEvent.mm:
608         * DOM/DOMNamedNodeMap.mm:
609         * DOM/DOMNode.mm:
610         * DOM/DOMNodeIterator.mm:
611         * DOM/DOMNodeList.mm:
612         * DOM/DOMOverflowEvent.mm:
613         * DOM/DOMProcessingInstruction.mm:
614         * DOM/DOMProgressEvent.mm:
615         * DOM/DOMRGBColor.mm:
616         * DOM/DOMRange.mm:
617         * DOM/DOMRect.mm:
618         * DOM/DOMStyleSheet.mm:
619         * DOM/DOMStyleSheetList.mm:
620         * DOM/DOMText.mm:
621         * DOM/DOMTextEvent.mm:
622         * DOM/DOMTimeRanges.mm:
623         * DOM/DOMTokenList.mm:
624         * DOM/DOMTreeWalker.mm:
625         * DOM/DOMUIEvent.mm:
626         * DOM/DOMWheelEvent.mm:
627         * DOM/DOMXPathExpression.mm:
628         * DOM/DOMXPathResult.mm:
629         * DOM/ObjCEventListener.mm:
630
631 2018-08-03  Alex Christensen  <achristensen@webkit.org>
632
633         Fix spelling of "overridden"
634         https://bugs.webkit.org/show_bug.cgi?id=188315
635
636         Reviewed by Darin Adler.
637
638         * Misc/WebKitVersionChecks.mm:
639         (setWebKitLinkTimeVersion):
640         (WebKitLinkTimeVersion):
641         * Plugins/WebBaseNetscapePluginView.mm:
642         (-[WebBaseNetscapePluginView handleMouseMoved:]):
643         * WebCoreSupport/PopupMenuMac.mm:
644         (PopupMenuMac::populate):
645
646 2018-08-01  Nan Wang  <n_wang@apple.com>
647
648         AX: AOM: Add ARIA IDL Attribute Reflection
649         https://bugs.webkit.org/show_bug.cgi?id=184676
650         <rdar://problem/39476882>
651
652         Reviewed by Chris Fleizach.
653
654         * WebView/WebPreferenceKeysPrivate.h:
655         * WebView/WebPreferences.mm:
656         (+[WebPreferences initialize]):
657         (-[WebPreferences ariaReflectionEnabled]):
658         (-[WebPreferences setAriaReflectionEnabled:]):
659         * WebView/WebPreferencesPrivate.h:
660         * WebView/WebView.mm:
661         (-[WebView _preferencesChanged:]):
662
663 2018-07-30  Simon Fraser  <simon.fraser@apple.com>
664
665         Shrink GraphicsLayerCA
666         https://bugs.webkit.org/show_bug.cgi?id=188141
667
668         Reviewed by Zalan Bujtas.
669
670         Shrink GraphicsLayerCA from 1040 to 880 bytes by:
671         * moving all the clone-related stuff into the lazily-allocated m_layerClones
672         * moving all the animation-related stuff into the lazily-allocated m_animations
673         * making enums be 8-bit
674         * re-ordering data members
675
676         * WebView/WebView.mm:
677         (-[WebView _setMediaLayer:forPluginView:]):
678
679 2018-07-30  Rob Buis  <rbuis@igalia.com>
680
681         Merge PlatformCookieJar functions into NetworkStorageSession
682         https://bugs.webkit.org/show_bug.cgi?id=188137
683
684         Adapt callsites to use NetworkStorageSession instead of CookieJar functions.
685
686         Reviewed by Alex Christensen.
687
688         * WebCoreSupport/WebPlatformStrategies.mm:
689         (WebPlatformStrategies::cookiesForDOM):
690         (WebPlatformStrategies::setCookiesFromDOM):
691         (WebPlatformStrategies::cookiesEnabled):
692         (WebPlatformStrategies::cookieRequestHeaderFieldValue):
693         (WebPlatformStrategies::getRawCookies):
694         (WebPlatformStrategies::deleteCookie):
695         * WebView/WebPreferences.mm:
696         (+[WebPreferences _clearNetworkLoaderSession]):
697
698 2018-07-28  Darin Adler  <darin@apple.com>
699
700         [Cocoa] Update more WebCore Objective-C code to be ARC compatible
701         https://bugs.webkit.org/show_bug.cgi?id=188140
702
703         Reviewed by Sam Weinig.
704
705         * WebView/WebImmediateActionController.mm:
706         (-[WebImmediateActionController _animationControllerForText]): Updated to use the
707         new DictionaryLookup function that returns a tuple instead of using an out argument.
708
709 2018-07-26  Andy VanWagoner  <andy@vanwagoner.family>
710
711         [INTL] Remove INTL sub-feature compile flags
712         https://bugs.webkit.org/show_bug.cgi?id=188081
713
714         Reviewed by Michael Catanzaro.
715
716         * Configurations/FeatureDefines.xcconfig:
717
718 2018-07-26  Commit Queue  <commit-queue@webkit.org>
719
720         Unreviewed, rolling out r234181 and r234189.
721         https://bugs.webkit.org/show_bug.cgi?id=188075
722
723         These are not needed right now (Requested by thorton on
724         #webkit).
725
726         Reverted changesets:
727
728         "Enable Web Content Filtering on watchOS"
729         https://bugs.webkit.org/show_bug.cgi?id=187979
730         https://trac.webkit.org/changeset/234181
731
732         "HAVE(PARENTAL_CONTROLS) should be true on watchOS"
733         https://bugs.webkit.org/show_bug.cgi?id=187985
734         https://trac.webkit.org/changeset/234189
735
736 2018-07-26  Timothy Hatcher  <timothy@apple.com>
737
738         Use the Page's appearance when converting pasteboard attributed strings.
739         https://bugs.webkit.org/show_bug.cgi?id=188067
740         rdar://problem/42632246
741
742         Reviewed by Wenson Hsieh.
743
744         * WebCoreSupport/WebEditorClient.mm:
745         (_WebCreateFragment): Create a LocalDefaultSystemAppearance based on the Page.
746
747 2018-07-25  Chris Dumez  <cdumez@apple.com>
748
749         navigator.userAgent may return outdated value after webView.customUserAgent is set
750         https://bugs.webkit.org/show_bug.cgi?id=188009
751         <rdar://problem/42566456>
752
753         Reviewed by Alex Christensen.
754
755         Let the page know when the user agent changes.
756
757         * WebView/WebView.mm:
758         (-[WebView _preferencesChanged:]):
759         (-[WebView setApplicationNameForUserAgent:]):
760         (-[WebView _invalidateUserAgentCache]):
761         (-[WebView setCustomUserAgent:]):
762         * WebView/WebViewInternal.h:
763
764 2018-07-24  Tim Horton  <timothy_horton@apple.com>
765
766         Enable Web Content Filtering on watchOS
767         https://bugs.webkit.org/show_bug.cgi?id=187979
768         <rdar://problem/42559346>
769
770         Reviewed by Wenson Hsieh.
771
772         * Configurations/FeatureDefines.xcconfig:
773
774 2018-07-20  Ryosuke Niwa  <rniwa@apple.com>
775
776         Picking a color from the color panel for typing attributes needs to inverse transform through color-filter
777         https://bugs.webkit.org/show_bug.cgi?id=187846
778
779         Reviewed by Simon Fraser.
780
781         Invert the filtered font and background colors when using font panels, font pasteboard, and other Objective-C APIs.
782
783         * WebView/WebHTMLView.mm:
784         (-[WebHTMLView _applyStyleToSelection:withUndoAction:]): Share code with _applyEditingStyleToSelection.
785         (-[WebHTMLView _applyEditingStyleToSelection:withUndoAction:]):
786
787 2018-07-11  Dean Jackson  <dino@apple.com>
788
789         Allow removal of white backgrounds
790         https://bugs.webkit.org/show_bug.cgi?id=187574
791         <rdar://problem/41146792>
792
793         Reviewed by Simon Fraser.
794
795         Add a new WebPreference for punching out white backgrounds.
796
797         * WebView/WebPreferenceKeysPrivate.h:
798         * WebView/WebPreferences.mm:
799         (+[WebPreferences initialize]):
800         (-[WebPreferences punchOutWhiteBackgroundsInDarkMode]):
801         (-[WebPreferences setPunchOutWhiteBackgroundsInDarkMode:]):
802         * WebView/WebPreferencesPrivate.h:
803         * WebView/WebView.mm:
804         (-[WebView _preferencesChanged:]):
805
806 2018-07-14  Kocsen Chung  <kocsen_chung@apple.com>
807
808         Ensure WebKit stack is ad-hoc signed
809         https://bugs.webkit.org/show_bug.cgi?id=187667
810
811         Reviewed by Alexey Proskuryakov.
812
813         * Configurations/Base.xcconfig:
814
815 2018-07-11  Aditya Keerthi  <akeerthi@apple.com>
816
817         REGRESSION (231276): Attempting to copy an image fails
818         https://bugs.webkit.org/show_bug.cgi?id=187212
819         <rdar://problem/41540074>
820
821         Reviewed by Ryosuke Niwa.
822
823         Renamed methods to make it clear that one URL and one title are being passed in.
824
825         * WebCoreSupport/WebPlatformStrategies.h:
826         * WebCoreSupport/WebPlatformStrategies.mm:
827         (WebPlatformStrategies::setURL):
828
829 2018-07-10  Ryosuke Niwa  <rniwa@webkit.org>
830
831         Disable cross-origin-window-policy by default
832         https://bugs.webkit.org/show_bug.cgi?id=187509
833
834         Reviewed by Chris Dumez.
835
836         * WebView/WebPreferences.mm:
837         (+[WebPreferences initialize]):
838
839 2018-07-09  Timothy Hatcher  <timothy@apple.com>
840
841         Semantic colors don't update when accessibility Increase Contrast mode is enabled.
842         https://bugs.webkit.org/show_bug.cgi?id=187425
843         rdar://problem/39948240
844
845         Reviewed by Tim Horton.
846
847         * WebView/WebView.mm:
848         (-[WebView _commonInitializationWithFrameName:groupName:]): Removed call to
849         _updateDefaultAppearance, which called setUseDarkAppearance. There is already
850         a call in this method to setUseDarkAppearance.
851         (-[WebView _setUseSystemAppearance:]): Just call the page, not setUseDarkAppearance.
852         (-[WebView viewDidChangeEffectiveAppearance]): Added. This is the proper NSView method to use.
853         (-[WebView _updateDefaultAppearance]): Deleted.
854         (-[WebView effectiveAppearanceDidChange]): Deleted. This method is a deprecated name.
855
856 2018-07-09  Simon Fraser  <simon.fraser@apple.com>
857
858         Shrink various loading-related enums to shrink CachedResource
859         https://bugs.webkit.org/show_bug.cgi?id=187443
860
861         Reviewed by Chris Dumez.
862
863         * WebCoreSupport/WebFrameLoaderClient.mm:
864         (WebFrameLoaderClient::convertMainResourceLoadToDownload):
865         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
866         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
867         (WebFrameLoaderClient::dispatchWillSendRequest):
868         (WebFrameLoaderClient::dispatchDecidePolicyForResponse):
869         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
870         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
871         (WebFrameLoaderClient::updateGlobalHistory):
872         (WebFrameLoaderClient::canHandleRequest const):
873         * WebView/WebDataSource.mm:
874         (-[WebDataSource initialRequest]):
875         (-[WebDataSource request]):
876
877 2018-07-09  Commit Queue  <commit-queue@webkit.org>
878
879         Unreviewed, rolling out r233612.
880         https://bugs.webkit.org/show_bug.cgi?id=187475
881
882         Revision caused the api test LinkColorWithSystemAppearance to
883         fail on all systems. (Requested by Truitt on #webkit).
884
885         Reverted changeset:
886
887         "Semantic colors don't update when accessibility Increase
888         Contrast mode is enabled."
889         https://bugs.webkit.org/show_bug.cgi?id=187425
890         https://trac.webkit.org/changeset/233612
891
892 2018-07-06  Timothy Hatcher  <timothy@apple.com>
893
894         Semantic colors don't update when accessibility Increase Contrast mode is enabled.
895         https://bugs.webkit.org/show_bug.cgi?id=187425
896         rdar://problem/39948240
897
898         Reviewed by Tim Horton.
899
900         * WebView/WebView.mm:
901         (-[WebView _commonInitializationWithFrameName:groupName:]): Removed call to
902         _updateDefaultAppearance, which called setUseDarkAppearance. There is already
903         a call in this method to setUseDarkAppearance.
904         (-[WebView _setUseSystemAppearance:]): Just call the page, not setUseDarkAppearance.
905         (-[WebView viewDidChangeEffectiveAppearance]): Added. This is the proper NSView method to use.
906         (-[WebView _updateDefaultAppearance]): Deleted.
907         (-[WebView effectiveAppearanceDidChange]): Deleted. This method is a deprecated name.
908
909 2018-07-05  Timothy Hatcher  <timothy@apple.com>
910
911         Rename and flip the meaning of defaultAppearance to be useDarkAppearance.
912         https://bugs.webkit.org/show_bug.cgi?id=187369
913         rdar://problem/41870420
914
915         Reviewed by Tim Horton.
916
917         * WebView/WebMediaPlaybackTargetPicker.mm:
918         (WebMediaPlaybackTargetPicker::showPlaybackTargetPicker):
919         * WebView/WebView.mm:
920         (-[WebView _commonInitializationWithFrameName:groupName:]):
921         (-[WebView _effectiveAppearanceIsDark]):
922         (-[WebView _updateDefaultAppearance]):
923         (-[WebView _defaultAppearance]): Deleted.
924
925 2018-07-04  Ryosuke Niwa  <rniwa@webkit.org>
926
927         Youtube video pages crash after a couple of minutes
928         https://bugs.webkit.org/show_bug.cgi?id=187316
929
930         Reviewed by Antti Koivisto.
931
932         * WebView/WebView.mm:
933         (-[WebView _preferencesChanged:]):
934
935 2018-07-04  Tim Horton  <timothy_horton@apple.com>
936
937         Introduce PLATFORM(IOSMAC)
938         https://bugs.webkit.org/show_bug.cgi?id=187315
939
940         Reviewed by Dan Bernstein.
941
942         * Configurations/Base.xcconfig:
943         * Configurations/FeatureDefines.xcconfig:
944
945 2018-06-28  Wenson Hsieh  <wenson_hsieh@apple.com>
946
947         [iOS] DataTransfer.getData always returns the empty string when dropping text
948         https://bugs.webkit.org/show_bug.cgi?id=187130
949         <rdar://problem/41014117>
950
951         Reviewed by Ryosuke Niwa.
952
953         Add plumbing to grab information for each item in the pasteboard. See WebCore ChangeLog for more detail.
954
955         * WebCoreSupport/WebPlatformStrategies.h:
956         * WebCoreSupport/WebPlatformStrategies.mm:
957         (WebPlatformStrategies::allPasteboardItemInfo):
958
959 2018-06-26  Eric Carlson  <eric.carlson@apple.com>
960
961         [Mac] AirPlay picker uses incorrect theme in Dark mode
962         https://bugs.webkit.org/show_bug.cgi?id=187054
963         <rdar://problem/41291093>
964
965         Reviewed by Timothy Hatcher.
966
967         * WebView/WebMediaPlaybackTargetPicker.mm:
968         (WebMediaPlaybackTargetPicker::showPlaybackTargetPicker): Pass page->defaultAppearance().
969
970 2018-06-23  Yusuke Suzuki  <utatane.tea@gmail.com>
971
972         [WTF] Add user-defined literal for ASCIILiteral
973         https://bugs.webkit.org/show_bug.cgi?id=186839
974
975         Reviewed by Darin Adler.
976
977         * DOM/ExceptionHandlers.mm:
978         (raiseDOMErrorException):
979         * Plugins/Hosted/ProxyInstance.mm:
980         (WebKit::ProxyInstance::invokeMethod):
981         * Storage/WebDatabaseProvider.mm:
982         (WebDatabaseProvider::indexedDatabaseDirectoryPath):
983
984 2018-06-22  Timothy Hatcher  <timothy@apple.com>
985
986         Recalc styles every time defaultAppearance changes.
987         https://bugs.webkit.org/show_bug.cgi?id=186866
988         rdar://problem/41309805
989
990         Reviewed by Tim Horton.
991
992         * WebView/WebView.mm:
993         (-[WebView _updateDefaultAppearance]):
994         (-[WebView _setUseSystemAppearance:]):
995         (-[WebView _useSystemAppearance]):
996
997 2018-06-20  Darin Adler  <darin@apple.com>
998
999         [Cocoa] Use the isDirectory: variants of NSURL methods more to eliminate unnecessary file system activity
1000         https://bugs.webkit.org/show_bug.cgi?id=186875
1001
1002         Reviewed by Anders Carlsson.
1003
1004         * WebView/WebHTMLView.mm:
1005         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Use isDirectory:NO for the URL of the location
1006         to write te file to.
1007         * WebView/WebPreferences.mm:
1008         (-[WebPreferences userStyleSheetLocation]): Use isDirectory:NO to create a URL for the user style sheet.
1009         * WebView/WebView.mm:
1010         (-[WebView setMainFrameURL:]): Use isDirectory:NO to create a URL for a local webpage to load.
1011
1012 2018-06-12  Darin Adler  <darin@apple.com>
1013
1014         [Cocoa] Make some RetainPtr refinements to get more ready for ARC
1015         https://bugs.webkit.org/show_bug.cgi?id=186526
1016
1017         Reviewed by Anders Carlsson.
1018
1019         * Plugins/Hosted/NetscapePluginHostManager.mm:
1020         (WebKit::preferredBundleLocalizationName): Use bridgingAutorelease.
1021
1022         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1023         (-[WebHostedNetscapePluginView createPluginLayer]): Use move
1024         assignment rather than adoptNS/leakRef.
1025         * Plugins/WebNetscapePluginView.mm:
1026         (-[WebNetscapePluginView createPlugin]): Ditto.
1027
1028         * WebCoreSupport/WebContextMenuClient.mm:
1029         (WebContextMenuClient::contextMenuForEvent): Get rid of unnecessary use of
1030         RetainPtr::autorelease; no need to autorelease just to pass something as a function
1031         argument, so use RetainPtr::get instead.
1032
1033         * WebView/WebHTMLView.mm:
1034         (customMenuFromDefaultItems): Get rid of of unnecessary use of RetainPtr::autorelease.
1035         No need to autorelease the result when the return type is RetainPtr.
1036
1037         * WebView/WebPDFRepresentation.mm:
1038         (-[WebPDFRepresentation convertPostScriptDataSourceToPDF:]): Use bridgingAutorelease.
1039
1040 2018-06-13  Youenn Fablet  <youenn@apple.com>
1041
1042         Supported plugin check should be based on plugin identifier
1043         https://bugs.webkit.org/show_bug.cgi?id=186578
1044         <rdar://problem/40523828>
1045
1046         Reviewed by Darin Adler.
1047
1048         * WebCoreSupport/WebPluginInfoProvider.h:
1049         * WebCoreSupport/WebPluginInfoProvider.mm:
1050         (WebPluginInfoProvider::pluginInfo):
1051         (WebPluginInfoProvider::webVisiblePluginInfo):
1052
1053 2018-06-13  Chris Dumez  <cdumez@apple.com>
1054
1055         PSON: http/tests/resourceLoadStatistics/classify-as-prevalent-based-on-top-frame-redirect-collusion.html ASSERTS with process swap enabled
1056         https://bugs.webkit.org/show_bug.cgi?id=186545
1057
1058         Reviewed by Brady Eidson.
1059
1060         Update client delegate now that parameter type has changed.
1061
1062         * WebCoreSupport/WebFrameLoaderClient.h:
1063         * WebCoreSupport/WebFrameLoaderClient.mm:
1064         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1065
1066 2018-06-11  Tim Horton  <timothy_horton@apple.com>
1067
1068         Link drag image is inconsistently unreadable in dark mode
1069         https://bugs.webkit.org/show_bug.cgi?id=186472
1070
1071         Reviewed by Timothy Hatcher.
1072
1073         * WebView/WebView.mm:
1074         (-[WebView _defaultAppearance]):
1075         Make defaultAppearance accurate even if useSystemAppearance is false.
1076         Some parts of WebKit (like the link drag image, but also context menus)
1077         want to be able to follow the system appearance regardless of whether
1078         the view or content has opted in.
1079
1080 2018-06-11  Chris Dumez  <cdumez@apple.com>
1081
1082         http/tests/security/cors-post-redirect-307.html fails with PSON enabled
1083         https://bugs.webkit.org/show_bug.cgi?id=186441
1084
1085         Reviewed by Brady Eidson.
1086
1087         Rename existing flag to something a bit more generic, now that it is used for
1088         more things than bypassing the navigation policy check.
1089
1090         * WebView/WebView.mm:
1091         (-[WebView _loadBackForwardListFromOtherView:]):
1092         (-[WebView goToBackForwardItem:]):
1093
1094 2018-06-09  Dan Bernstein  <mitz@apple.com>
1095
1096         [Xcode] Clean up and modernize some build setting definitions
1097         https://bugs.webkit.org/show_bug.cgi?id=186463
1098
1099         Reviewed by Sam Weinig.
1100
1101         * Configurations/Base.xcconfig: Removed definition for macOS 10.11.
1102         * Configurations/DebugRelease.xcconfig: Ditto.
1103         * Configurations/FeatureDefines.xcconfig: Simplified the definitions of ENABLE_APPLE_PAY and
1104           ENABLE_VIDEO_PRESENTATION_MODE now macOS 10.12 is the earliest supported version.
1105         * Configurations/Version.xcconfig: Removed definition for macOS 10.11.
1106         * Configurations/WebKitLegacy.xcconfig: Simplified the definition of WK_PRIVATE_FRAMEWORKS_DIR
1107           now that WK_XCODE_SUPPORTS_TEXT_BASED_STUBS is true for all supported Xcode versions.
1108         * Configurations/WebKitTargetConditionals.xcconfig: Removed definitions for macOS 10.11.
1109
1110 2018-06-08  Darin Adler  <darin@apple.com>
1111
1112         [Cocoa] Remove all uses of NSAutoreleasePool as part of preparation for ARC
1113         https://bugs.webkit.org/show_bug.cgi?id=186436
1114
1115         Reviewed by Anders Carlsson.
1116
1117         * Carbon/CarbonUtils.m: Updated include location of FoundationSPI.h.
1118         (getNSAutoreleasePoolCount): Use objc_autoreleasePoolPush/Pop.
1119         (WebInitForCarbon): Use objc_autoreleasePoolPush/Pop instead of NSAutoreleasePool object.
1120         (PoolCleaner): Ditto.
1121
1122         * History/WebHistory.mm:
1123         (-[WebHistoryPrivate loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]):
1124         Use @autoreleasepool instead of NSAutoreleasePool object. No need to do the "drain pool only
1125         every 50 times"; the -[WebHistory loadFromURL] family of methods were once used by Safari, and
1126         now hardly used if at all.
1127         * WebView/WebView.mm:
1128         (-[WebView rectsForTextMatches]): Ditto.
1129
1130 2018-06-08  Wenson Hsieh  <wenson_hsieh@apple.com>
1131
1132         [WebKit on watchOS] Upstream watchOS source additions to OpenSource (Part 1)
1133         https://bugs.webkit.org/show_bug.cgi?id=186442
1134         <rdar://problem/40879364>
1135
1136         Reviewed by Tim Horton.
1137
1138         * Configurations/FeatureDefines.xcconfig:
1139
1140 2018-06-08  Aditya Keerthi  <akeerthi@apple.com>
1141
1142         [Datalist] Allow TextFieldInputType to show and hide suggestions
1143         https://bugs.webkit.org/show_bug.cgi?id=186151
1144
1145         Reviewed by Tim Horton.
1146
1147         * WebCoreSupport/WebChromeClient.h:
1148         * WebCoreSupport/WebChromeClient.mm:
1149         (WebChromeClient::createDataListSuggestionPicker):
1150
1151 2018-06-07  Chris Dumez  <cdumez@apple.com>
1152
1153         Add base class to get WeakPtrFactory member and avoid some boilerplate code
1154         https://bugs.webkit.org/show_bug.cgi?id=186407
1155
1156         Reviewed by Brent Fulgham.
1157
1158         Add CanMakeWeakPtr base class to get WeakPtrFactory member and its getter, in
1159         order to avoid some boilerplate code in every class needing a WeakPtrFactory.
1160         This also gets rid of old-style createWeakPtr() methods in favor of the newer
1161         makeWeakPtr().
1162
1163         * WebCoreSupport/WebEditorClient.h:
1164         * WebCoreSupport/WebEditorClient.mm:
1165         (WebEditorClient::requestCandidatesForSelection):
1166
1167 2018-06-05  Chris Dumez  <cdumez@apple.com>
1168
1169         Regression(r232082): Websites get loaded inside of Messages App chat transcript
1170         https://bugs.webkit.org/show_bug.cgi?id=186331
1171         <rdar://problem/40735446>
1172
1173         Reviewed by Darin Adler.
1174
1175         r232082 made it so that if the client implements decidePolicyForMIMEType / decidePolicyForNavigationAction
1176         but does not call use / ignore on the listener, then we would do "use" by default.
1177         The intention was to restore pre-AsyncPolicyDelegates behavior and unbreak Box.app. However,
1178         the pre-AsyncPolicyDelegates behavior was only to "use" by default for decidePolicyForMIMEType,
1179         not decidePolicyForNavigationAction. Doing "use" by default for decidePolicyForNavigationAction
1180         is new behavior and it breaks Messages.app. This patch updates r232082 so that we now do call
1181         "use" by default on the listener for decidePolicyForMIMEType and "ignore" by default for other
1182         policy decisions. This should restore pre-AsyncPolicyDelegates behavior. This fixes Messages.app
1183         and Box.app is still working properly.
1184
1185         * WebCoreSupport/WebFrameLoaderClient.h:
1186         * WebCoreSupport/WebFrameLoaderClient.mm:
1187         (WebFrameLoaderClient::dispatchDecidePolicyForResponse):
1188         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
1189         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1190         (WebFrameLoaderClient::dispatchWillSubmitForm):
1191         (WebFrameLoaderClient::setUpPolicyListener):
1192         (-[WebFramePolicyListener initWithFrame:policyFunction:defaultPolicy:]):
1193         (-[WebFramePolicyListener initWithFrame:policyFunction:defaultPolicy:appLinkURL:]):
1194         (-[WebFramePolicyListener dealloc]):
1195         (-[WebFramePolicyListener initWithFrame:policyFunction:]): Deleted.
1196         (-[WebFramePolicyListener initWithFrame:policyFunction:appLinkURL:]): Deleted.
1197
1198 2018-06-05  Brent Fulgham  <bfulgham@apple.com>
1199
1200         Adjust compile and runtime flags to match shippable state of features
1201         https://bugs.webkit.org/show_bug.cgi?id=186319
1202         <rdar://problem/40352045>
1203
1204         Reviewed by Maciej Stachowiak, Jon Lee, and others.
1205
1206         * Configurations/DebugRelease.xcconfig: Don't build ENABLE_INPUT_TYPE_COLOR
1207         or ENABLE_INPUT_TYPE_COLOR_POPOVER.
1208         * Configurations/FeatureDefines.xcconfig: Update to match WebKit definition of
1209         WK_RELOCATABLE_FRAMEWORKS so that ENABLE(EXPERIMENTAL_FEATURES) is defined properly for
1210         Cocoa builds.
1211
1212 2018-06-05  Timothy Hatcher  <timothy@apple.com>
1213
1214         Clean up LocalDefaultSystemAppearance and prefers-dark-interface media query
1215
1216         https://bugs.webkit.org/show_bug.cgi?id=186323
1217         rdar://problem/38382252
1218
1219         Reviewed by Tim Horton.
1220
1221         * WebView/WebView.mm:
1222         (-[WebView _defaultAppearance]):
1223
1224 2018-06-05  Brent Fulgham  <bfulgham@apple.com>
1225
1226         Revise DEFAULT_EXPERIMENTAL_FEATURES_ENABLED to work properly on Apple builds
1227         https://bugs.webkit.org/show_bug.cgi?id=186286
1228         <rdar://problem/40782992>
1229
1230         Reviewed by Dan Bernstein.
1231
1232         Use the WK_RELOCATABLE_FRAMEWORKS flag (which is always defined for non-production builds)
1233         to define ENABLE(EXPERIMENTAL_FEATURES) so that we do not need to manually
1234         change this flag when preparing for a production release.
1235
1236         * Configurations/FeatureDefines.xcconfig: Use WK_RELOCATABLE_FRAMEWORKS to determine
1237         whether experimental features should be enabled, and use it to properly define the
1238         feature flag.
1239
1240 2018-06-03  Darin Adler  <darin@apple.com>
1241
1242         Simplify and remove some unused video element code (helpful for ARC-compatibility)
1243         https://bugs.webkit.org/show_bug.cgi?id=186258
1244
1245         Reviewed by Daniel Bates.
1246
1247         * WebView/WebVideoFullscreenController.h: Removed some unneeded includes and
1248         forward declarations. Removed methods that don't need to be public.
1249
1250         * WebView/WebVideoFullscreenController.mm: Added additional includes. Removed
1251         #if COMPILER(CLANG) since that's all we use on Mac. Moved fields into an
1252         unnamed category in here and also replaced the HUDWindowControllerDelegate
1253         with the unnamed category. Removed unused NSWindow category defining the
1254         isOnActiveSpace, which is not called anywhere in this file at this time.
1255         (-[WebVideoFullscreenController setupVideoOverlay:]): Deleted. Moved the code
1256         into setVideoElement.
1257         (-[WebVideoFullscreenController windowDidLoad]): Slightly rearranged the code
1258         and removed unneeded typecast.
1259         (-[WebVideoFullscreenController videoElement]): Updated to not rely on a
1260         using statement at the top of the file.
1261         (-[WebVideoFullscreenController setVideoElement:]): Added a comment about
1262         the many side effects and special considerations that this method that sounds
1263         like a setter has. Updated code to use the new
1264         MediaPlayer::objCAVFoundationAVPlayer function instead of the old
1265         HTMLVideoElement::platformMedia function. Also straightened out the logic a
1266         bit and added some FIXME comments about small problems noticed but not fixed.
1267         (-[WebVideoFullscreenController delegate]): Deleted. Was never called.
1268         (-[WebVideoFullscreenController setDelegate:]): Deleted. Was never called.
1269         (-[WebVideoFullscreenController windowDidExitFullscreen]): Removed unneeded
1270         typecast. Removed call to updatePowerAssertions method.
1271         (-[WebVideoFullscreenController windowDidEnterFullscreen]): Removed call to
1272         updatePowerAssertions method.
1273         (-[WebVideoFullscreenController updatePowerAssertions]): Deleted. This method
1274         set _displaySleepEnabler to nullptr, but nothing was ever setting it to anything
1275         else, so this was dead code that did nothing.
1276         (-[WebVideoFullscreenController rateChanged:]): Removed call to
1277         updatePowerAssertions method.
1278
1279 2018-06-04  Chris Dumez  <cdumez@apple.com>
1280
1281         Rename "Cross-Origin-Options" HTTP header to "Cross-Origin-Window-Policy"
1282         https://bugs.webkit.org/show_bug.cgi?id=186287
1283         <rdar://problem/40783352>
1284
1285         Reviewed by Youenn Fablet.
1286
1287         * WebView/WebPreferenceKeysPrivate.h:
1288         * WebView/WebPreferences.mm:
1289         (+[WebPreferences initialize]):
1290         (-[WebPreferences crossOriginWindowPolicySupportEnabled]):
1291         (-[WebPreferences setCrossOriginWindowPolicySupportEnabled:]):
1292         * WebView/WebPreferencesPrivate.h:
1293         * WebView/WebView.mm:
1294         (-[WebView _preferencesChanged:]):
1295
1296 2018-06-02  Darin Adler  <darin@apple.com>
1297
1298         [Cocoa] Update some code to be more ARC-compatible to prepare for future ARC adoption
1299         https://bugs.webkit.org/show_bug.cgi?id=186227
1300
1301         Reviewed by Dan Bernstein.
1302
1303         * Misc/WebKitErrors.m:
1304         (+[NSError _registerWebKitErrors]): Use @autoreleasepool instead of NSAutoreleasePool.
1305         * Plugins/WebPluginDatabase.mm:
1306         (-[WebPluginDatabase refresh]): Ditto.
1307         * WebCoreSupport/WebChromeClient.mm:
1308         (WebChromeClient::setStatusbarText): Ditto.
1309
1310 2018-06-01  Chris Dumez  <cdumez@apple.com>
1311
1312         REGRESSION (r231456): Colloquy is broken
1313         https://bugs.webkit.org/show_bug.cgi?id=186197
1314         <rdar://problem/40722960>
1315
1316         Reviewed by Timothy Hatcher.
1317
1318         Restore pre-r231456 behavior for Colloquy app so that it works again.
1319
1320         * WebView/WebView.mm:
1321         (-[WebView _needsFrameNameFallbackToIdQuirk]):
1322         (-[WebView _preferencesChanged:]):
1323
1324 2018-05-30  Yusuke Suzuki  <utatane.tea@gmail.com>
1325
1326         [JSC] Pass VM& parameter as much as possible
1327         https://bugs.webkit.org/show_bug.cgi?id=186085
1328
1329         Reviewed by Saam Barati.
1330
1331         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1332         (WebKit::NetscapePluginInstanceProxy::invoke):
1333
1334 2018-05-30  Daniel Bates  <dabates@apple.com>
1335
1336         NavigationAction does not need to hold initiating DOM Event
1337         https://bugs.webkit.org/show_bug.cgi?id=185958
1338         <rdar://problem/40531539>
1339
1340         Reviewed by Simon Fraser.
1341
1342         Write in terms of NavigationAction::{keyStateEventData, mouseEventDataForFirstMouseEvent}().
1343
1344         * WebCoreSupport/WebFrameLoaderClient.mm:
1345         (WebFrameLoaderClient::actionDictionary const):
1346         (findMouseEvent): Deleted.
1347
1348 2018-05-27  Dan Bernstein  <mitz@apple.com>
1349
1350         Reverted the changes made for https://webkit.org/b/186016
1351
1352         They broke the USE(APPLE_INTERNAL_SDK) Sierra build.
1353
1354
1355 2018-05-27  David Kilzer  <ddkilzer@apple.com>
1356
1357         [iOS] Fix warnings about leaks found by clang static analyzer
1358         <https://webkit.org/b/186009>
1359         <rdar://problem/40574267>
1360
1361         Reviewed by Daniel Bates.
1362
1363         * WebView/WebHTMLView.mm:
1364         (-[WebHTMLView doCommandBySelector:]): Fix use of an
1365         uninitialized boolean variable (`eventWasHandled`) that only
1366         happened on iOS.
1367
1368 2018-05-27  Dan Bernstein  <mitz@apple.com>
1369
1370         [Cocoa] Avoid importing directly from subumbrella frameworks
1371         https://bugs.webkit.org/show_bug.cgi?id=186016
1372
1373         Reviewed by Sam Weinig.
1374
1375         * Carbon/CarbonWindowAdapter.h: Import Carbon.h instead of HIToolbox headers.
1376         * Carbon/CarbonWindowAdapter.mm: Ditto.
1377         * Carbon/CarbonWindowFrame.m: Ditto.
1378         * Carbon/HIViewAdapter.h: Ditto.
1379         * Configurations/WebKitLegacy.xcconfig: Removed -iframework options from OTHER_CFLAGS and
1380           OTHER_CPLUSPLUSFLAGS.
1381         * Plugins/WebNetscapePluginEventHandlerCarbon.mm: Import Carbon.h instead of CarbonEvents.h.
1382         * WebView/WebPDFDocumentExtras.mm: Import Quartz.h instead of a PDFKit header.
1383         * WebView/WebPDFView.h: Ditto.
1384
1385 2018-05-27  Sam Weinig  <sam@webkit.org>
1386
1387         Modernize RenderStyleConstants.h - Part 3
1388         https://bugs.webkit.org/show_bug.cgi?id=186015
1389
1390         Reviewed by Yusuke Suzuki.
1391
1392         * WebView/WebView.mm:
1393         (-[WebView updateTextTouchBar]):
1394         Update for new enum name.
1395
1396 2018-05-25  Chris Dumez  <cdumez@apple.com>
1397
1398         Minor ApplicationCacheStorage clean up
1399         https://bugs.webkit.org/show_bug.cgi?id=185984
1400
1401         Reviewed by Youenn Fablet.
1402
1403         * WebCoreSupport/WebApplicationCache.mm:
1404         (+[WebApplicationCache originsWithCache]):
1405
1406 2018-05-25  David Kilzer  <ddkilzer@apple.com>
1407
1408         Fix issues with -dealloc methods found by clang static analyzer
1409         <https://webkit.org/b/185887>
1410
1411         Reviewed by Joseph Pecoraro.
1412
1413         * WebView/WebView.mm:
1414         (-[WebUITextIndicatorData dealloc]):
1415         - Move method implementation from (WebUITextIndicatorInternal)
1416           category to the main category since this is public API.  This
1417           fixes the false positive warning about a missing -dealloc
1418           method.
1419
1420 2018-05-24  Sam Weinig  <sam@webkit.org>
1421
1422         Modernize RenderStyleConstants.h - Part 2
1423         https://bugs.webkit.org/show_bug.cgi?id=185901
1424
1425         Reviewed by Simon Fraser.
1426
1427         * WebView/WebHTMLRepresentation.mm:
1428         (searchForLabelsBeforeElement):
1429         * WebView/WebView.mm:
1430         (nsTextAlignmentFromRenderStyle):
1431         Update for new enum names.
1432
1433 2018-05-22  Chris Dumez  <cdumez@apple.com>
1434
1435         Regression(AsyncPolicyDelegates): Box.app login Window is blank
1436         https://bugs.webkit.org/show_bug.cgi?id=185832
1437         <rdar://problem/40307871>
1438
1439         Reviewed by Geoffrey Garen.
1440
1441         We used to have a bug where where we would fail to wait for the policy decision for
1442         the navigation response from the client and the load would keep going, racing with
1443         the client's policy decision. If the client did not respond in time, the behavior
1444         would be the same as "Use" policy action.
1445
1446         Box.app fails to make any policy decision in its decidePolicyForMIMEType delegate
1447         but the load happened to proceed anyway due to our bug. Now that we've fixed the
1448         WebKit bug, however, the load would hang because the completion handler for the
1449         decidePolicyForNavigationResponse would never get called.
1450
1451         To work around the issue, I made the policy listener weak on the WebFrameLoaderClient
1452         instead of retaining it. If the policy listener object gets destroyed because getting
1453         resolved, we now use "Use" policy action in its dealloc function to maintain previous
1454         behavior.
1455
1456         * WebCoreSupport/WebFrameLoaderClient.h:
1457         * WebCoreSupport/WebFrameLoaderClient.mm:
1458         (WebFrameLoaderClient::cancelPolicyCheck):
1459         (WebFrameLoaderClient::setUpPolicyListener):
1460         (-[WebFramePolicyListener dealloc]):
1461
1462 2018-05-22  Ryan Haddad  <ryanhaddad@apple.com>
1463
1464         Unreviewed, rolling out r232052.
1465
1466         Breaks internal builds.
1467
1468         Reverted changeset:
1469
1470         "Use more C++17"
1471         https://bugs.webkit.org/show_bug.cgi?id=185176
1472         https://trac.webkit.org/changeset/232052
1473
1474 2018-05-21  Yusuke Suzuki  <utatane.tea@gmail.com>
1475
1476         Use more C++17
1477         https://bugs.webkit.org/show_bug.cgi?id=185176
1478
1479         Reviewed by JF Bastien.
1480
1481         * Configurations/Base.xcconfig:
1482         * Configurations/WebKitLegacy.xcconfig:
1483
1484 2018-05-21  Chris Nardi  <cnardi@chromium.org>
1485
1486         Remove dead exception in MediaList.appendMedium
1487         https://bugs.webkit.org/show_bug.cgi?id=185278
1488
1489         Reviewed by Chris Dumez.
1490
1491         Remove code pertaining to an exception being thrown by appendMedium().
1492
1493         * DOM/DOMMediaList.mm:
1494         (-[DOMMediaList appendMedium:]):
1495
1496 2018-05-21  Jer Noble  <jer.noble@apple.com>
1497
1498         Complete fix for enabling modern EME by default
1499         https://bugs.webkit.org/show_bug.cgi?id=185770
1500         <rdar://problem/40368220>
1501
1502         Reviewed by Eric Carlson.
1503
1504         * Configurations/FeatureDefines.xcconfig:
1505
1506 2018-05-21  Antti Koivisto  <antti@apple.com>
1507
1508         WebView._preferencesChanged should apply colorFilterEnabled preference before parsing user stylesheet
1509         https://bugs.webkit.org/show_bug.cgi?id=185815
1510         <rdar://problem/40310069>
1511
1512         Reviewed by Simon Fraser.
1513
1514         User stylesheet parsing may depend on the colorFilterEnabled preference.
1515
1516         * WebView/WebView.mm:
1517         (-[WebView _preferencesChanged:]):
1518
1519 2018-05-18  Commit Queue  <commit-queue@webkit.org>
1520
1521         Unreviewed, rolling out r231982.
1522         https://bugs.webkit.org/show_bug.cgi?id=185793
1523
1524         Caused layout test failures (Requested by realdawei on
1525         #webkit).
1526
1527         Reverted changeset:
1528
1529         "Complete fix for enabling modern EME by default"
1530         https://bugs.webkit.org/show_bug.cgi?id=185770
1531         https://trac.webkit.org/changeset/231982
1532
1533 2018-05-18  Jer Noble  <jer.noble@apple.com>
1534
1535         Complete fix for enabling modern EME by default
1536         https://bugs.webkit.org/show_bug.cgi?id=185770
1537         <rdar://problem/40368220>
1538
1539         Reviewed by Eric Carlson.
1540
1541         * Configurations/FeatureDefines.xcconfig:
1542
1543 2018-05-18  Chris Dumez  <cdumez@apple.com>
1544
1545         Avoid keeping the frame alive when ref'ing a WindowProxy
1546         https://bugs.webkit.org/show_bug.cgi?id=185737
1547         <rdar://problem/40004666>
1548
1549         Reviewed by Sam Weinig.
1550
1551         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1552         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
1553
1554 2018-05-16  Andy VanWagoner  <andy@vanwagoner.family>
1555
1556         Add support for Intl NumberFormat formatToParts
1557         https://bugs.webkit.org/show_bug.cgi?id=185375
1558
1559         Reviewed by Yusuke Suzuki.
1560
1561         Add flag for NumberFormat formatToParts.
1562
1563         * Configurations/FeatureDefines.xcconfig:
1564
1565 2018-05-16  Chris Nardi  <cnardi@chromium.org>
1566
1567         Fixup after r231849: Do not mark Mac API methods as deprecated
1568         https://bugs.webkit.org/show_bug.cgi?id=185684
1569
1570         Reviewed by Darin Adler.
1571
1572         Do not mark API methods for Document#selectedStylesheetSet/preferredStylesheetSet as deprecated
1573         as the entire class is already marked as deprecated, so it is unnecessary.
1574
1575         * DOM/DOMDocument.h:
1576
1577 2018-05-16  Chris Nardi  <cnardi@chromium.org>
1578
1579         Remove Document#selectedStylesheetSet/preferredStylesheetSet
1580         https://bugs.webkit.org/show_bug.cgi?id=185381
1581
1582         Reviewed by Darin Adler.
1583
1584         Mark API methods for Document#selectedStylesheetSet/preferredStylesheetSet as deprecated
1585         and make them do nothing.
1586
1587         * DOM/DOMDocument.h:
1588         * DOM/DOMDocument.mm:
1589         (-[DOMDocument preferredStylesheetSet]):
1590         (-[DOMDocument selectedStylesheetSet]):
1591         (-[DOMDocument setSelectedStylesheetSet:]):
1592
1593 2018-05-15  Antoine Quint  <graouts@apple.com>
1594
1595         [Web Animations] Expose Web Animations CSS integration as an experimental feature
1596         https://bugs.webkit.org/show_bug.cgi?id=185647
1597
1598         Reviewed by Dean Jackson.
1599
1600         Rename the Web Animations CSS integration flag.
1601
1602         * WebView/WebPreferenceKeysPrivate.h:
1603         * WebView/WebPreferences.mm:
1604         (+[WebPreferences initialize]):
1605         (-[WebPreferences webAnimationsCSSIntegrationEnabled]):
1606         (-[WebPreferences setWebAnimationsCSSIntegrationEnabled:]):
1607         (-[WebPreferences cssAnimationsAndCSSTransitionsBackedByWebAnimationsEnabled]): Deleted.
1608         (-[WebPreferences setCSSAnimationsAndCSSTransitionsBackedByWebAnimationsEnabled:]): Deleted.
1609         * WebView/WebPreferencesPrivate.h:
1610         * WebView/WebView.mm:
1611         (-[WebView _preferencesChanged:]):
1612
1613 2018-05-14  Daniel Bates  <dabates@apple.com>
1614
1615         Fix the Apple Internal build
1616
1617         See <rdar://problem/40237873> for more details.
1618
1619         * WebView/WebFullScreenController.mm:
1620         (-[WebFullScreenController enterFullScreen:]):
1621         (-[WebFullScreenController finishedEnterFullScreenAnimation:]):
1622         (-[WebFullScreenController exitFullScreen]):
1623         (-[WebFullScreenController finishedExitFullScreenAnimation:]):
1624         (-[WebFullScreenController _startEnterFullScreenAnimationWithDuration:]):
1625         (-[WebFullScreenController _startExitFullScreenAnimationWithDuration:]):
1626
1627 2018-05-11  Timothy Hatcher  <timothy@apple.com>
1628
1629         WebHTMLView is not setting aside subviews when drawing.
1630
1631         https://bugs.webkit.org/show_bug.cgi?id=185561
1632         rdar://problem/40172894
1633
1634         Reviewed by Simon Fraser.
1635
1636         Use the new method signature for _recursive:displayRectIgnoringOpacity:shouldChangeFontReferenceColor:.
1637
1638         * WebView/WebHTMLView.mm:
1639         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:stopAtLayerBackedViews:]): Added.
1640
1641 2018-05-07  Daniel Bates  <dabates@apple.com>
1642
1643         Substitute CrossOriginPreflightResultCache::clear() for CrossOriginPreflightResultCache::empty()
1644         https://bugs.webkit.org/show_bug.cgi?id=185170
1645
1646         Reviewed by Per Arne Vollan.
1647
1648         * Misc/WebCache.mm:
1649         (+[WebCache empty]):
1650
1651 2018-05-04  Timothy Hatcher  <timothy@apple.com>
1652
1653         Deprecate legacy WebView and friends
1654         https://bugs.webkit.org/show_bug.cgi?id=185279
1655         rdar://problem/33268700
1656
1657         Reviewed by Tim Horton.
1658
1659         Added deprecation macros to all the classes, extern strings, and enums.
1660
1661         * Configurations/WebKitLegacy.xcconfig:
1662         Added BUILDING_WEBKIT define to disable the deprecation macros.
1663         * DOM/DOMAbstractView.h:
1664         * DOM/DOMAttr.h:
1665         * DOM/DOMBlob.h:
1666         * DOM/DOMCDATASection.h:
1667         * DOM/DOMCSSCharsetRule.h:
1668         * DOM/DOMCSSFontFaceRule.h:
1669         * DOM/DOMCSSImportRule.h:
1670         * DOM/DOMCSSMediaRule.h:
1671         * DOM/DOMCSSPageRule.h:
1672         * DOM/DOMCSSPrimitiveValue.h:
1673         * DOM/DOMCSSRule.h:
1674         * DOM/DOMCSSRuleList.h:
1675         * DOM/DOMCSSStyleDeclaration.h:
1676         * DOM/DOMCSSStyleRule.h:
1677         * DOM/DOMCSSStyleSheet.h:
1678         * DOM/DOMCSSUnknownRule.h:
1679         * DOM/DOMCSSValue.h:
1680         * DOM/DOMCSSValueList.h:
1681         * DOM/DOMCharacterData.h:
1682         * DOM/DOMComment.h:
1683         * DOM/DOMCounter.h:
1684         * DOM/DOMDocument.h:
1685         * DOM/DOMDocumentFragment.h:
1686         * DOM/DOMDocumentType.h:
1687         * DOM/DOMElement.h:
1688         * DOM/DOMEntity.h:
1689         * DOM/DOMEntityReference.h:
1690         * DOM/DOMEvent.h:
1691         * DOM/DOMEventException.h:
1692         * DOM/DOMEventListener.h:
1693         * DOM/DOMEventTarget.h:
1694         * DOM/DOMException.h:
1695         * DOM/DOMFile.h:
1696         * DOM/DOMFileList.h:
1697         * DOM/DOMHTMLAnchorElement.h:
1698         * DOM/DOMHTMLAppletElement.h:
1699         * DOM/DOMHTMLAreaElement.h:
1700         * DOM/DOMHTMLBRElement.h:
1701         * DOM/DOMHTMLBaseElement.h:
1702         * DOM/DOMHTMLBaseFontElement.h:
1703         * DOM/DOMHTMLBodyElement.h:
1704         * DOM/DOMHTMLButtonElement.h:
1705         * DOM/DOMHTMLCanvasElement.h:
1706         * DOM/DOMHTMLCollection.h:
1707         * DOM/DOMHTMLDListElement.h:
1708         * DOM/DOMHTMLDirectoryElement.h:
1709         * DOM/DOMHTMLDivElement.h:
1710         * DOM/DOMHTMLDocument.h:
1711         * DOM/DOMHTMLElement.h:
1712         * DOM/DOMHTMLEmbedElement.h:
1713         * DOM/DOMHTMLFieldSetElement.h:
1714         * DOM/DOMHTMLFontElement.h:
1715         * DOM/DOMHTMLFormElement.h:
1716         * DOM/DOMHTMLFrameElement.h:
1717         * DOM/DOMHTMLFrameSetElement.h:
1718         * DOM/DOMHTMLHRElement.h:
1719         * DOM/DOMHTMLHeadElement.h:
1720         * DOM/DOMHTMLHeadingElement.h:
1721         * DOM/DOMHTMLHtmlElement.h:
1722         * DOM/DOMHTMLIFrameElement.h:
1723         * DOM/DOMHTMLImageElement.h:
1724         * DOM/DOMHTMLInputElement.h:
1725         * DOM/DOMHTMLLIElement.h:
1726         * DOM/DOMHTMLLabelElement.h:
1727         * DOM/DOMHTMLLegendElement.h:
1728         * DOM/DOMHTMLLinkElement.h:
1729         * DOM/DOMHTMLMapElement.h:
1730         * DOM/DOMHTMLMarqueeElement.h:
1731         * DOM/DOMHTMLMediaElement.h:
1732         * DOM/DOMHTMLMenuElement.h:
1733         * DOM/DOMHTMLMetaElement.h:
1734         * DOM/DOMHTMLModElement.h:
1735         * DOM/DOMHTMLOListElement.h:
1736         * DOM/DOMHTMLObjectElement.h:
1737         * DOM/DOMHTMLOptGroupElement.h:
1738         * DOM/DOMHTMLOptionElement.h:
1739         * DOM/DOMHTMLOptionsCollection.h:
1740         * DOM/DOMHTMLParagraphElement.h:
1741         * DOM/DOMHTMLParamElement.h:
1742         * DOM/DOMHTMLPreElement.h:
1743         * DOM/DOMHTMLQuoteElement.h:
1744         * DOM/DOMHTMLScriptElement.h:
1745         * DOM/DOMHTMLSelectElement.h:
1746         * DOM/DOMHTMLStyleElement.h:
1747         * DOM/DOMHTMLTableCaptionElement.h:
1748         * DOM/DOMHTMLTableCellElement.h:
1749         * DOM/DOMHTMLTableColElement.h:
1750         * DOM/DOMHTMLTableElement.h:
1751         * DOM/DOMHTMLTableRowElement.h:
1752         * DOM/DOMHTMLTableSectionElement.h:
1753         * DOM/DOMHTMLTextAreaElement.h:
1754         * DOM/DOMHTMLTitleElement.h:
1755         * DOM/DOMHTMLUListElement.h:
1756         * DOM/DOMHTMLVideoElement.h:
1757         * DOM/DOMImplementation.h:
1758         * DOM/DOMKeyboardEvent.h:
1759         * DOM/DOMMediaError.h:
1760         * DOM/DOMMediaList.h:
1761         * DOM/DOMMouseEvent.h:
1762         * DOM/DOMMutationEvent.h:
1763         * DOM/DOMNamedNodeMap.h:
1764         * DOM/DOMNode.h:
1765         * DOM/DOMNodeFilter.h:
1766         * DOM/DOMNodeIterator.h:
1767         * DOM/DOMNodeList.h:
1768         * DOM/DOMObject.h:
1769         * DOM/DOMOverflowEvent.h:
1770         * DOM/DOMProcessingInstruction.h:
1771         * DOM/DOMProgressEvent.h:
1772         * DOM/DOMRGBColor.h:
1773         * DOM/DOMRange.h:
1774         * DOM/DOMRangeException.h:
1775         * DOM/DOMRect.h:
1776         * DOM/DOMStyleSheet.h:
1777         * DOM/DOMStyleSheetList.h:
1778         * DOM/DOMText.h:
1779         * DOM/DOMTextEvent.h:
1780         * DOM/DOMTimeRanges.h:
1781         * DOM/DOMTokenList.h:
1782         * DOM/DOMTreeWalker.h:
1783         * DOM/DOMUIEvent.h:
1784         * DOM/DOMWheelEvent.h:
1785         * DOM/DOMXPathException.h:
1786         * DOM/DOMXPathExpression.h:
1787         * DOM/DOMXPathNSResolver.h:
1788         * DOM/DOMXPathResult.h:
1789         * History/WebBackForwardList.h:
1790         * History/WebHistory.h:
1791         * History/WebHistoryItem.h:
1792         * Misc/WebDownload.h:
1793         * Misc/WebKitErrors.h:
1794         * Plugins/WebPluginViewFactory.h:
1795         * WebView/WebArchive.h:
1796         * WebView/WebDataSource.h:
1797         * WebView/WebDocument.h:
1798         * WebView/WebEditingDelegate.h:
1799         * WebView/WebFormDelegate.h:
1800         * WebView/WebFrame.h:
1801         * WebView/WebFrameLoadDelegate.h:
1802         * WebView/WebFrameView.h:
1803         * WebView/WebPolicyDelegate.h:
1804         * WebView/WebPreferences.h:
1805         * WebView/WebPreferencesPrivate.h:
1806         * WebView/WebResourceLoadDelegate.h:
1807         * WebView/WebUIDelegate.h:
1808         * WebView/WebUIDelegatePrivate.h:
1809         * WebView/WebView.h:
1810         * WebView/WebViewPrivate.h:
1811         * postprocess-headers.sh:
1812         Remove step that converts WEBKIT macros to NS macros.
1813         Change it to just remove the macros on iOS builds.
1814
1815 2018-05-01  Eric Carlson  <eric.carlson@apple.com>
1816
1817         [MediaStream] remove WK1 support
1818         https://bugs.webkit.org/show_bug.cgi?id=185136
1819
1820         Reviewed by Youenn Fablet.
1821
1822         * WebCoreSupport/WebUserMediaClient.h: Removed.
1823         * WebCoreSupport/WebUserMediaClient.mm: Removed.
1824         * WebView/WebView.mm:
1825         (-[WebView _commonInitializationWithFrameName:groupName:]):
1826         (-[WebView _preferencesChanged:]):
1827         (-[WebView _setUserMediaClient:]): Deleted.
1828         (-[WebView _userMediaClient]): Deleted.
1829         * WebView/WebViewData.h:
1830         * WebView/WebViewPrivate.h:
1831
1832 2018-05-01  Oleksandr Skachkov  <gskachkov@gmail.com>
1833
1834         WebAssembly: add support for stream APIs - JavaScript API
1835         https://bugs.webkit.org/show_bug.cgi?id=183442
1836
1837         Reviewed by Yusuke Suzuki and JF Bastien.
1838
1839         Add WEBASSEMBLY_STREAMINNG_API feature flag
1840
1841         * Configurations/FeatureDefines.xcconfig:
1842
1843 2018-04-30  JF Bastien  <jfbastien@apple.com>
1844
1845         Use some C++17 features
1846         https://bugs.webkit.org/show_bug.cgi?id=185135
1847
1848         Reviewed by Alex Christensen.
1849
1850         * Configurations/WebKitLegacy.xcconfig:
1851
1852 2018-04-27  Chris Dumez  <cdumez@apple.com>
1853
1854         Use WindowProxy instead of DOMWindow in our IDL
1855         https://bugs.webkit.org/show_bug.cgi?id=185022
1856
1857         Reviewed by Sam Weinig.
1858
1859         * DOM/DOMAbstractView.mm:
1860         (kit):
1861         (toWindowProxy):
1862         * DOM/DOMAbstractViewInternal.h:
1863         * DOM/DOMDocument.mm:
1864         (-[DOMDocument defaultView]):
1865         (-[DOMDocument getComputedStyle:pseudoElement:]):
1866         (-[DOMDocument getMatchedCSSRules:pseudoElement:authorOnly:]):
1867         * DOM/DOMHTMLFrameElement.mm:
1868         (-[DOMHTMLFrameElement contentWindow]):
1869         * DOM/DOMHTMLIFrameElement.mm:
1870         (-[DOMHTMLIFrameElement contentWindow]):
1871         * DOM/DOMKeyboardEvent.mm:
1872         (-[DOMKeyboardEvent initKeyboardEvent:canBubble:cancelable:view:keyIdentifier:location:ctrlKey:altKey:shiftKey:metaKey:altGraphKey:]):
1873         (-[DOMKeyboardEvent initKeyboardEvent:canBubble:cancelable:view:keyIdentifier:location:ctrlKey:altKey:shiftKey:metaKey:]):
1874         (-[DOMKeyboardEvent initKeyboardEvent:canBubble:cancelable:view:keyIdentifier:keyLocation:ctrlKey:altKey:shiftKey:metaKey:altGraphKey:]):
1875         (-[DOMKeyboardEvent initKeyboardEvent:canBubble:cancelable:view:keyIdentifier:keyLocation:ctrlKey:altKey:shiftKey:metaKey:]):
1876         * DOM/DOMMouseEvent.mm:
1877         (-[DOMMouseEvent initMouseEvent:canBubble:cancelable:view:detail:screenX:screenY:clientX:clientY:ctrlKey:altKey:shiftKey:metaKey:button:relatedTarget:]):
1878         * DOM/DOMTextEvent.mm:
1879         (-[DOMTextEvent initTextEvent:canBubbleArg:cancelableArg:viewArg:dataArg:]):
1880         * DOM/DOMUIEvent.mm:
1881         (-[DOMUIEvent view]):
1882         (-[DOMUIEvent initUIEvent:canBubble:cancelable:view:detail:]):
1883         * DOM/DOMWheelEvent.mm:
1884         (-[DOMWheelEvent initWheelEvent:wheelDeltaY:view:screenX:screenY:clientX:clientY:ctrlKey:altKey:shiftKey:metaKey:]):
1885
1886 2018-04-26  Simon Fraser  <simon.fraser@apple.com>
1887
1888         Implement rendering support for the color-filter CSS property
1889         https://bugs.webkit.org/show_bug.cgi?id=185047
1890         rdar://problem/39664967
1891
1892         Reviewed by Tim Horton.
1893         
1894         The body background should reflect the filtered color.
1895
1896         * WebView/WebFrame.mm:
1897         (-[WebFrame _bodyBackgroundColor]):
1898         * WebView/WebView.mm:
1899         (-[WebView updateTextTouchBar]): No logic change, just cleanup.
1900
1901 2018-04-26  Jer Noble  <jer.noble@apple.com>
1902
1903         WK_COCOA_TOUCH all the things.
1904         https://bugs.webkit.org/show_bug.cgi?id=185006
1905
1906         Reviewed by Tim Horton.
1907
1908         * Configurations/WebKitLegacy.xcconfig:
1909
1910 2018-04-26  Daniel Bates  <dabates@apple.com>
1911
1912         ASSERTION FAILED: ASSERT(!containsImage || MIMETypeRegistry::isSupportedImageResourceMIMEType([resource MIMEType])) in -[NSPasteboard(WebExtras) _web_writePromisedRTFDFromArchive:containsImage:]
1913         https://bugs.webkit.org/show_bug.cgi?id=184161
1914         <rdar://problem/39051645>
1915
1916         Reviewed by Dan Bernstein.
1917
1918         Fixes an assertion failure when quitting an app that uses a Legacy WebKit web view after dragging-and-
1919         dropping a PDF embedded using an HTML image element into the same web view.
1920
1921         When performing a drag-and-drop of a PDF document image (WebCore::PDFDocumentImage) we create a WebArchive
1922         from the main frame's WebHTMLView and promise AppKit that we will provide a Rich Text Format (RTF) document
1923         from this archive if needed. For some reason, on app termination AppKit requests that the WebHTMLView
1924         fulfill its RTF document promise for the WebArchive created at the start of the drag operation. To do this,
1925         we need to extract the image resource from the Web Archive. Currently we query MIMETypeRegistry::isSupportedImageResourceMIMEType()
1926         to see if the contained image is one that we can handle. However MIMETypeRegistry::isSupportedImageResourceMIMEType()
1927         only returns true if WebKit supports creating an image document for the specified MIME type. Disregarding
1928         the iOS motivated setting Settings::useImageDocumentForSubframePDF, PDFs and PostScripts do not create an
1929         image document when navigated to directly. Since we can support dragging PDF document images we need to
1930         query if MIMETypeRegistry::isPDFOrPostScriptMIMEType() in addition to querying MIMETypeRegistry::isSupportedImageResourceMIMEType().
1931         We need to do both such queries before falling back to using the main resource of the Web Archive as
1932         the image. Otherwise, we will cause an assertion failure if the main resource of the Web Archive is
1933         not an image document.
1934
1935         * Misc/WebNSPasteboardExtras.mm:
1936         (-[NSPasteboard _web_writePromisedRTFDFromArchive:containsImage:]):
1937
1938 2018-04-26  Per Arne Vollan  <pvollan@apple.com>
1939
1940         Disable content filtering in minimal simulator mode
1941         https://bugs.webkit.org/show_bug.cgi?id=185027
1942         <rdar://problem/39736091>
1943
1944         Reviewed by Jer Noble.
1945
1946         * Configurations/FeatureDefines.xcconfig:
1947
1948 2018-04-26  Andy VanWagoner  <thetalecrafter@gmail.com>
1949
1950         [INTL] Implement Intl.PluralRules
1951         https://bugs.webkit.org/show_bug.cgi?id=184312
1952
1953         Reviewed by JF Bastien.
1954
1955         Added Intl.PluralRules feature flag.
1956
1957         * Configurations/FeatureDefines.xcconfig:
1958
1959 2018-04-25  Jiewen Tan  <jiewen_tan@apple.com>
1960
1961         Remove access to keychain from the WebContent process
1962         https://bugs.webkit.org/show_bug.cgi?id=184428
1963         <rdar://problem/13150903>
1964
1965         Reviewed by Brent Fulgham.
1966
1967         This patch does the followings:
1968         1. Added necessary support to move HTMLKeygenElement's operation from WebCore space to Client space.
1969         2. Craft new SPI signedPublicKeyAndChallengeStringForWebView to supply HTMLKeygenElement with dummy data
1970         such that DumpRenderTree tests will not modify the underlying key store (e.g., the macOS Keychain).
1971
1972         * WebCoreSupport/WebChromeClient.h:
1973         * WebCoreSupport/WebChromeClient.mm:
1974         (WebChromeClient::signedPublicKeyAndChallengeString const):
1975         * WebView/WebUIDelegatePrivate.h:
1976
1977 2018-04-24  Jer Noble  <jer.noble@apple.com>
1978
1979         Don't add system framework paths to FRAMEWORK_SEARCH_PATHS
1980         https://bugs.webkit.org/show_bug.cgi?id=184786
1981
1982         Reviewed by Tim Horton.
1983
1984         * Configurations/WebKitLegacy.xcconfig:
1985         * MigrateHeaders.make:
1986
1987 2018-04-23  Daniel Bates  <dabates@apple.com>
1988
1989         Implement Same-Site cookies
1990         https://bugs.webkit.org/show_bug.cgi?id=159464
1991         <rdar://problem/27196358>
1992
1993         Reviewed by Brent Fulgham.
1994
1995         Pass the Same-Site info through the strategy.
1996
1997         * WebCoreSupport/WebPlatformStrategies.h:
1998         * WebCoreSupport/WebPlatformStrategies.mm:
1999         (WebPlatformStrategies::cookiesForDOM):
2000         (WebPlatformStrategies::setCookiesFromDOM):
2001         (WebPlatformStrategies::cookieRequestHeaderFieldValue):
2002         (WebPlatformStrategies::getRawCookies):
2003
2004 2018-04-23  Zalan Bujtas  <zalan@apple.com>
2005
2006         [LayoutFormattingContext] Initial commit.
2007         https://bugs.webkit.org/show_bug.cgi?id=184896
2008
2009         Reviewed by Antti Koivisto.
2010
2011         * Configurations/FeatureDefines.xcconfig:
2012
2013 2018-04-23  Daniel Bates  <dabates@apple.com>
2014
2015         Implement Same-Site cookies
2016         https://bugs.webkit.org/show_bug.cgi?id=159464
2017         <rdar://problem/27196358>
2018
2019         Reviewed by Brent Fulgham.
2020
2021         Pass the Same-Site info through the strategy.
2022
2023         * WebCoreSupport/WebPlatformStrategies.h:
2024         * WebCoreSupport/WebPlatformStrategies.mm:
2025         (WebPlatformStrategies::cookiesForDOM):
2026         (WebPlatformStrategies::setCookiesFromDOM):
2027         (WebPlatformStrategies::cookieRequestHeaderFieldValue):
2028         (WebPlatformStrategies::getRawCookies):
2029
2030 2018-04-20  Timothy Hatcher  <timothy@apple.com>
2031
2032         NULL dereference crash sometimes under [super initWithCoder:] in WebView
2033
2034         https://bugs.webkit.org/show_bug.cgi?id=184851
2035         rdar://problem/39611236
2036
2037         Reviewed by Tim Horton.
2038
2039         * WebView/WebView.mm:
2040         (-[WebView _commonInitializationWithFrameName:groupName:]):
2041         (-[WebView effectiveAppearanceDidChange]):
2042         Added a null check and call the code later in initialization.
2043
2044 2018-04-20  Tim Horton  <timothy_horton@apple.com>
2045
2046         Adjust geolocation feature flag
2047         https://bugs.webkit.org/show_bug.cgi?id=184856
2048
2049         Reviewed by Wenson Hsieh.
2050
2051         * Configurations/FeatureDefines.xcconfig:
2052
2053 2018-04-18  Jer Noble  <jer.noble@apple.com>
2054
2055         Don't put build products into WK_ALTERNATE_WEBKIT_SDK_PATH for engineering builds
2056         https://bugs.webkit.org/show_bug.cgi?id=184762
2057
2058         Reviewed by Dan Bernstein.
2059
2060         * Configurations/WebKitLegacy.xcconfig:
2061
2062 2018-04-20  Youenn Fablet  <youenn@apple.com>
2063
2064         Make PluginData cache its web visible plugins
2065         https://bugs.webkit.org/show_bug.cgi?id=184421
2066
2067         Reviewed by Chris Dumez.
2068
2069         * WebCoreSupport/WebPluginInfoProvider.h:
2070         * WebCoreSupport/WebPluginInfoProvider.mm:
2071         (WebPluginInfoProvider::pluginInfo):
2072         (WebPluginInfoProvider::webVisiblePluginInfo):
2073
2074 2018-04-19  Chris Dumez  <cdumez@apple.com>
2075
2076         Rename JSDOMWindowProxy to JSWindowProxy
2077         https://bugs.webkit.org/show_bug.cgi?id=184797
2078
2079         Reviewed by Sam Weinig.
2080
2081         Rename JSDOMWindowProxy to JSWindowProxy for consistency with WindowProxy.
2082
2083         * DOM/DOMUtility.mm:
2084         (createDOMWrapper):
2085         * WebView/WebFrame.mm:
2086         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
2087
2088 2018-04-19  David Kilzer  <ddkilzer@apple.com>
2089
2090         Enable Objective-C weak references
2091         <https://webkit.org/b/184789>
2092         <rdar://problem/39571716>
2093
2094         Reviewed by Dan Bernstein.
2095
2096         * Configurations/Base.xcconfig:
2097         (CLANG_ENABLE_OBJC_WEAK): Enable.
2098
2099 2018-04-18  Chris Dumez  <cdumez@apple.com>
2100
2101         Rename WindowProxyController to WindowProxy
2102         https://bugs.webkit.org/show_bug.cgi?id=184756
2103
2104         Reviewed by Sam Weinig.
2105
2106         Rename WindowProxyController to WindowProxy for clarity. When the IDL uses WindowProxy, the implementation
2107         needed use WindowProxyController type, which was a bit confusing.
2108
2109         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2110         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
2111         * WebView/WebFrame.mm:
2112         (-[WebFrame _attachScriptDebugger]):
2113
2114 2018-04-17  Jonathan Bedard  <jbedard@apple.com>
2115
2116         Unreviewed rollout of r230632. Regression in memory usage.
2117
2118         That bug tracked in https://bugs.webkit.org/show_bug.cgi?id=184569.
2119
2120         * WebView/WebPreferences.mm:
2121         (+[WebPreferences initialize]):
2122
2123 2018-04-17  Chris Dumez  <cdumez@apple.com>
2124
2125         REGRESSION (r229831): CMD-clicking an iCloud web app link unexpectedly opens that link in a new tab and the current tab
2126         https://bugs.webkit.org/show_bug.cgi?id=184678
2127         <rdar://problem/39422122>
2128
2129         Reviewed by Alex Christensen.
2130
2131         Add new parameter to dispatchDecidePolicyForNavigationAction.
2132
2133         * WebCoreSupport/WebFrameLoaderClient.h:
2134         * WebCoreSupport/WebFrameLoaderClient.mm:
2135         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
2136
2137 2018-04-13  Chris Dumez  <cdumez@apple.com>
2138
2139         Split WindowProxy handling out of ScriptController and into a new class owned by AbstractFrame
2140         https://bugs.webkit.org/show_bug.cgi?id=184591
2141
2142         Reviewed by Sam Weinig.
2143
2144         Split WindowProxy handling out of ScriptController and into a new class owned by AbstractFrame.
2145         RemoteFrames do not need a ScriptController but do need to maintain WindowProxies.
2146         This is work towards fixing Bug 184515.
2147
2148         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2149         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
2150         * WebView/WebFrame.mm:
2151         (-[WebFrame _attachScriptDebugger]):
2152
2153 2018-04-12  Antoine Quint  <graouts@apple.com>
2154
2155         [Web Animations] Turn CSS Animations and CSS Transitions as Web Animations on by default
2156         https://bugs.webkit.org/show_bug.cgi?id=184569
2157         <rdar://problem/38671301>
2158
2159         Reviewed by Jon Lee.
2160
2161         * WebView/WebPreferences.mm:
2162
2163 2018-04-05  Yusuke Suzuki  <utatane.tea@gmail.com>
2164
2165         [WTF] Remove StaticLock
2166         https://bugs.webkit.org/show_bug.cgi?id=184332
2167
2168         Reviewed by Mark Lam.
2169
2170         * DOM/DOMInternal.mm:
2171         (getDOMWrapper):
2172         (addDOMWrapper):
2173         (removeDOMWrapper):
2174
2175 2018-04-04  Brent Fulgham  <bfulgham@apple.com>
2176
2177         Failures from mach port reference handling should be fatal
2178         https://bugs.webkit.org/show_bug.cgi?id=184202
2179         <rdar://problem/37771114>
2180
2181         Reviewed by Anders Carlsson.
2182
2183         * Plugins/Hosted/NetscapePluginHostManager.mm:
2184         (WebKit::NetscapePluginHostManager::spawnPluginHost): Adopt new 'safe mach_port_t deallocation' function.
2185
2186 2018-04-03  Andy Estes  <aestes@apple.com>
2187
2188         [Mac] Prioritize file promises over filenames during drag and drop
2189         https://bugs.webkit.org/show_bug.cgi?id=184237
2190         <rdar://problem/38278076>
2191
2192         Reviewed by Wenson Hsieh.
2193
2194         * WebView/WebView.mm:
2195         (-[WebView performDragOperation:]):
2196
2197 2018-04-03  Chris Dumez  <cdumez@apple.com>
2198
2199         Drop MainFrame class
2200         https://bugs.webkit.org/show_bug.cgi?id=184191
2201
2202         Reviewed by Darin Adler.
2203
2204         Drop MainFrame class and move contents into Page / Frame since there is a 1:1
2205         relationship between the Page and the MainFrame.
2206
2207         This is ground work for introducing LocalFrame / RemoteFrame concepts.
2208
2209         * WebCoreSupport/WebDragClient.mm:
2210         * WebCoreSupport/WebFrameLoaderClient.mm:
2211         * WebCoreSupport/WebInspectorClient.mm:
2212         * WebCoreSupport/WebPlatformStrategies.mm:
2213         * WebCoreSupport/WebPluginInfoProvider.mm:
2214         * WebView/WebFrame.mm:
2215         * WebView/WebFrameView.mm:
2216         * WebView/WebHTMLView.mm:
2217         * WebView/WebView.mm:
2218
2219 2018-04-02  Jer Noble  <jer.noble@apple.com>
2220
2221         Enable Legacy EME for all WebKit & WebKitLegacy clients
2222         https://bugs.webkit.org/show_bug.cgi?id=184018
2223         <rdar://problem/34887387>
2224
2225         Reviewed by Eric Carlson.
2226
2227         * WebView/WebPreferences.mm:
2228         (+[WebPreferences initialize]):
2229
2230 2018-03-29  JF Bastien  <jfbastien@apple.com>
2231
2232         Use Forward.h instead of forward-declaring WTF::String
2233         https://bugs.webkit.org/show_bug.cgi?id=184172
2234         <rdar://problem/39026146>
2235
2236         Reviewed by Yusuke Suzuki.
2237
2238         As part of #184164 I'm changing WTF::String, and the forward
2239         declarations are just wrong because I'm making it templated. We
2240         should use Forward.h anyways, so do that instead.
2241
2242         * WebView/WebScriptDebugger.h:
2243
2244 2018-03-28  Brent Fulgham  <bfulgham@apple.com>
2245
2246         Protect against invalid mach ports returned by mach_port_request_notification
2247         https://bugs.webkit.org/show_bug.cgi?id=184106
2248         <rdar://problem/37865316>
2249
2250         Reviewed by Chris Dumez.
2251
2252         * Plugins/Hosted/NetscapePluginHostProxy.mm:
2253         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): Check return value from 'mach_port_request_notification'
2254         and clean up if it experienced an error.
2255         (WebKit::NetscapePluginHostProxy::processRequests): Drive-by-fix: Include formatted mach error message in logging.
2256
2257 2018-03-28  Brent Fulgham  <bfulgham@apple.com>
2258
2259         Avoid uninitialized mach ports
2260         https://bugs.webkit.org/show_bug.cgi?id=184090
2261         <rdar://problem/37261129>
2262
2263         Reviewed by Chris Dumez.
2264
2265         It is possible for mach_port_allocate to return an error, but we rarely check its return value. The value
2266         of the argument passed to mach_port_allocate is not guaranteed to be valid when it returns an error, so
2267         there is a potential for us to try to use invalid ports.
2268
2269         We should always check return values, and ensure that the mach port variables we seek to initialize are
2270         kept in a valid state.
2271
2272         Reviewed by Chris Dumez.
2273
2274         * Plugins/Hosted/NetscapePluginHostManager.h:
2275         * Plugins/Hosted/NetscapePluginHostManager.mm:
2276         (WebKit::NetscapePluginHostManager::hostForPlugin): Initialize port to a valid state, ASSERT if an invalid
2277         port is passed to an API function.
2278         (WebKit::NetscapePluginHostManager::spawnPluginHost): Ditto.
2279         (WebKit::NetscapePluginHostManager::initializeVendorPort): Ditto.
2280         * Plugins/Hosted/NetscapePluginHostProxy.h:
2281         * Plugins/Hosted/NetscapePluginHostProxy.mm:
2282         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): Ditto.
2283         (WebKit::NetscapePluginHostProxy::~NetscapePluginHostProxy): Ditto.
2284         (WebKit::NetscapePluginHostProxy::processRequests): Ditto.
2285         (WKPCStatusText): Ditto.
2286         (WKPCLoadURL): Ditto.
2287         (WKPCCancelLoadURL): Ditto.
2288         (WKPCInvalidateRect): Ditto.
2289         (WKPCGetScriptableNPObjectReply): Ditto.
2290         (WKPCBooleanReply): Ditto.
2291         (WKPCBooleanAndDataReply): Ditto.
2292         (WKPCInstantiatePluginReply): Ditto.
2293         (WKPCGetWindowNPObject): Ditto.
2294         (WKPCGetPluginElementNPObject): Ditto.
2295         (WKPCForgetBrowserObject): Ditto.
2296         (WKPCEvaluate): Ditto.
2297         (WKPCGetStringIdentifier): Ditto.
2298         (WKPCGetIntIdentifier): Ditto.
2299         (WKPCInvoke): Ditto.
2300         (WKPCInvokeDefault): Ditto.
2301         (WKPCConstruct): Ditto.
2302         (WKPCGetProperty): Ditto.
2303         (WKPCSetProperty): Ditto.
2304         (WKPCRemoveProperty): Ditto.
2305         (WKPCHasProperty): Ditto.
2306         (WKPCHasMethod): Ditto.
2307         (WKPCIdentifierInfo): Ditto.
2308         (WKPCEnumerate): Ditto.
2309         (WKPCSetMenuBarVisible): Ditto.
2310         (WKPCSetFullscreenWindowIsShowing): Ditto.
2311         (WKPCSetModal): Ditto.
2312         (WKPCGetCookies): Ditto.
2313         (WKPCGetProxy): Ditto.
2314         (WKPCSetCookies): Ditto.
2315         (WKPCGetAuthenticationInfo): Ditto.
2316         (WKPCConvertPoint): Ditto.
2317         (WKPCLayerHostingModeChanged): Ditto.
2318         (WKPCSetException): Ditto.
2319
2320 2018-03-26  Tim Horton  <timothy_horton@apple.com>
2321
2322         Adopt WK_ALTERNATE_FRAMEWORKS_DIR in WebKit
2323         https://bugs.webkit.org/show_bug.cgi?id=184030
2324         <rdar://problem/38895281>
2325
2326         Reviewed by Dan Bernstein.
2327
2328         * Configurations/Base.xcconfig:
2329
2330 2018-03-26  Chris Dumez  <cdumez@apple.com>
2331
2332         Use SecurityOriginData more consistently in Service Worker code
2333         https://bugs.webkit.org/show_bug.cgi?id=183969
2334
2335         Reviewed by Darin Adler.
2336
2337         Use SecurityOrigin::data() instead of SecurityOriginData::fromSecurityOrigin().
2338
2339         * Storage/WebDatabaseManager.mm:
2340         (-[WebDatabaseManager databasesWithOrigin:]):
2341         (-[WebDatabaseManager deleteOrigin:]):
2342         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
2343         * Storage/WebDatabaseQuotaManager.mm:
2344         (-[WebDatabaseQuotaManager usage]):
2345         (-[WebDatabaseQuotaManager quota]):
2346         (-[WebDatabaseQuotaManager setQuota:]):
2347         * Storage/WebStorageManager.mm:
2348         (-[WebStorageManager deleteOrigin:]):
2349         * WebCoreSupport/WebSecurityOrigin.mm:
2350         (-[WebSecurityOrigin databaseIdentifier]):
2351         (-[WebSecurityOrigin usage]):
2352         (-[WebSecurityOrigin quota]):
2353         (-[WebSecurityOrigin setQuota:]):
2354
2355 2018-03-26  Brent Fulgham  <bfulgham@apple.com>
2356
2357         Warn against cookie access in the WebContent process using ProcessPrivilege assertions
2358         https://bugs.webkit.org/show_bug.cgi?id=183911
2359         <rdar://problem/38762306>
2360
2361         Reviewed by Youenn Fablet.
2362
2363         Initialize the ProcessPrivilege and Cookie API access levels for single-process use.
2364
2365         * WebView/WebView.mm:
2366         (+[WebView initialize]):
2367
2368 2018-03-26  Alex Christensen  <achristensen@webkit.org>
2369
2370         Merge ResourceHandleClient::willCacheResponseAsync with ResourceHandleClient::willCacheResponse
2371         https://bugs.webkit.org/show_bug.cgi?id=183965
2372
2373         Reviewed by Chris Dumez.
2374
2375         * WebCoreSupport/WebFrameLoaderClient.h:
2376         * WebCoreSupport/WebFrameLoaderClient.mm:
2377         (WebFrameLoaderClient::willCacheResponse const):
2378
2379 2018-03-25  Commit Queue  <commit-queue@webkit.org>
2380
2381         Unreviewed, rolling out r229954.
2382         https://bugs.webkit.org/show_bug.cgi?id=184000
2383
2384         Caused many layout tests to crash on Apple High Sierra,
2385         Sierra, iOS Simulator and GTK Linux Debug test bots (Requested
2386         by dydz on #webkit).
2387
2388         Reverted changeset:
2389
2390         "Use SecurityOriginData more consistently in Service Worker
2391         code"
2392         https://bugs.webkit.org/show_bug.cgi?id=183969
2393         https://trac.webkit.org/changeset/229954
2394
2395 2018-03-24  Chris Dumez  <cdumez@apple.com>
2396
2397         Use SecurityOriginData more consistently in Service Worker code
2398         https://bugs.webkit.org/show_bug.cgi?id=183969
2399
2400         Reviewed by Darin Adler.
2401
2402         Use SecurityOrigin::data() instead of SecurityOriginData::fromSecurityOrigin().
2403
2404         * Storage/WebDatabaseManager.mm:
2405         (-[WebDatabaseManager databasesWithOrigin:]):
2406         (-[WebDatabaseManager deleteOrigin:]):
2407         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
2408         * Storage/WebDatabaseQuotaManager.mm:
2409         (-[WebDatabaseQuotaManager usage]):
2410         (-[WebDatabaseQuotaManager quota]):
2411         (-[WebDatabaseQuotaManager setQuota:]):
2412         * Storage/WebStorageManager.mm:
2413         (-[WebStorageManager deleteOrigin:]):
2414         * WebCoreSupport/WebSecurityOrigin.mm:
2415         (-[WebSecurityOrigin databaseIdentifier]):
2416         (-[WebSecurityOrigin usage]):
2417         (-[WebSecurityOrigin quota]):
2418         (-[WebSecurityOrigin setQuota:]):
2419
2420 2018-03-24  Timothy Horton  <timothy_horton@apple.com>
2421
2422         Fix the build
2423
2424         * WebView/WebView.mm:
2425
2426 2018-03-23  Tim Horton  <timothy_horton@apple.com>
2427
2428         Fix the build with no pasteboard
2429         https://bugs.webkit.org/show_bug.cgi?id=183973
2430
2431         Reviewed by Dan Bernstein.
2432
2433         * Configurations/FeatureDefines.xcconfig:
2434         * WebView/WebView.mm:
2435         (-[WebView _requestStartDataInteraction:globalPosition:]):
2436         (-[WebView _getDataInteractionData]):
2437         (-[WebView _dataOperationTextIndicator]):
2438         (-[WebView _dragSourceAction]):
2439         (-[WebView _draggedLinkTitle]):
2440         (-[WebView _draggedLinkURL]):
2441         (-[WebView _draggedElementBounds]):
2442         (-[WebView _enteredDataInteraction:client:global:operation:]):
2443         (-[WebView _updatedDataInteraction:client:global:operation:]):
2444         (-[WebView _exitedDataInteraction:client:global:operation:]):
2445         (-[WebView _performDataInteraction:client:global:operation:]):
2446         (-[WebView _tryToPerformDataInteraction:client:global:operation:]):
2447         (-[WebView _endedDataInteraction:global:]):
2448         (-[WebView _dataInteractionCaretRect]):
2449         * WebView/WebViewPrivate.h:
2450
2451 2018-03-23  Tim Horton  <timothy_horton@apple.com>
2452
2453         Adopt WK_ALTERNATE_FRAMEWORKS_DIR in WebKitLegacy and update install name
2454         https://bugs.webkit.org/show_bug.cgi?id=183960
2455         <rdar://problem/38812356>
2456
2457         Reviewed by Dan Bernstein.
2458
2459         * Configurations/WebKitLegacy.xcconfig:
2460
2461 2018-03-23  Tim Horton  <timothy_horton@apple.com>
2462
2463         Introduce and adopt HAVE(AUDIO_TOOLBOX_AUDIO_SESSION)
2464         https://bugs.webkit.org/show_bug.cgi?id=183954
2465         <rdar://problem/38808858>
2466
2467         Reviewed by Dan Bernstein.
2468
2469         * WebView/WebPreferences.mm:
2470         (-[WebPreferences setAudioSessionCategoryOverride:]):
2471
2472 2018-03-23  Tim Horton  <timothy_horton@apple.com>
2473
2474         Adopt WK_PLATFORM_NAME in WebKitLegacy
2475         https://bugs.webkit.org/show_bug.cgi?id=183948
2476         <rdar://problem/38803908>
2477
2478         Reviewed by Dan Bernstein.
2479
2480         * Configurations/WebKitLegacy.xcconfig:
2481         * MigrateHeaders.make:
2482         * postprocess-headers.sh:
2483
2484 2018-03-23  Brady Eidson  <beidson@apple.com>
2485
2486         Go to back/forward list items after a process-swapped navigation.
2487         <rdar://problem/38690544> and https://bugs.webkit.org/show_bug.cgi?id=183920
2488
2489         Reviewed by Andy Estes.
2490
2491         * WebView/WebView.mm:
2492         (-[WebView _loadBackForwardListFromOtherView:]):
2493         (-[WebView goToBackForwardItem:]):
2494
2495 2018-03-22  Tim Horton  <timothy_horton@apple.com>
2496
2497         Improve readability of WebCore's OTHER_LDFLAGS
2498         https://bugs.webkit.org/show_bug.cgi?id=183909
2499         <rdar://problem/38760992>
2500
2501         Reviewed by Dan Bernstein.
2502
2503         * Configurations/Base.xcconfig:
2504         * Configurations/FeatureDefines.xcconfig:
2505
2506 2018-03-20  Tim Horton  <timothy_horton@apple.com>
2507
2508         Enable the minimal simulator feature flag when appropriate
2509         https://bugs.webkit.org/show_bug.cgi?id=183807
2510
2511         Reviewed by Dan Bernstein.
2512
2513         * Configurations/FeatureDefines.xcconfig:
2514
2515 2018-03-20  Tim Horton  <timothy_horton@apple.com>
2516
2517         Add and adopt WK_PLATFORM_NAME and adjust default feature defines
2518         https://bugs.webkit.org/show_bug.cgi?id=183758
2519         <rdar://problem/38017644>
2520
2521         Reviewed by Dan Bernstein.
2522
2523         * Configurations/FeatureDefines.xcconfig:
2524
2525 2018-03-19  Megan Gardner  <megan_gardner@apple.com>
2526
2527         Clear style colors when setting default appearance
2528         https://bugs.webkit.org/show_bug.cgi?id=183759
2529
2530         Reviewed by Tim Horton.
2531
2532         Colors are cached and need to be cleared and recalculated.
2533         Refactor to do all style recalcs together.
2534
2535         * WebView/WebView.mm:
2536         (-[WebView _setDefaultAppearanceAndClearStyle]):
2537         (-[WebView _setUseSystemAppearance:]):
2538         (-[WebView effectiveAppearanceDidChange]):
2539
2540 2018-03-19  Jiewen Tan  <jiewen_tan@apple.com>
2541
2542         Unreviewed, another quick fix for r229699
2543
2544         Restricts ENABLE_WEB_AUTHN to only macOS and iOS.
2545
2546         * Configurations/FeatureDefines.xcconfig:
2547
2548 2018-03-16  Megan Gardner  <megan_gardner@apple.com>
2549
2550         Ensure that style is updated when the effective appearance changes
2551         https://bugs.webkit.org/show_bug.cgi?id=183690
2552         <rdar://problem/38385900>
2553
2554         Reviewed by Tim Horton and Wenson Hsieh.
2555
2556         Respond to and respect the effective appearance changing.
2557
2558         * WebView/WebView.mm:
2559         (-[WebView _setUseSystemAppearance:]):
2560         (-[WebView effectiveAppearanceDidChange]):
2561
2562 2018-03-15  Megan Gardner  <megan_gardner@apple.com>
2563
2564         Create MediaQueryParserContext to provide additional context for the evaluation of media queries
2565         https://bugs.webkit.org/show_bug.cgi?id=183677
2566
2567         Reviewed by Tim Horton.
2568
2569         We need additional context for parsing media queries to make sure they are parsed correctly and valid.
2570
2571         * DOM/DOM.mm:
2572         (-[DOMHTMLLinkElement _mediaQueryMatches]):
2573
2574 2018-03-14  Tim Horton  <timothy_horton@apple.com>
2575
2576         Fix the build after r229567
2577
2578         * Configurations/FeatureDefines.xcconfig:
2579
2580 2018-03-12  Tim Horton  <timothy_horton@apple.com>
2581
2582         Stop using SDK conditionals to control feature definitions
2583         https://bugs.webkit.org/show_bug.cgi?id=183430
2584         <rdar://problem/38251619>
2585
2586         Reviewed by Dan Bernstein.
2587
2588         * Configurations/FeatureDefines.xcconfig:
2589         * Configurations/WebKitTargetConditionals.xcconfig: Renamed.
2590
2591 2018-03-12  Yoav Weiss  <yoav@yoav.ws>
2592
2593         Runtime flag for link prefetch and remove link subresource.
2594         https://bugs.webkit.org/show_bug.cgi?id=183540
2595
2596         Reviewed by Chris Dumez.
2597
2598         Remove the LINK_PREFETCH build time flag.
2599
2600         * Configurations/FeatureDefines.xcconfig:
2601
2602 2018-03-12  Javier Fernandez  <jfernandez@igalia.com>
2603
2604         Remove GridLayout runtime flag
2605         https://bugs.webkit.org/show_bug.cgi?id=183484
2606
2607         Reviewed by Myles C. Maxfield.
2608
2609         The Grid Layout feature has been enabled by default for almost a
2610         year, so I think it's time to remove the runtime flag and the
2611
2612         * WebView/WebPreferenceKeysPrivate.h:
2613         * WebView/WebPreferences.mm:
2614         (+[WebPreferences initialize]):
2615         * WebView/WebPreferencesPrivate.h:
2616         * WebView/WebView.mm:
2617         (-[WebView _preferencesChanged:]):
2618
2619 2018-03-12  Antoine Quint  <graouts@apple.com>
2620
2621         [Web Animations] Implement CSS Animations and CSS Transitions as Web Animations
2622         https://bugs.webkit.org/show_bug.cgi?id=183504
2623         <rdar://problem/38372965>
2624
2625         Reviewed by Dean Jackson and Jon Lee.
2626
2627         Add the missing WebKitLegacy support the cssAnimationsAndCSSTransitionsBackedByWebAnimationsEnabled flag
2628         which is required for the matching <!-- webkit-test-runner --> flag to work in DumpRenderTree.
2629
2630         * WebView/WebPreferenceKeysPrivate.h:
2631         * WebView/WebPreferences.mm:
2632         (+[WebPreferences initialize]):
2633         (-[WebPreferences setModernMediaControlsEnabled:]):
2634         (-[WebPreferences cssAnimationsAndCSSTransitionsBackedByWebAnimationsEnabled]):
2635         (-[WebPreferences setCSSAnimationsAndCSSTransitionsBackedByWebAnimationsEnabled:]):
2636         * WebView/WebPreferencesPrivate.h:
2637         * WebView/WebView.mm:
2638         (-[WebView _preferencesChanged:]):
2639
2640 2018-03-10  Megan Gardner  <megan_gardner@apple.com>
2641
2642         Media query for default appearance
2643         https://bugs.webkit.org/show_bug.cgi?id=183539
2644         <rdar://problem/38326388>
2645
2646         Reviewed by Tim Horton.
2647
2648         Write a media query to evaluate appearance.
2649
2650         * WebView/WebView.mm:
2651         (-[WebView _commonInitializationWithFrameName:groupName:]):
2652         (-[WebView _setUseSystemAppearance:]):
2653
2654 2018-03-09  Andy Estes  <aestes@apple.com>
2655
2656         [Mac] WebKit fails to receive file promises when the embedding app is sandboxed
2657         https://bugs.webkit.org/show_bug.cgi?id=183489
2658         <rdar://problem/38267517>
2659
2660         WebKitLegacy calls -[NSFilePromiseReceiver receivePromisedFilesAtDestination:...] with
2661         NSTemporaryDirectory() as the destination for receiving file promise drops. AppKit attempts
2662         to issue a sandbox extension for this directory, but for security reasons App Sandbox
2663         refuses to do so for NSTemporaryDirectory() itself. As a result, AppKit will call our reader
2664         block with a nil error and a valid file URL, but no file will actually exist at that URL.
2665
2666         In order for App Sandbox to grant issuing the sandbox extension needed by AppKit, we need to
2667         use some other destination directory. This patch uses FileSystem::createTemporaryDirectory()
2668         to securely create a unique temporary directory inside NSTemporaryDirectory() for use as the
2669         drop destination.
2670
2671         Reviewed by Wenson Hsieh.
2672
2673         * WebView/WebView.mm:
2674         (-[WebView performDragOperation:]):
2675
2676 2018-03-08  Megan Gardner  <megan_gardner@apple.com>
2677
2678         Allow WebViews to disable system appearance
2679         https://bugs.webkit.org/show_bug.cgi?id=183418
2680         <rdar://problem/36975642>
2681
2682         Reviewed by Tim Horton.
2683
2684         Allow webviews to choose whether or not to follow the default system appearance.
2685
2686         * WebView/WebView.mm:
2687         (-[WebView _setUseSystemAppearance:]):
2688         (-[WebView _useSystemAppearance]):
2689         * WebView/WebViewPrivate.h:
2690
2691 2018-03-08  Youenn Fablet  <youenn@apple.com>
2692
2693         libwebrtc update broke internal builds
2694         https://bugs.webkit.org/show_bug.cgi?id=183454
2695
2696         Reviewed by Eric Carlson.
2697
2698         * Configurations/WebKitLegacy.xcconfig:
2699
2700 2018-03-08  Chris Dumez  <cdumez@apple.com>
2701
2702         Possible null dereference of the page under WebFrameNetworkingContext::storageSession()
2703         https://bugs.webkit.org/show_bug.cgi?id=183455
2704         <rdar://problem/38191749>
2705
2706         Reviewed by Youenn Fablet.
2707
2708         Add a null check for the page as we have evidence from crashes that it can be null.
2709         Other functions in WebFrameNetworkingContext already null check the page as well,
2710         not just the frame so this is consistent.
2711
2712         * WebCoreSupport/WebFrameNetworkingContext.mm:
2713         (WebFrameNetworkingContext::storageSession const):
2714
2715 2018-03-08  Yusuke Suzuki  <utatane.tea@gmail.com>
2716
2717         [JSC] Add inherits<T>(VM&) leveraging JSCast fast path
2718         https://bugs.webkit.org/show_bug.cgi?id=183429
2719
2720         Reviewed by Mark Lam.
2721
2722         * DOM/DOM.mm:
2723         (+[DOMNode _nodeFromJSWrapper:]):
2724         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2725         (WebKit::NetscapePluginInstanceProxy::retainLocalObject):
2726         (WebKit::NetscapePluginInstanceProxy::releaseLocalObject):
2727         * Plugins/Hosted/ProxyInstance.mm:
2728         (WebKit::ProxyInstance::invokeMethod):
2729         * WebView/WebView.mm:
2730         (aeDescFromJSValue):
2731
2732 2018-03-08  Tim Horton  <timothy_horton@apple.com>
2733
2734         Stop linking ApplicationServices directly
2735         https://bugs.webkit.org/show_bug.cgi?id=182867
2736         <rdar://problem/38252142>
2737
2738         Reviewed by Alex Christensen.
2739
2740         The frameworks that we use that live inside ApplicationServices
2741         have mostly moved out, so import them directly.
2742
2743         * Carbon/CarbonUtils.h:
2744         * WebKitPrefix.h:
2745         * WebView/WebHTMLView.mm:
2746         * WebView/WebPDFView.mm:
2747
2748 2018-03-07  Tim Horton  <timothy_horton@apple.com>
2749
2750         Sort and separate FeatureDefines.xcconfig
2751         https://bugs.webkit.org/show_bug.cgi?id=183427
2752
2753         Reviewed by Dan Bernstein.
2754
2755         * Configurations/FeatureDefines.xcconfig:
2756         Sort and split FeatureDefines into paragraphs
2757         (to make it easier to sort later).
2758
2759 2018-03-07  Youenn Fablet  <youenn@apple.com>
2760
2761         Match unsupported plugins based on domains and not origin
2762         https://bugs.webkit.org/show_bug.cgi?id=183384
2763
2764         Reviewed by Chris Dumez.
2765
2766         * WebCoreSupport/WebPluginInfoProvider.h:
2767         * WebCoreSupport/WebPluginInfoProvider.mm:
2768         (WebPluginInfoProvider::getPluginInfo):
2769         (WebPluginInfoProvider::getWebVisiblePluginInfo):
2770
2771 2018-03-05  Andy Estes  <aestes@apple.com>
2772
2773         [Mac] Teach WebCore::Pasteboard about file promise drags
2774         https://bugs.webkit.org/show_bug.cgi?id=183314
2775         <rdar://problem/38105493>
2776
2777         Reviewed by Darin Adler.
2778
2779         Added a FIXME comment.
2780
2781         * WebView/WebView.mm:
2782         (-[WebView performDragOperation:]):
2783
2784 2018-03-04  Yusuke Suzuki  <utatane.tea@gmail.com>
2785
2786         [WTF] Move currentCPUTime and sleep(Seconds) to CPUTime.h and Seconds.h respectively
2787         https://bugs.webkit.org/show_bug.cgi?id=183312
2788
2789         Reviewed by Mark Lam.
2790
2791         Remove wtf/CurrentTime.h include pragma.
2792
2793         * WebView/WebFrame.mm:
2794         * WebView/WebPDFView.mm:
2795
2796 2018-03-04  Tim Horton  <timothy_horton@apple.com>
2797
2798         Make !ENABLE(DATA_DETECTION) iOS build actually succeed
2799         https://bugs.webkit.org/show_bug.cgi?id=183283
2800         <rdar://problem/38062148>
2801
2802         Reviewed by Sam Weinig.
2803
2804         * Configurations/FeatureDefines.xcconfig:
2805
2806 2018-02-28  Alex Christensen  <achristensen@webkit.org>
2807
2808         Reduce use of NetworkingContext in WebKit
2809         https://bugs.webkit.org/show_bug.cgi?id=183213
2810
2811         Reviewed by Brady Eidson.
2812
2813         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2814         (WebKit::NetscapePluginInstanceProxy::getProxy):
2815         * Plugins/WebNetscapePluginView.mm:
2816         (-[WebNetscapePluginView getVariable:forURL:value:length:]):
2817
2818 2018-02-17  Darin Adler  <darin@apple.com>
2819
2820         Prepare for ExtendedColor changes (first step)
2821         https://bugs.webkit.org/show_bug.cgi?id=182904
2822
2823         Reviewed by Sam Weinig.
2824
2825         * Misc/WebKitNSStringExtras.mm:
2826         (-[NSString _web_drawAtPoint:font:textColor:]): Use colorFromNSColor.
2827
2828 2018-02-22  Yusuke Suzuki  <utatane.tea@gmail.com>
2829
2830         Remove currentTime() / currentTimeMS()
2831         https://bugs.webkit.org/show_bug.cgi?id=183052
2832
2833         Reviewed by Mark Lam.
2834
2835         * WebCoreSupport/WebFrameLoaderClient.h:
2836         * WebCoreSupport/WebFrameLoaderClient.mm:
2837         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
2838
2839 2018-02-16  Youenn Fablet  <youenn@apple.com>
2840
2841         Allow specifying which plug-ins are supported
2842         https://bugs.webkit.org/show_bug.cgi?id=182748
2843
2844         Reviewed by Chris Dumez.
2845
2846         * WebCoreSupport/WebPluginInfoProvider.h:
2847         * WebCoreSupport/WebPluginInfoProvider.mm:
2848         (WebPluginInfoProvider::getPluginInfo):
2849         (WebPluginInfoProvider::getWebVisiblePluginInfo):
2850
2851 2018-02-16  Brent Fulgham  <bfulgham@apple.com>
2852
2853         [Cocoa][WebKitLegacy] REGRESSION(r221559): Coda 2 crashes when switching views
2854         https://bugs.webkit.org/show_bug.cgi?id=182882
2855         <rdar://problem/35672661>
2856
2857         Reviewed by Dan Bernstein.
2858
2859         Make sure the smart pointer hold the collection of subviews lives at least as
2860         long as the loop using it.
2861
2862         * WebView/WebHTMLView.mm:
2863         (-[WebHTMLView _web_makePluginSubviewsPerformSelector:withObject:]):
2864
2865 2018-02-14  Daniel Bates  <dabates@apple.com>
2866
2867         Disallow cross-origin subresources from asking for credentials
2868         https://bugs.webkit.org/show_bug.cgi?id=182579
2869         <rdar://problem/36162271>
2870
2871         Reviewed by Andy Estes.
2872
2873         Add a private preference to toggle allowing non-mixed content cross-origin subresources to load.
2874         DumpRenderTree toggles this preference when it sees the test option allowCrossOriginSubresourcesToAskForCredential.
2875
2876         * WebView/WebPreferenceKeysPrivate.h:
2877         * WebView/WebPreferences.mm:
2878         (+[WebPreferences initialize]):
2879         (-[WebPreferences allowCrossOriginSubresourcesToAskForCredentials]):
2880         (-[WebPreferences setAllowCrossOriginSubresourcesToAskForCredentials:]):
2881         * WebView/WebPreferencesPrivate.h:
2882         * WebView/WebView.mm:
2883         (-[WebView _preferencesChanged:]):
2884
2885 2018-02-14  Ross Kirsling  <ross.kirsling@sony.com>
2886
2887         Remove ForwardingHeaders directory from WebKitLegacy/mac.
2888         https://bugs.webkit.org/show_bug.cgi?id=182738
2889
2890         Reviewed by Darin Adler.
2891
2892         * ForwardingHeaders/collector/handles/Global.h: Removed.
2893         * ForwardingHeaders/debugger/DebuggerCallFrame.h: Removed.
2894         * ForwardingHeaders/runtime/Completion.h: Removed.
2895         * ForwardingHeaders/runtime/Error.h: Removed.
2896         * ForwardingHeaders/runtime/JSCJSValue.h: Removed.
2897         * ForwardingHeaders/runtime/JSFunction.h: Removed.
2898         * ForwardingHeaders/runtime/JSLock.h: Removed.
2899         * ForwardingHeaders/runtime/JSObject.h: Removed.
2900         * ForwardingHeaders/runtime/JSString.h: Removed.
2901         * ForwardingHeaders/runtime/Protect.h: Removed.
2902         * ForwardingHeaders/runtime/SymbolTable.h: Removed.
2903
2904 2018-02-09  Per Arne Vollan  <pvollan@apple.com>
2905
2906         Follow-up fixes after moving WebVideoFullscreenController from WebCore to WebKitLegacy.
2907         https://bugs.webkit.org/show_bug.cgi?id=182641
2908
2909         Reviewed by Dan Bernstein.
2910
2911         Remove incorrect use of WEBCORE_EXPORT and namespace WebCore after the files were moved in
2912         https://trac.webkit.org/changeset/228308.
2913
2914         * WebView/WebVideoFullscreenController.h:
2915         * WebView/WebVideoFullscreenHUDWindowController.mm:
2916         * WebView/WebWindowAnimation.h:
2917         * WebView/WebWindowAnimation.mm:
2918         (WebCore::WebWindowAnimationDurationFromDuration): Deleted.
2919         (WebCore::scaledRect): Deleted.
2920         (WebCore::squaredDistance): Deleted.
2921
2922 2018-02-09  Per Arne Vollan  <pvollan@apple.com>
2923
2924         Unreviewed 32-bit build fix after <https://trac.webkit.org/changeset/228308>.
2925
2926         * WebView/WebWindowAnimation.mm:
2927         (-[WebWindowScaleAnimation additionalDurationNeededToReachFinalFrame]):
2928
2929 2018-02-08  Per Arne Vollan  <pvollan@apple.com>
2930
2931         Move WebVideoFullscreenController from WebCore to WebKitLegacy.
2932         https://bugs.webkit.org/show_bug.cgi?id=182615
2933
2934         Reviewed by Eric Carlson.
2935
2936         It is only used by WK1. Also there are a few references to NSApp in WebVideoFullscreenController.mm.
2937         Ideally, we should not reference NSApp in WebCore.
2938
2939         * WebView/WebFullScreenController.mm:
2940         * WebView/WebVideoFullscreenController.h: Copied from Source/WebCore/platform/mac/WebVideoFullscreenController.h.
2941         * WebView/WebVideoFullscreenController.mm: Copied from Source/WebCore/platform/mac/WebVideoFullscreenController.mm.
2942         * WebView/WebVideoFullscreenHUDWindowController.h: Copied from Source/WebCore/platform/mac/WebVideoFullscreenHUDWindowController.h.
2943         * WebView/WebVideoFullscreenHUDWindowController.mm: Copied from Source/WebCore/platform/mac/WebVideoFullscreenHUDWindowController.mm.
2944         * WebView/WebView.mm:
2945         * WebView/WebWindowAnimation.h: Copied from Source/WebCore/platform/mac/WebWindowAnimation.h.
2946         * WebView/WebWindowAnimation.mm: Copied from Source/WebCore/platform/mac/WebWindowAnimation.mm.
2947
2948 2018-01-13  Darin Adler  <darin@apple.com>
2949
2950         Event improvements
2951         https://bugs.webkit.org/show_bug.cgi?id=179591
2952
2953         Reviewed by Chris Dumez.
2954
2955         * DOM/DOMWheelEvent.mm:
2956         (-[DOMWheelEvent initWheelEvent:wheelDeltaY:view:screenX:screenY:clientX:clientY:ctrlKey:altKey:shiftKey:metaKey:]):
2957         Call initWebKitWheelEvent.
2958
2959         * Plugins/Hosted/NetscapePluginInstanceProxy.mm: Removed include of ScriptValue.h.
2960         * WebCoreSupport/WebInspectorClient.mm: Ditto.
2961         * WebView/WebFrame.mm: Ditto.
2962
2963         * WebView/WebHTMLView.mm:
2964         (-[WebHTMLView _interpretKeyEvent:savingCommands:]): Updated for name change from keyEvent to
2965         underlyingPlatformEvent.
2966         (-[WebHTMLView _handleEditingKeyEvent:]): Ditto.
2967
2968         * WebView/WebScriptWorld.mm:
2969         (+[WebScriptWorld scriptWorldForGlobalContext:]): Pass reference to currentWorld function.
2970
2971         * WebView/WebView.mm: Removed include of ScriptValue.h.
2972
2973 2018-02-06  Don Olmstead  <don.olmstead@sony.com>
2974
2975         Remove WebCore/ForwardingHeaders directory
2976         https://bugs.webkit.org/show_bug.cgi?id=182347
2977
2978         Reviewed by Keith Miller.
2979
2980         * Carbon/CarbonWindowAdapter.mm:
2981         * DOM/WebDOMOperations.mm:
2982         * History/WebBackForwardList.mm:
2983         * History/WebHistoryItem.mm:
2984         * Misc/WebCache.mm:
2985         * Misc/WebElementDictionary.mm:
2986         * Misc/WebIconDatabase.mm:
2987         * Misc/WebStringTruncator.mm:
2988         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2989         * Plugins/Hosted/ProxyInstance.mm:
2990         * Plugins/Hosted/ProxyRuntimeObject.mm:
2991         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
2992         * Plugins/WebBaseNetscapePluginView.mm:
2993         * Plugins/WebBasePluginPackage.mm:
2994         * Plugins/WebNetscapePluginStream.mm:
2995         * Plugins/WebNetscapePluginView.mm:
2996         * Plugins/WebPluginController.mm:
2997         * WebCoreSupport/WebEditorClient.mm:
2998         * WebCoreSupport/WebFrameLoaderClient.mm:
2999         * WebCoreSupport/WebInspectorClient.h:
3000         * WebCoreSupport/WebInspectorClient.mm:
3001         * WebView/WebDataSource.mm:
3002         * WebView/WebFrame.mm:
3003         * WebView/WebHTMLRepresentation.mm:
3004         * WebView/WebHTMLView.mm:
3005         * WebView/WebPreferences.mm:
3006         * WebView/WebScriptDebugDelegate.mm:
3007         * WebView/WebScriptDebugger.h:
3008         * WebView/WebTextIterator.mm:
3009         * WebView/WebView.mm:
3010         * WebView/WebViewData.mm:
3011
3012 2018-01-30  Don Olmstead  <don.olmstead@sony.com>
3013
3014         JSExports.h should be included as <JavaScriptCore/JSExportMacros.h>
3015         https://bugs.webkit.org/show_bug.cgi?id=182312
3016
3017         Reviewed by Michael Catanzaro.
3018
3019         * WebKitPrefix.h:
3020
3021 2018-01-29  Jiewen Tan  <jiewen_tan@apple.com>
3022
3023         [WebAuthN] Add a compile-time feature flag
3024         https://bugs.webkit.org/show_bug.cgi?id=182211
3025         <rdar://problem/36936365>
3026
3027         Reviewed by Brent Fulgham.
3028
3029         * Configurations/FeatureDefines.xcconfig:
3030
3031 2018-01-27  Dan Bernstein  <mitz@apple.com>
3032
3033         HaveInternalSDK includes should be "#include?"
3034         https://bugs.webkit.org/show_bug.cgi?id=179670
3035
3036         * Configurations/Base.xcconfig:
3037
3038 2018-01-24  Alex Christensen  <achristensen@webkit.org>
3039
3040         Remove unused QTKit preference
3041         https://bugs.webkit.org/show_bug.cgi?id=181968
3042
3043         Reviewed by Alexey Proskuryakov.
3044
3045         * WebView/WebPreferenceKeysPrivate.h:
3046         * WebView/WebPreferences.mm:
3047         (+[WebPreferences initialize]):
3048         (-[WebPreferences setQTKitEnabled:]): Deleted.
3049         (-[WebPreferences isQTKitEnabled]): Deleted.
3050         * WebView/WebPreferencesPrivate.h:
3051         * WebView/WebView.mm:
3052         (-[WebView _preferencesChanged:]):
3053
3054 2018-01-23  Wenson Hsieh  <wenson_hsieh@apple.com>
3055
3056         Harden against layout passes triggered when iterating through HTMLFormElement::associatedElements
3057         https://bugs.webkit.org/show_bug.cgi?id=182037
3058         <rdar://problem/36747812>
3059
3060         Reviewed by Ryosuke Niwa.
3061
3062         Rename associatedElements() to unsafeAssociatedElements(), and add ScriptDisallowedScopes. See WebCore ChangeLog
3063         for more details.
3064
3065         * WebView/WebHTMLRepresentation.mm:
3066         (-[WebHTMLRepresentation elementWithName:inForm:]):
3067         (-[WebHTMLRepresentation controlsInForm:]):
3068
3069 2018-01-23  Alex Christensen  <achristensen@webkit.org>
3070
3071         Use CompletionHandlers for ResourceHandleClient::didReceiveResponseAsync
3072         https://bugs.webkit.org/show_bug.cgi?id=181961
3073
3074         Reviewed by Michael Catanzaro.
3075
3076         * WebView/WebPreferences.mm:
3077
3078 2018-01-23  Commit Queue  <commit-queue@webkit.org>
3079
3080         Unreviewed, rolling out r227437.
3081         https://bugs.webkit.org/show_bug.cgi?id=182011
3082
3083         broke build (Requested by alexchristensen on #webkit).
3084
3085         Reverted changeset:
3086
3087         "Remove unused QTKit preference"
3088         https://bugs.webkit.org/show_bug.cgi?id=181968
3089         https://trac.webkit.org/changeset/227437
3090
3091 2018-01-23  Alex Christensen  <achristensen@webkit.org>
3092
3093         Remove unused QTKit preference
3094         https://bugs.webkit.org/show_bug.cgi?id=181968
3095
3096         Reviewed by Alexey Proskuryakov.
3097
3098         * WebView/WebPreferenceKeysPrivate.h:
3099         * WebView/WebPreferences.mm:
3100         (+[WebPreferences initialize]):
3101         (-[WebPreferences setQTKitEnabled:]): Deleted.
3102         (-[WebPreferences isQTKitEnabled]): Deleted.
3103         * WebView/WebPreferencesPrivate.h:
3104         * WebView/WebView.mm:
3105         (-[WebView _preferencesChanged:]):
3106
3107 2018-01-22  Wenson Hsieh  <wenson_hsieh@apple.com>
3108
3109         WebViews created via -initSimpleHTMLDocumentWithStyle: don't propagate attachmentElementEnabled state
3110         https://bugs.webkit.org/show_bug.cgi?id=181960
3111         <rdar://problem/36431678>
3112
3113         Reviewed by Tim Horton.
3114
3115         Mail's compose view is initialized via the -initSimpleHTMLDocumentWithStyle: codepath. This is intended to be
3116         a fast path for initializing WebViews, which bypasses certain initialization steps present in the regular -init
3117         path, such as calling -_preferencesChanged: to sync RuntimeEnabledFeatures with WebPreferences.
3118
3119         This means that even though we set -[WebPreferences attachmentElementEnabled] to YES for Mail, the value of the
3120         RuntimeEnabledFeature isn't updated to match. To fix this, we explicitly invoke
3121         RuntimeEnabledFeatures::setAttachmentElementEnabled here to make sure the value is in sync with WebPreferences.
3122
3123         * WebView/WebView.mm:
3124         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
3125
3126 2018-01-21  Ryosuke Niwa  <rniwa@webkit.org>
3127
3128         Turning off custom pasteboard data doesn't actually turn it off in WK2
3129         https://bugs.webkit.org/show_bug.cgi?id=181920
3130         <rdar://problem/36686429>
3131
3132         Reviewed by Wenson Hsieh.
3133
3134         Always disable custom pasteboard data in WebKit1. See r226156 for details.
3135
3136         * WebView/WebPreferences.mm:
3137         (+[WebPreferences initialize]):
3138         * WebView/WebView.mm:
3139         (-[WebView _preferencesChanged:]):
3140
3141 2018-01-21  Wenson Hsieh  <wenson_hsieh@apple.com>
3142
3143         Add a new feature flag for EXTRA_ZOOM_MODE and reintroduce AdditionalFeatureDefines.h
3144         https://bugs.webkit.org/show_bug.cgi?id=181918
3145
3146         Reviewed by Tim Horton.
3147
3148         Add EXTRA_ZOOM_MODE to FeatureDefines.xconfig (off by default).
3149
3150         * Configurations/FeatureDefines.xcconfig:
3151
3152 2018-01-20  Andy Estes  <aestes@apple.com>
3153
3154         [Apple Pay] Stop eagerly loading PassKit.framework
3155         https://bugs.webkit.org/show_bug.cgi?id=181911
3156         <rdar://problem/36555369>
3157
3158         Reviewed by Tim Horton.
3159
3160         * WebCoreSupport/WebPaymentCoordinatorClient.h:
3161         * WebCoreSupport/WebPaymentCoordinatorClient.mm:
3162         (WebPaymentCoordinatorClient::validatedPaymentNetwork):
3163
3164         Implemented PaymentCoordinatorClient::validatedPaymentNetwork().
3165
3166 2018-01-19  Dean Jackson  <dino@apple.com>
3167
3168         REGRESSION (r221092): Swipe actions are hard to perform in FastMail app
3169         https://bugs.webkit.org/show_bug.cgi?id=181817
3170         <rdar://problem/35274055>
3171
3172         Reviewed by Simon Fraser.
3173
3174         Add a linked-on-or-after check to set passive touch listeners on document in WebCore.
3175
3176         * Misc/WebKitVersionChecks.h:
3177         * WebView/WebView.mm:
3178         (-[WebView _commonInitializationWithFrameName:groupName:]):
3179
3180 2018-01-19  Alex Christensen  <achristensen@webkit.org>
3181
3182         Remove unused WebViewPrivate _allowCookies
3183         https://bugs.webkit.org/show_bug.cgi?id=181812
3184
3185         Reviewed by Tim Horton.
3186
3187         * WebView/WebView.mm:
3188         (+[WebView _setAllowCookies:]): Deleted.
3189         (+[WebView _allowCookies]): Deleted.
3190         * WebView/WebViewPrivate.h:
3191
3192 2018-01-18  Alexey Proskuryakov  <ap@apple.com>
3193
3194         Build fix, remove a call to -[NSWindow setOneShot:]
3195         https://bugs.webkit.org/show_bug.cgi?id=181809
3196
3197         Reviewed by Tim Horton.
3198
3199         * WebView/WebTextCompletionController.mm:
3200         (-[WebTextCompletionController _buildUI]):
3201
3202 2018-01-18  Ryan Haddad  <ryanhaddad@apple.com>
3203
3204         Unreviewed, suppress deprecation warnings to fix the build with a newer SDK.
3205
3206         * Carbon/HIWebView.mm:
3207         (overrideCGContext):
3208         (restoreCGContext):
3209
3210 2018-01-18  Dan Bernstein  <mitz@apple.com>
3211
3212         [Xcode] Streamline and future-proof target-macOS-version-dependent build setting definitions
3213         https://bugs.webkit.org/show_bug.cgi?id=181803
3214
3215         Reviewed by Tim Horton.
3216
3217         * Configurations/Base.xcconfig: Updated.
3218         * Configurations/DebugRelease.xcconfig: Ditto.
3219         * Configurations/FeatureDefines.xcconfig: Adopted macOSTargetConditionals helpers.
3220         * Configurations/Version.xcconfig: Updated.
3221         * Configurations/macOSTargetConditionals.xcconfig: Added. Defines helper build settings
3222           useful for defining settings that depend on the target macOS version.
3223
3224 2018-01-17  Youenn Fablet  <youenn@apple.com>
3225
3226         Put fetch Request.keepalive behind a runtime flag
3227         https://bugs.webkit.org/show_bug.cgi?id=181592
3228
3229         Reviewed by Chris Dumez.
3230
3231         * WebView/WebPreferenceKeysPrivate.h:
3232         * WebView/WebPreferences.mm:
3233         (+[WebPreferences initialize]):
3234         (-[WebPreferences fetchAPIKeepAliveEnabled]):
3235         (-[WebPreferences setFetchAPIKeepAliveEnabled:]):
3236         * WebView/WebPreferencesPrivate.h:
3237         * WebView/WebView.mm:
3238         (-[WebView _preferencesChanged:]):
3239
3240 2018-01-17  Wenson Hsieh  <wenson_hsieh@apple.com>
3241
3242         Add injected bundle SPI to replace subresource URLs when dropping or pasting rich content
3243         https://bugs.webkit.org/show_bug.cgi?id=181637
3244         <rdar://problem/36508471>
3245
3246         Reviewed by Tim Horton.
3247
3248         Add a stub implementation of replacementURLForResource. See WebCore and WebKit ChangeLogs for more detail.
3249
3250         * WebCoreSupport/WebEditorClient.h:
3251         * WebCoreSupport/WebEditorClient.mm:
3252         (WebEditorClient::replacementURLForResource):
3253
3254 2018-01-11  Keith Miller  <keith_miller@apple.com>
3255
3256         Rename ENABLE_ASYNC_ITERATION to ENABLE_JS_ASYNC_ITERATION
3257         https://bugs.webkit.org/show_bug.cgi?id=181573
3258
3259         Reviewed by Simon Fraser.
3260
3261         * Configurations/FeatureDefines.xcconfig:
3262
3263 2018-01-11  Wenson Hsieh  <wenson_hsieh@apple.com>
3264
3265         Send PromisedBlobInfo to the client through DragItem instead of DragClient::prepareToDragPromisedBlob
3266         https://bugs.webkit.org/show_bug.cgi?id=181497
3267
3268         Reviewed by Tim Horton.
3269
3270         See other ChangeLogs for more detail.
3271
3272         * WebCoreSupport/WebDragClient.h:
3273
3274 2018-01-11  Tim Horton  <timothy_horton@apple.com>
3275
3276         Null deref in WebImmediateActionController _dictionaryPopupInfoForRange
3277         https://bugs.webkit.org/show_bug.cgi?id=181523
3278         <rdar://problem/28959131>
3279
3280         Reviewed by Alex Christensen.
3281
3282         * WebView/WebImmediateActionController.mm:
3283         (+[WebImmediateActionController _dictionaryPopupInfoForRange:inFrame:withLookupOptions:indicatorOptions:transition:]):
3284         Apply the change made in r216652 to WebKit1's immediate action controller.
3285
3286         Speculative (but successful in WebKit2) fix for non-reproducible crash when
3287         the startContainer of the range is in an anonymous node.
3288
3289 2018-01-11  Youenn Fablet  <youenn@apple.com>
3290
3291         Replace WebRTCLegacyAPIDisabled by WebRTCLegacyAPIEnabled and switch off WebRTC legacy flag by default
3292         https://bugs.webkit.org/show_bug.cgi?id=181480
3293
3294         Reviewed by Eric Carlson.
3295
3296         * WebView/WebPreferences.mm:
3297         (+[WebPreferences initialize]):
3298
3299 2018-01-08  David Kilzer  <ddkilzer@apple.com>
3300
3301         Fix check-webkit-style issues with WebNSDataExtras.mm
3302         <https://webkit.org/b/181369>
3303
3304         Reviewed by Alex Christensen.
3305
3306         * Misc/WebNSDataExtras.mm:
3307         (-[NSString _web_capitalizeRFC822HeaderFieldName]):
3308         (-[NSData _webkit_guessedMIMETypeForXML]):
3309         (-[NSData _webkit_guessedMIMEType]):
3310         (-[NSData _web_isCaseInsensitiveEqualToCString:]):
3311         (_findEOL):
3312         (-[NSData _webkit_parseRFC822HeaderFields]):
3313         (-[NSData _web_locationAfterFirstBlankLine]):
3314         - Fix all the check-webkit-style warnings.
3315
3316 2018-01-08  David Kilzer  <ddkilzer@apple.com>
3317
3318         Build fix #2: Enable -Wcast-qual for WebInspectorUI, WebKitLegacy, WebKit projects
3319         <https://webkit.org/b/181256>
3320         <rdar://problem/36281730>
3321
3322         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
3323         (WebNetscapePluginEventHandlerCocoa::handleTSMEvent):
3324         - Use reinterpret_cast<NPNSString*>(const_cast<CFMutableStringRef>())
3325           to avoid warnings from casting CFStringRef to NPNSString*.
3326           Note that CFMutableStringRef is the same as CFStringRef
3327           without the const modifier, hence its use in the const_cast<>
3328           above.
3329
3330 2018-01-08  David Kilzer  <ddkilzer@apple.com>
3331
3332         Build fix: Enable -Wcast-qual for WebInspectorUI, WebKitLegacy, WebKit projects
3333         <https://webkit.org/b/181256>
3334         <rdar://problem/36281730>
3335
3336         * Carbon/HIWebView.mm:
3337         (StartUpdateObserver): Include TypeCastsCF.h from WTF, and use
3338         checked_cf_cast<CFRunLoopRef>() to fix warning.
3339
3340 2018-01-07  David Kilzer  <ddkilzer@apple.com>
3341
3342         Enable -Wcast-qual for WebInspectorUI, WebKitLegacy, WebKit projects
3343         <https://webkit.org/b/181256>
3344         <rdar://problem/36281730>
3345
3346         Reviewed by Darin Adler.
3347
3348         * Carbon/CarbonUtils.m:
3349         (PoolCleaner):
3350         - Use #pragmas to ignore -Wcast-qual warnings when using a
3351           C-style cast from CFTypeRef to CFRunloopRef.
3352         * Carbon/CarbonWindowFrame.m:
3353         (-[CarbonWindowFrame title]):
3354         - Use #pragmas to ignore -Wcast-qual warnings when using a
3355           C-style cast from CFStringRef to NSString *.
3356         * Carbon/HIViewAdapter.m:
3357         (+[HIViewAdapter getHIViewForNSView:]):
3358         - Use #pragmas to ignore -Wcast-qual warnings when using a
3359           C-style cast from CFTypeRef to HIViewRef.
3360         * Configurations/Base.xcconfig:
3361         (WARNING_CFLAGS): Add -Wcast-qual.
3362         * Misc/WebElementDictionary.mm:
3363         (-[WebElementDictionary objectForKey:]):
3364         - Use static_cast<SEL>(const_cast<void*>()) to fix
3365           warning.
3366         * Misc/WebNSDataExtras.mm: Renamed from Source/WebKitLegacy/mac/Misc/WebNSDataExtras.m.
3367         (-[NSString _web_capitalizeRFC822HeaderFieldName]):
3368         (-[NSData _webkit_guessedMIMETypeForXML]):
3369         (-[NSData _webkit_guessedMIMEType]):
3370         (-[NSData _web_isCaseInsensitiveEqualToCString:]):
3371         (_findEOL):
3372         (-[NSData _webkit_parseRFC822HeaderFields]):
3373         (-[NSData _web_startsWithBlankLine]):
3374         (-[NSData _web_locationAfterFirstBlankLine]):
3375         - Rename WebNSDataExtras.m to WebNSDataExtras.mm and change file
3376           type to Objective-C++.  This fixes the warnings about
3377           discarding the `const` modifier when casing from CFStringRef
3378           to NSString * because in older clang versions, -Wcast-qual was
3379           completely broken when compiling C++ and Objective-C++ source
3380           files.  In newer clang versions, discarding the `const`
3381           modifier for toll-free bridged types is ignored when compiling
3382           Objective-C++ source.
3383         - Update copyright and license header.
3384         - Use reinterpret_cast<> and static_cast<> to fix warnings
3385           unrelated to (NSString *) C-style casts.
3386         - Replace use of MIN() macro with std::min<> template functions.
3387         - Fix location of `*` for local variables modified above.
3388         * Plugins/Hosted/NetscapePluginHostManager.mm:
3389         (WebKit::NetscapePluginHostManager::spawnPluginHost):
3390         (WebKit::NetscapePluginHostManager::initializeVendorPort):
3391         (WebKit::NetscapePluginHostManager::instantiatePlugin):
3392         - Use static_cast<uint8_t*>(const_cast<void*>()) to fix
3393           warnings.
3394         * Plugins/Hosted/NetscapePluginHostProxy.mm:
3395         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy):
3396         - Use reinterpret_cast<mig_subsystem_t>(const_cast<struct WKWebKitPluginClient_subsystem*>())
3397           to fix warning.
3398         * Plugins/Hosted/ProxyInstance.mm:
3399         (WebKit::ProxyInstance::invoke):
3400         - Use static_cast<char*>(const_cast<void*>()) to fix
3401           warning when using -[NSData bytes].
3402         (WebKit::ProxyInstance::fieldValue const):
3403         - Use reinterpret_cast<char*>(const_cast<unsigned char*>())
3404           to fix warning when using CFDataGetBytePtr().
3405         * Plugins/Hosted/WebTextInputWindowController.m:
3406         (-[WebTextInputPanel _interpretKeyEvent:string:]):
3407         - Use #pragma to ignore -Wcast-qual warning since there
3408           is not a good way to avoid this warning in Objective-C.
3409         * Plugins/WebNetscapePluginStream.mm:
3410         (WebNetscapePluginStream::deliverData):
3411         - Use const_cast<void*>() to fix warning when using
3412           -[NSData bytes].
3413         * Plugins/WebNetscapePluginView.mm:
3414         (-[WebNetscapePluginView _createPlugin]):
3415         - Change C-style cast to const_cast<char*>() to fix
3416           warning.
3417         * WebCoreSupport/WebChromeClient.mm:
3418         (WebChromeClient::wrapCryptoKey const):
3419         (WebChromeClient::unwrapCryptoKey const):
3420         - Change C-style cast to
3421           static_cast<uint8_t*>(const_cast<void*>() to fix
3422           warning.
3423         * WebView/WebPDFView.mm:
3424         (_applicationInfoForMIMEType):
3425         - Change local variable type from 'NSURL *' to
3426           'CFURLRef' to fix warning.  Cast back to 'NSURL *'
3427           when calling -[NSURL path].
3428
3429 2018-01-05  Dan Bernstein  <mitz@apple.com>
3430
3431         Fixed the build following AppKit API deprecations in a recent SDKs
3432
3433         * WebView/WebFullScreenController.mm:
3434         (-[WebFullScreenController enterFullScreen:]): Suppressed deprecation warnings.
3435         (-[WebFullScreenController exitFullScreen]): Ditto.
3436         (-[WebFullScreenController _startEnterFullScreenAnimationWithDuration:]): Ditto.
3437         (-[WebFullScreenController _startExitFullScreenAnimationWithDuration:]): Ditto.
3438         * WebView/WebHTMLView.mm:
3439         (-[WebHTMLView drawRect:]): Ditto.
3440         (-[WebHTMLView _endPrintModeAndRestoreWindowAutodisplay]): Ditto.
3441         (-[WebHTMLView knowsPageRange:]): Ditto.
3442         * WebView/WebView.mm:
3443         (LayerFlushController::flushLayers): Ditto.
3444
3445 2018-01-03  Wenson Hsieh  <wenson_hsieh@apple.com>
3446
3447         [Attachment Support] Create attachment elements when dropping files on iOS
3448         https://bugs.webkit.org/show_bug.cgi?id=181192
3449         <rdar://problem/36280945>
3450
3451         Reviewed by Tim Horton.
3452
3453         Make some minor adjustments for changes to the pasteboard in WebCore. See WebCore/ChangeLog for more detail.
3454
3455         * WebCoreSupport/WebPlatformStrategies.h:
3456         * WebCoreSupport/WebPlatformStrategies.mm:
3457         (WebPlatformStrategies::informationForItemAtIndex):
3458         (WebPlatformStrategies::getFilenamesForDataInteraction): Deleted.
3459
3460 2018-01-03  Wenson Hsieh  <wenson_hsieh@apple.com>
3461
3462         [Attachment Support] Add plumbing for starting a drag with promised blob data
3463         https://bugs.webkit.org/show_bug.cgi?id=181201
3464
3465         Reviewed by Tim Horton.
3466
3467         Minor adjustment to account for a DragClient interface change. See WebCore ChangeLog for more details.
3468
3469         * WebCoreSupport/WebDragClient.h:
3470
3471 2018-01-02  Jiewen Tan  <jiewen_tan@apple.com>
3472
3473         Add a WebAuthentication runtime feature flag
3474         https://bugs.webkit.org/show_bug.cgi?id=181220
3475         <rdar://problem/36055305>
3476
3477         Reviewed by Brent Fulgham.
3478
3479         Renames the CredentialManagement runtime feature flag into WebAuthentication.
3480
3481         * WebView/WebPreferenceKeysPrivate.h:
3482         * WebView/WebPreferences.mm:
3483         (+[WebPreferences initialize]):
3484         (-[WebPreferences webAuthenticationEnabled]):
3485         (-[WebPreferences setWebAuthenticationEnabled:]):
3486         (-[WebPreferences credentialManagementEnabled]): Deleted.
3487         (-[WebPreferences setCredentialManagementEnabled:]): Deleted.
3488         * WebView/WebPreferencesPrivate.h:
3489         * WebView/WebView.mm:
3490         (-[WebView _preferencesChanged:]):
3491
3492 2017-12-22  Jeff Miller  <jeffm@apple.com>
3493
3494         Update user-visible copyright strings to include 2018
3495         https://bugs.webkit.org/show_bug.cgi?id=181141
3496
3497         Reviewed by Dan Bernstein.
3498
3499         * Info.plist:
3500
3501 2017-12-30  Wenson Hsieh  <wenson_hsieh@apple.com>
3502
3503         [Attachment Support] Remove current macOS support for dragging file-backed attachments
3504         https://bugs.webkit.org/show_bug.cgi?id=181188
3505
3506         Reviewed by Dan Bernstein.
3507
3508         See WebCore/ChangeLog for more detail.
3509
3510         * WebCoreSupport/WebDragClient.h:
3511         * WebCoreSupport/WebDragClient.mm:
3512         (WebDragClient::declareAndWriteAttachment): Deleted.
3513         * WebView/WebHTMLView.mm:
3514         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
3515
3516 2017-12-22  Wenson Hsieh  <wenson_hsieh@apple.com>
3517
3518         Unreviewed, continue to fix build failures due to AppKit API deprecation
3519
3520         Wraps more code in -Wdeprecated-declarations.
3521
3522         * Carbon/HIWebView.mm:
3523         (overrideCGContext):
3524
3525 2017-12-22  Wenson Hsieh  <wenson_hsieh@apple.com>
3526
3527         Unreviewed, fix build failures due to using deprecated AppKit symbols when building 32-bit
3528
3529         Wrap some more code in -Wdeprecated-declarations to try and fix the 32-bit build using the newest SDK.
3530
3531         * Carbon/CarbonWindowAdapter.mm:
3532         (-[CarbonWindowAdapter setViewsNeedDisplay:]):
3533         * Plugins/WebNetscapePluginView.mm:
3534         (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
3535         (-[WebNetscapePluginView sendDrawRectEvent:]):
3536         (-[WebNetscapePluginView drawRect:]):
3537
3538 2017-12-22  Wenson Hsieh  <wenson_hsieh@apple.com>
3539
3540         Fix build failures due to using deprecated AppKit symbols
3541         https://bugs.webkit.org/show_bug.cgi?id=181110
3542         <rdar://problem/36162865>
3543
3544         Reviewed by Dan Bernstein and Tim Horton.
3545
3546         See WebCore ChangeLog for more details. Additionally makes a few minor adjustments to pass our style checker.
3547
3548         * Misc/WebKitNSStringExtras.mm:
3549         (-[NSString _web_drawAtPoint:font:textColor:]):
3550         * Misc/WebNSPasteboardExtras.h:
3551         * Misc/WebNSPasteboardExtras.mm:
3552         (+[NSPasteboard _web_writableTypesForURL]):
3553         (_createWritableTypesForImageWithoutArchive):
3554         (_createWritableTypesForImageWithArchive):
3555         (+[NSPasteboard _web_dragTypesForURL]):
3556         (-[NSPasteboard _web_bestURL]):
3557         (-[NSPasteboard _web_writeURL:andTitle:types:]):
3558         (+[NSPasteboard _web_setFindPasteboardString:withOwner:]):
3559         (-[NSPasteboard _web_writeFileWrapperAsRTFDAttachment:]):
3560         (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:source:]):
3561         (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):
3562         * Panels/WebAuthenticationPanel.m:
3563         (-[WebAuthenticationPanel runAsModalDialogWithChallenge:]):
3564         (-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
3565         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
3566         (-[WebHostedNetscapePluginView drawRect:]):
3567         * WebInspector/WebNodeHighlightView.mm:
3568         (-[WebNodeHighlightView drawRect:]):
3569         * WebView/WebFrame.mm:
3570         (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
3571         (-[WebFrame _drawRect:contentsOnly:]):
3572         * WebView/WebHTMLView.mm:
3573         (kit):
3574         (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:]):
3575         (-[WebHTMLView _plainTextFromPasteboard:]):
3576         (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
3577         (+[WebHTMLView _insertablePasteboardTypes]):
3578         (+[WebHTMLView _selectionPasteboardTypes]):
3579         (-[WebHTMLView pasteboard:provideDataForType:]):
3580         (-[WebHTMLView _writeSelectionToPasteboard:]):
3581         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
3582         (-[WebHTMLView validRequestorForSendType:returnType:]):
3583         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
3584         (createMenuItem):
3585         (-[WebHTMLView _fontAttributesFromFontPasteboard]):
3586         (-[WebHTMLView _colorAsString:]):
3587         (-[WebHTMLView copyFont:]):
3588         * WebView/WebPDFView.mm:
3589         (-[WebPDFView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
3590         (-[WebPDFView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
3591         (-[WebPDFView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
3592         (-[WebPDFView pasteboardTypesForSelection]):
3593         (-[WebPDFView writeSelectionWithPasteboardTypes:toPasteboard:]):
3594         * WebView/WebView.h:
3595         * WebView/WebView.mm:
3596         (-[WebView performDragOperation:]):
3597         (-[WebView validateUserInterfaceItemWithoutDelegate:]):
3598         (-[WebView _searchWithGoogleFromMenu:]):
3599
3600 2017-12-21  Youenn Fablet  <youenn@apple.com>
3601
3602         ServiceWorkerThreadProxy should set the correct cookie and cache partitioning options
3603         https://bugs.webkit.org/show_bug.cgi?id=181000
3604
3605         Reviewed by Chris Dumez.
3606
3607         * Misc/WebCache.mm:
3608         (+[WebCache addImageToCache:forURL:forFrame:]):
3609
3610 2017-12-21  Jeremy Jones  <jeremyj@apple.com>
3611
3612         Update FULLSCREEN_API feature defines.
3613         https://bugs.webkit.org/show_bug.cgi?id=181015
3614
3615         Reviewed by Tim Horton.
3616
3617         Change enabled iphone sdk for FULLSCREEN_API.
3618
3619         * Configurations/FeatureDefines.xcconfig:
3620
3621 2017-12-21  Jer Noble  <jer.noble@apple.com>
3622
3623         Add initial DOM support for Media Capabilities
3624         https://bugs.webkit.org/show_bug.cgi?id=181064
3625
3626         Reviewed by Eric Carlson.
3627
3628         Add a new preference to enable the (disabled-by-default) Media Capabilities API.
3629
3630         * WebView/WebPreferenceKeysPrivate.h:
3631         * WebView/WebPreferences.mm:
3632         (+[WebPreferences initialize]):
3633         (-[WebPreferences mediaCapabilitiesEnabled]):
3634         (-[WebPreferences setMediaCapabilitiesEnabled:]):
3635         * WebView/WebPreferencesPrivate.h:
3636         * WebView/WebView.mm:
3637         (-[WebView _preferencesChanged:]):
3638
3639 2017-12-21  Jeremy Jones  <jeremyj@apple.com>
3640
3641         Enable picture-in-picture from inline element on suspend.
3642         https://bugs.webkit.org/show_bug.cgi?id=180942
3643         rdar://problem/34745234
3644
3645         Reviewed by Jer Noble.
3646
3647         Update signature of enterVideoFullscreenForVideoElement().
3648
3649         * WebCoreSupport/WebChromeClient.h:
3650         * WebCoreSupport/WebChromeClient.mm:
3651         (WebChromeClient::enterVideoFullscreenForVideoElement):
3652
3653 2017-12-20  Daniel Bates  <dabates@apple.com>
3654
3655         Remove Alternative Presentation Button
3656         https://bugs.webkit.org/show_bug.cgi?id=180500
3657         <rdar://problem/35891047>
3658
3659         Reviewed by Simon Fraser.
3660
3661         We no longer need the alternative presentation button.
3662
3663         * Configurations/FeatureDefines.xcconfig:
3664
3665 2017-12-19  Jer Noble  <jer.noble@apple.com>
3666
3667         Playing media elements which call "pause(); play()" will have the play promise rejected.
3668         https://bugs.webkit.org/show_bug.cgi?id=180781
3669         <rdar://problem/33191377>
3670
3671         Reviewed by Eric Carlson.
3672
3673         shouldRequireUserGestureToLoadVideo() should default to false on Mac.
3674
3675         * WebView/WebView.mm:
3676         (shouldRequireUserGestureToLoadVideo):
3677
3678 2017-12-19  Wenson Hsieh  <wenson_hsieh@apple.com>
3679
3680         API test WKAttachmentTests.InsertPastedAttributedStringContainingMultipleAttachments is failing on El Capitan and Sierra
3681         https://bugs.webkit.org/show_bug.cgi?id=180977
3682
3683         Reviewed by Tim Horton.
3684
3685         Fixes a failing API test by updating markup deserialization codepaths in WebKitLegacy to behave like the modern
3686         WebCore counterpart. When determining element tags to exclude when generating markup from an attributed string,
3687         don't add "object" as an element to exclude if the attachment element runtime feature is enabled.
3688
3689         * WebCoreSupport/WebEditorClient.mm:
3690         (attributesForAttributedStringConversion):
3691         * WebView/WebHTMLView.mm:
3692         (+[WebHTMLView _excludedElementsForAttributedStringConversion]):
3693
3694 2017-12-18  David Kilzer  <ddkilzer@apple.com>
3695
3696         BUILD FIX: Ignore NSWindow deprecation warnings from the mysterious future
3697
3698         Attempt to fix the following warnings:
3699
3700             AppKit instance variables are private, and the ability to access them will be removed in a future release. [-Werror,-Wdeprecated-declarations]
3701
3702         For the following instance variables:
3703
3704             _borderView
3705             _contentView
3706             _frame
3707             _wFlags
3708
3709         * Carbon/CarbonWindowAdapter.mm:
3710         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
3711         (-[CarbonWindowAdapter reconcileToCarbonWindowBounds]):
3712         (-[CarbonWindowAdapter _termWindowIfOwner]):
3713         (-[CarbonWindowAdapter _windowMovedToRect:]):
3714         (-[CarbonWindowAdapter setContentView:]):
3715         (-[CarbonWindowAdapter _handleRootBoundsChanged]):
3716         (-[CarbonWindowAdapter _handleContentBoundsChanged]):
3717
3718 2017-12-16  Dan Bernstein  <mitz@apple.com>
3719
3720         WKWebView has no equivalent of -[WebView setAlwaysShowVerticalScroller:]
3721         https://bugs.webkit.org/show_bug.cgi?id=180613
3722         <rdar://problem/35946124>
3723
3724         Reviewed by Geoff Garen.
3725
3726         * WebKit.mac.exp: Removed WebCoreScrollbarAlwaysOn, which is no longer being used by any
3727           clients.
3728         * WebView/WebDynamicScrollBarsView.h: Ditto.
3729         * WebView/WebDynamicScrollBarsView.mm: Ditto.
3730
3731 2017-12-14  David Kilzer  <ddkilzer@apple.com>
3732
3733         Enable -Wstrict-prototypes for WebKit
3734         <https://webkit.org/b/180757>
3735         <rdar://problem/36024132>
3736
3737         Rubber-stamped by Joseph Pecoraro.
3738
3739         * Configurations/Base.xcconfig:
3740         (CLANG_WARN_STRICT_PROTOTYPES): Add. Set to YES.
3741
3742 2017-12-14  John Wilander  <wilander@apple.com>
3743
3744         Storage Access API: Implement frame-specific access in the document.cookie layer
3745         https://bugs.webkit.org/show_bug.cgi?id=180682
3746         <rdar://problem/35982257>
3747
3748         Reviewed by Alex Christensen.
3749
3750         CookiesStrategy::cookiesForDOM(), CookiesStrategy::setCookiesFromDOM(),
3751         CookiesStrategy::cookieRequestHeaderFieldValue(), and
3752         CookiesStrategy::getRawCookies() now take optional parameters for
3753         frameID and pageID to allow frame-specific scoping of cookies.
3754
3755         This change makes the return values of FrameLoaderClient::frameID()
3756         and FrameLoaderClient::pageID() std::optional<uint64_t> so that
3757         WebCore can call those getters and get the right return values in
3758         WebKit and std:nullopt in WebKitLegacy.
3759
3760         * WebCoreSupport/WebFrameLoaderClient.h:
3761         * WebCoreSupport/WebFrameLoaderClient.mm:
3762         (WebFrameLoaderClient::pageID const):
3763         (WebFrameLoaderClient::frameID const):
3764         * WebCoreSupport/WebPlatformStrategies.h:
3765         * WebCoreSupport/WebPlatformStrategies.mm:
3766         (WebPlatformStrategies::cookiesForDOM):
3767         (WebPlatformStrategies::setCookiesFromDOM):
3768         (WebPlatformStrategies::cookieRequestHeaderFieldValue):
3769         (WebPlatformStrategies::getRawCookies):
3770
3771 2017-12-12  Simon Fraser  <simon.fraser@apple.com>
3772
3773         Remove ColorSpaceDeviceRGB and most users of the obsolete deviceRGB colorspace
3774         https://bugs.webkit.org/show_bug.cgi?id=180689
3775
3776         Reviewed by Tim Horton.
3777
3778         Use sRGBColorSpaceRef() from WebCore.
3779
3780         * WebView/WebHTMLView.mm:
3781         (imageFromRect):
3782
3783 2017-12-11  Tim Horton  <timothy_horton@apple.com>
3784
3785         Stop using deprecated target conditional for simulator builds
3786         https://bugs.webkit.org/show_bug.cgi?id=180662
3787         <rdar://problem/35136156>
3788
3789         Reviewed by Simon Fraser.
3790
3791         * postprocess-headers.sh:
3792
3793 2017-12-11  David Quesada  <david_quesada@apple.com>
3794
3795         Turn on ENABLE_APPLICATION_MANIFEST
3796         https://bugs.webkit.org/show_bug.cgi?id=180562
3797         rdar://problem/35924737
3798
3799         Reviewed by Geoffrey Garen.
3800
3801         * Configurations/FeatureDefines.xcconfig:
3802
3803 2017-12-08  Yusuke Suzuki  <utatane.tea@gmail.com>
3804
3805         Remove pthread_once in favor of dispatch_once
3806         https://bugs.webkit.org/show_bug.cgi?id=180591
3807
3808         Reviewed by Saam Barati.
3809
3810         * Misc/WebKitErrors.m:
3811         (+[NSError _registerWebKitErrors]):
3812         (registerErrors): Deleted.
3813         * Storage/WebStorageManager.mm:
3814         (+[WebStorageManager _storageDirectoryPath]):
3815         (initializeLocalStoragePath): Deleted.
3816
3817 2017-12-07  Darin Adler  <darin@apple.com>
3818
3819         Remove some unused code from WebKitLegacy
3820         https://bugs.webkit.org/show_bug.cgi?id=180567
3821
3822         Reviewed by Anders Carlsson.
3823
3824         * Misc/WebKitNSStringExtras.h: Researched which of these functions are used in
3825         macOS (back a few versions) and iOS and removed unused
3826         _web_drawAtPoint:font:textColor:allowingFontSmoothing:,
3827         _web_drawDoubledAtPoint:withTopColor:bottomColor:font:,
3828         _web_stringByStrippingReturnCharacters, _webkit_hasCaseInsensitiveSubstring:,
3829         _webkit_stringByCollapsingNonPrintingCharacters,
3830         _webkit_stringByCollapsingWhitespaceCharacters,
3831         _web_stringWithData:textEncodingName:, and
3832         _webkit_localStorageDirectoryWithBundleIdentifier:.
3833
3834         * Misc/WebKitNSStringExtras.mm: Made WebKitLocalCacheDefaultsKey private to
3835         this source file.
3836         (canUseFastRenderer): Made this faster by not calling u_charDirection for
3837         Latin-1 characters, and also added special cases for U_DIR_NON_SPACING_MARK
3838         and U_BOUNDARY_NEUTRAL, which should not prevent use of the fast renderer.
3839         (-[NSString _web_drawAtPoint:font:textColor:allowingFontSmoothing:]): Deleted.
3840         (-[NSString _web_drawAtPoint:font:textColor:]): Removed unneeded code to
3841         handle font smoothing options.
3842         (-[NSString _web_drawDoubledAtPoint:withTopColor:bottomColor:font:]): Deleted.
3843         (-[NSString _web_stringByAbbreviatingWithTildeInPath]): Moved comment here
3844         from header and made it a little clearer.
3845         (-[NSString _web_stringByStrippingReturnCharacters]): Deleted.
3846         (-[NSString _webkit_hasCaseInsensitiveSubstring:]): Deleted.
3847         (-[NSString _webkit_stringByCollapsingNonPrintingCharacters]): Deleted.
3848         (-[NSString _webkit_stringByCollapsingWhitespaceCharacters]): Deleted.
3849         (+[NSString _web_stringWithData:textEncodingName:]): Deleted.
3850         (+[NSString _webkit_localCacheDirectoryWithBundleIdentifier:]): Streamlined
3851         implementation a bit and used whole words instead of abbreviations.
3852         (+[NSString _webkit_localStorageDirectoryWithBundleIdentifier:]): Deleted.
3853
3854         * Misc/WebNSFileManagerExtras.mm:
3855         (-[NSFileManager _webkit_pathWithUniqueFilenameForPath:]): Use the
3856         filenameByFixingIllegalCharacters function from WebCore directly instead of
3857         indirectly through the method _webkit_filenameByFixingIllegalCharacters.
3858
3859         * Plugins/WebBaseNetscapePluginView.mm:
3860         (-[WebBaseNetscapePluginView URLWithCString:]): Rewrote to use simple
3861         string replacements instead of _web_stringByStrippingReturnCharacters
3862         and to use NSString methods instead of CFString functions.
3863
3864 2017-12-07  Jessie Berlin  <jberlin@webkit.org>
3865
3866         Ignore deprecation warnings.
3867
3868         * WebView/WebHTMLView.mm:
3869         (-[NSWindow _web_borderView]):
3870         (-[WebHTMLView _setAsideSubviews]):
3871         * WebView/WebView.mm:
3872         (-[WebView encodeWithCoder:]):
3873
3874 2017-12-02  Darin Adler  <darin@apple.com>
3875
3876         Modernize some aspects of text codecs, eliminate WebKit use of strcasecmp
3877         https://bugs.webkit.org/show_bug.cgi?id=180009
3878
3879         Reviewed by Alex Christensen.
3880
3881         * History/HistoryPropertyList.mm: Removed include of StringExtras.h.
3882
3883         * Plugins/WebBaseNetscapePluginView.mm:
3884         (WebKit::getAuthenticationInfo): Use equalLettersIgnoringASCIICase instead
3885         of strcasecmp.
3886
3887         * WebView/WebPreferences.mm:
3888         (contains): Ditto. Also made this a template so it's easier to call on an array.
3889         (cacheModelForMainBundle): Take advantage of the above to make it cleaner.
3890
3891 2017-12-05  Brent Fulgham  <bfulgham@apple.com>
3892
3893         Limit user agent versioning to an upper bound
3894         https://bugs.webkit.org/show_bug.cgi?id=180365
3895         <rdar://problem/34550617>
3896
3897         Reviewed by Joseph Pecoraro.
3898
3899         * WebView/WebView.mm:
3900         (+[WebView _standardUserAgentWithApplicationName:]): Don't pass the WebKit bundle version when
3901         creating the User Agent string.
3902         (webKitBundleVersionString): Deleted.
3903
3904 2017-12-05  Andy Estes  <aestes@apple.com>
3905
3906         [Cocoa] Stop specifying TARGET_OS_EMBEDDED in postprocess-headers.sh's unifdef options
3907         https://bugs.webkit.org/show_bug.cgi?id=180457
3908         <rdar://problem/35143007>
3909
3910         Reviewed by Tim Horton.
3911
3912         None of WebKitLegacy's framework headers mention TARGET_OS_EMBEDDED, so there's no need to
3913         check for this macro during post-processing.
3914
3915         * postprocess-headers.sh:
3916
3917 2017-12-04  David Quesada  <david_quesada@apple.com>
3918
3919         Add a class for parsing application manifests
3920         https://bugs.webkit.org/show_bug.cgi?id=177973
3921         rdar://problem/34747949
3922
3923         Reviewed by Geoffrey Garen.
3924
3925         * Configurations/FeatureDefines.xcconfig: Add ENABLE_APPLICATION_MANIFEST feature flag.
3926
3927 2017-11-30  Stephan Szabo  <stephan.szabo@sony.com>
3928
3929         Make LegacyCustomProtocolManager optional for network process
3930         https://bugs.webkit.org/show_bug.cgi?id=176230
3931
3932         Reviewed by Alex Christensen.
3933
3934         * Configurations/FeatureDefines.xcconfig:
3935
3936 2017-11-30  Joseph Pecoraro  <pecoraro@apple.com>
3937
3938         Fix some NSOperationQueue leaks
3939         https://bugs.webkit.org/show_bug.cgi?id=180221
3940
3941         Reviewed by Wenson Hsieh.
3942
3943         * WebView/WebView.mm:
3944         (-[WebView performDragOperation:]):
3945
3946 2017-11-30  Darin Adler  <darin@apple.com>
3947
3948         [Mac] remove unneeded RetainPtr use introduced in r225142
3949         https://bugs.webkit.org/show_bug.cgi?id=180202
3950
3951         Reviewed by Tim Horton.
3952
3953         * WebView/WebImmediateActionController.mm:
3954         (-[WebImmediateActionController _animationControllerForText]): Got rid of unnecessary
3955         RetainPtr.
3956
3957 2017-11-29  Said Abou-Hallawa  <sabouhallawa@apple.com>
3958
3959         Remove the ImageSource from the class hierarchy that connects BitmapImage to ImageFrame
3960         https://bugs.webkit.org/show_bug.cgi?id=175595
3961
3962         Reviewed by Darin Adler.
3963
3964         * WebView/WebPreferences.mm:
3965
3966 2017-11-27  Tim Horton  <timothy_horton@apple.com>
3967
3968         One too many zeroes in macOS version number in FeatureDefines
3969         https://bugs.webkit.org/show_bug.cgi?id=180011
3970
3971         Reviewed by Dan Bernstein.
3972
3973         * Configurations/FeatureDefines.xcconfig:
3974
3975 2017-11-23  Darin Adler  <darin@apple.com>
3976
3977         Fix dictionary leak in lookup, convert FindOptions to OptionSet, tweak code style nearby
3978         https://bugs.webkit.org/show_bug.cgi?id=179981
3979
3980         Reviewed by Sam Weinig.
3981
3982         * WebView/WebImmediateActionController.mm:
3983         (-[WebImmediateActionController _animationControllerForText]): Use RetainPtr so we don't leak.
3984         * WebView/WebView.mm:
3985         (coreOptions): Use |= instead of | to build up FindOptions.
3986
3987 2017-11-23  Sam Weinig  <sam@webkit.org>
3988
3989         Remove unneeded ScriptController::processingUserGesture() forwarding functions
3990         https://bugs.webkit.org/show_bug.cgi?id=179954
3991
3992         Reviewed by Darin Adler.
3993
3994         Replace ScriptController::processingUserGesture() and ScriptController::processingUserGestureForMedia()
3995         with direct calls to the corresponding UserGestureIndicator functions.
3996
3997         * Plugins/WebPluginController.mm:
3998         (-[WebPluginController processingUserGesture]):
3999         * WebView/WebView.mm:
4000         (-[WebView _isProcessingUserGesture]):
4001
4002 2017-11-23  Darin Adler  <darin@apple.com>
4003
4004         Reduce WTF::String operations that do unnecessary Unicode operations instead of ASCII
4005         https://bugs.webkit.org/show_bug.cgi?id=179907
4006
4007         Reviewed by Sam Weinig.
4008
4009         * History/BinaryPropertyList.cpp:
4010         (BinaryPropertyListPlan::writeStringObject): Use isAllASCII.
4011         (BinaryPropertyListSerializer::appendStringObject): Ditto.
4012         * WebView/WebHTMLRepresentation.mm:
4013         (regExpForLabels): Removed TextCaseSensitive since it is now the default.
4014         (matchLabelsAgainstString): Use JSC::Yarr::TextCaseInsensitive.
4015
4016 2017-11-22  Ali Juma  <ajuma@chromium.org>
4017
4018         Implement VisualViewport API attributes
4019         https://bugs.webkit.org/show_bug.cgi?id=179385
4020
4021         Reviewed by Frédéric Wang.
4022
4023         Add a VisualViewportAPI preference.
4024
4025         * WebView/WebPreferenceKeysPrivate.h:
4026         * WebView/WebPreferences.mm:
4027         (+[WebPreferences initialize]):
4028         (-[WebPreferences visualViewportAPIEnabled]):
4029         (-[WebPreferences setVisualViewportAPIEnabled:]):
4030         * WebView/WebPreferencesPrivate.h:
4031         * WebView/WebView.mm:
4032         (-[WebView _preferencesChanged:]):
4033
4034 2017-11-22  Christopher Reid  <chris.reid@sony.com>
4035
4036         WebCoreObjCExtras.h is being included in too many places
4037         https://bugs.webkit.org/show_bug.cgi?id=179931
4038
4039         Reviewed by Darin Adler.
4040
4041         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
4042         * Plugins/WebBaseNetscapePluginView.mm:
4043         * Plugins/WebBasePluginPackage.mm:
4044         * Plugins/WebNetscapePluginStream.mm:
4045         * Plugins/WebNetscapePluginView.mm:
4046         * WebView/WebTextIterator.mm:
4047         * WebView/WebViewData.mm:
4048
4049 2017-11-22  Commit Queue  <commit-queue@webkit.org>
4050
4051         Unreviewed, rolling out r225093.
4052         https://bugs.webkit.org/show_bug.cgi?id=179938
4053
4054         Compilation failed on WinCairo 64-bit Release (Requested by
4055         fredw on #webkit).
4056
4057         Reverted changeset:
4058
4059         "Implement VisualViewport API attributes"
4060         https://bugs.webkit.org/show_bug.cgi?id=179385
4061         https://trac.webkit.org/changeset/225093
4062
4063 2017-11-21  Ali Juma  <ajuma@chromium.org>
4064
4065         Implement VisualViewport API attributes
4066         https://bugs.webkit.org/show_bug.cgi?id=179385
4067
4068         Reviewed by Frédéric Wang.
4069
4070         Add a VisualViewportAPI preference.
4071
4072         * WebView/WebPreferenceKeysPrivate.h:
4073         * WebView/WebPreferences.mm:
4074         (+[WebPreferences initialize]):
4075         (-[WebPreferences visualViewportAPIEnabled]):
4076         (-[WebPreferences setVisualViewportAPIEnabled:]):
4077         * WebView/WebPreferencesPrivate.h:
4078         * WebView/WebView.mm:
4079         (-[WebView _preferencesChanged:]):
4080
4081 2017-11-21  Christopher Reid  <chris.reid@sony.com>
4082
4083         [PAL] Remove FileSystem's dependency on WebCoreNSStringExtras
4084         https://bugs.webkit.org/show_bug.cgi?id=179504
4085