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