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