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