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