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