Validate navigation policy decisions to avoid crashes in continueLoadAfterNavigationP...
[WebKit-https.git] / Source / WebKitLegacy / mac / ChangeLog
1 2019-02-03  Ryosuke Niwa  <rniwa@webkit.org>
2
3         Validate navigation policy decisions to avoid crashes in continueLoadAfterNavigationPolicy
4         https://bugs.webkit.org/show_bug.cgi?id=194189
5
6         Reviewed by Geoffrey Garen.
7
8         Pass the policy check identifier around functions and store it in WebFramePolicyListener
9         so that we can send it back to WebCore with the navigation policy decision.
10
11         * WebCoreSupport/WebFrameLoaderClient.h:
12         * WebCoreSupport/WebFrameLoaderClient.mm:
13         (WebFrameLoaderClient::dispatchDecidePolicyForResponse):
14         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
15         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
16         (WebFrameLoaderClient::dispatchWillSubmitForm):
17         (WebFrameLoaderClient::setUpPolicyListener):
18         (-[WebFramePolicyListener initWithFrame:identifier:policyFunction:defaultPolicy:]):
19         (-[WebFramePolicyListener initWithFrame:identifier:policyFunction:defaultPolicy:appLinkURL:]):
20         (-[WebFramePolicyListener invalidate]):
21         (-[WebFramePolicyListener dealloc]):
22         (-[WebFramePolicyListener receivedPolicyDecision:]):
23         (-[WebFramePolicyListener initWithFrame:policyFunction:defaultPolicy:]): Deleted.
24         (-[WebFramePolicyListener initWithFrame:policyFunction:defaultPolicy:appLinkURL:]): Deleted.
25
26 2019-01-31  Alex Christensen  <achristensen@webkit.org>
27
28         Revert r238819 which is unneeded and caused a performance regression.
29         https://bugs.webkit.org/show_bug.cgi?id=192272
30         <rdar://problem/46664625>
31
32         * WebCoreSupport/WebFrameLoaderClient.h:
33         * WebCoreSupport/WebFrameLoaderClient.mm:
34         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
35
36 2019-01-28  Devin Rousso  <drousso@apple.com>
37
38         Web Inspector: provide a way to edit page WebRTC settings on a remote target
39         https://bugs.webkit.org/show_bug.cgi?id=193863
40         <rdar://problem/47572764>
41
42         Reviewed by Joseph Pecoraro.
43
44         * WebView/WebView.mm:
45         (-[WebView _preferencesChanged:]):
46         Add page-level settings for WebRTC preferences.
47
48 2019-01-28  Andy Estes  <aestes@apple.com>
49
50         [watchOS] Enable Parental Controls content filtering
51         https://bugs.webkit.org/show_bug.cgi?id=193939
52         <rdar://problem/46641912>
53
54         Reviewed by Ryosuke Niwa.
55
56         * Configurations/FeatureDefines.xcconfig:
57
58 2019-01-28  Timothy Hatcher  <timothy@apple.com>
59
60         Make it easier for non-Apple ports to enable dark mode CSS support.
61         https://bugs.webkit.org/show_bug.cgi?id=193882
62
63         Reviewed by Megan Gardner.
64
65         * WebView/WebView.mm:
66         (-[WebView _commonInitializationWithFrameName:groupName:]): Fix some defines.
67         (-[WebView _effectiveAppearanceIsDark]): Ditto.
68
69 2019-01-27  Chris Fleizach  <cfleizach@apple.com>
70
71         AX: Introduce a static accessibility tree
72         https://bugs.webkit.org/show_bug.cgi?id=193348
73         <rdar://problem/47203295>
74
75         Reviewed by Ryosuke Niwa.
76
77         * Configurations/FeatureDefines.xcconfig:
78
79 2019-01-25  Keith Rollin  <krollin@apple.com>
80
81         Update WebKitAdditions.xcconfig with correct order of variable definitions
82         https://bugs.webkit.org/show_bug.cgi?id=193793
83         <rdar://problem/47532439>
84
85         Reviewed by Alex Christensen.
86
87         XCBuild changes the way xcconfig variables are evaluated. In short,
88         all config file assignments are now considered in part of the
89         evaluation. When using the new build system and an .xcconfig file
90         contains multiple assignments of the same build setting:
91
92         - Later assignments using $(inherited) will inherit from earlier
93           assignments in the xcconfig file.
94         - Later assignments not using $(inherited) will take precedence over
95           earlier assignments. An assignment to a more general setting will
96           mask an earlier assignment to a less general setting. For example,
97           an assignment without a condition ('FOO = bar') will completely mask
98           an earlier assignment with a condition ('FOO[sdk=macos*] = quux').
99
100         This affects some of our .xcconfig files, in that sometimes platform-
101         or sdk-specific definitions appear before the general definitions.
102         Under the new evaluations rules, the general definitions alway take
103         effect because they always overwrite the more-specific definitions. The
104         solution is to swap the order, so that the general definitions are
105         established first, and then conditionally overwritten by the
106         more-specific definitions.
107
108         * Configurations/Version.xcconfig:
109         * Configurations/WebKitLegacy.xcconfig:
110
111 2019-01-25  David Kilzer  <ddkilzer@apple.com>
112
113         Move soft-linking of Lookup.framework out of LookupSPI.h
114         <https://webkit.org/b/193815>
115
116         Reviewed by Tim Horton.
117
118         * WebView/WebImmediateActionController.mm:
119         (-[WebImmediateActionController _animationControllerForText]):
120         * WebView/WebView.mm:
121         (-[WebView _prepareForDictionaryLookup]):
122         - Move soft-linking to LookupSoftLink.{h,mm}.
123
124 2019-01-25  Wenson Hsieh  <wenson_hsieh@apple.com>
125
126         [iOS] Rename some WebKit-internal functions and variables that reference "data interaction"
127         https://bugs.webkit.org/show_bug.cgi?id=193829
128
129         Reviewed by Tim Horton.
130
131         * WebCoreSupport/WebDragClient.mm:
132         (WebDragClient::didConcludeEditDrag):
133         * WebView/WebView.mm:
134         (-[WebView _requestStartDataInteraction:globalPosition:]):
135         (-[WebView _didConcludeEditDrag]):
136         (-[WebView _didConcludeEditDataInteraction]): Deleted.
137         * WebView/WebViewInternal.h:
138
139 2019-01-24  John Wilander  <wilander@apple.com>
140
141         Add Ad Click Attribution as an internal/experimental feature
142         https://bugs.webkit.org/show_bug.cgi?id=193685
143         <rdar://problem/47450399>
144
145         Reviewed by Brent Fulgham.
146
147         * WebView/WebPreferenceKeysPrivate.h:
148         * WebView/WebPreferences.mm:
149         (+[WebPreferences initialize]):
150         (-[WebPreferences adClickAttributionEnabled]):
151         (-[WebPreferences setAdClickAttributionEnabled:]):
152             Added support for experimental ad click attribution.
153         * WebView/WebPreferencesPrivate.h:
154         * WebView/WebView.mm:
155         (-[WebView _preferencesChanged:]):
156
157 2019-01-24  Ross Kirsling  <ross.kirsling@sony.com>
158
159         Move FileSystem to WTF
160         https://bugs.webkit.org/show_bug.cgi?id=193602
161
162         Reviewed by Yusuke Suzuki.
163
164         * Misc/WebNSFileManagerExtras.mm:
165         * Storage/WebDatabaseProvider.mm:
166         * WebView/WebView.mm:
167
168 2019-01-23  Conrad Shultz  <conrad_shultz@apple.com>
169
170         Fix the Apple Internal build. See <rdar://problem/47491383>.
171
172         Rubber-stamped by Tim Horton.
173
174         * WebCoreSupport/WebFrameLoaderClient.mm:
175
176 2019-01-22  Conrad Shultz  <conrad_shultz@apple.com>
177
178         Clean up USE(WEB_THREAD)
179         https://bugs.webkit.org/show_bug.cgi?id=193698
180
181         Rubber-stamped by Tim Horton.
182
183         * Misc/WebCache.mm:
184         (+[WebCache emptyInMemoryResources]):
185         * WebCoreSupport/WebFrameLoaderClient.mm:
186         (-[WebFramePolicyListener use]):
187         * WebCoreSupport/WebGeolocationClient.mm:
188         (-[WebGeolocationPolicyListener allow]):
189         (-[WebGeolocationPolicyListener deny]):
190         (-[WebGeolocationPolicyListener denyOnlyThisRequest]):
191         * WebView/WebFrame.mm:
192         (-[WebFrame deviceOrientationChanged]):
193         * WebView/WebHTMLView.mm:
194         (hardwareKeyboardAvailabilityChangedCallback):
195         * WebView/WebView.mm:
196         (+[WebView _releaseMemoryNow]):
197         (+[WebView willEnterBackgroundWithCompletionHandler:]):
198         (-[WebView updateLayoutIgnorePendingStyleSheets]):
199         (-[WebView _dispatchUnloadEvent]):
200         (-[WebView _close]):
201         (-[WebView _preferencesChangedNotification:]):
202         (-[WebView _setCustomFixedPositionLayoutRectInWebThread:synchronize:]):
203         (-[WebView goBack]):
204         (-[WebView goForward]):
205         (+[WebView _cacheModelChangedNotification:]):
206         (-[WebView stopLoading:]):
207         (-[WebView stopLoadingAndClear]):
208         (-[WebView reload:]):
209         (WebInstallMemoryPressureHandler):
210
211 2019-01-23  Wenson Hsieh  <wenson_hsieh@apple.com>
212
213         Introduce UndoStep::label() and adopt it in WebKitLegacy and WebKit
214         https://bugs.webkit.org/show_bug.cgi?id=193706
215         <rdar://problem/44807048>
216
217         Reviewed by Ryosuke Niwa.
218
219         Use UndoStep::label().
220
221         * WebCoreSupport/WebEditorClient.h:
222         * WebCoreSupport/WebEditorClient.mm:
223         (-[WebUndoStep initWithUndoStep:]):
224         (+[WebUndoStep stepWithUndoStep:]):
225         (WebEditorClient::registerUndoOrRedoStep):
226         (WebEditorClient::registerUndoStep):
227         (WebEditorClient::registerRedoStep):
228
229 2019-01-22  Alex Christensen  <achristensen@webkit.org>
230
231         Move NetworkStorageSession ownership to NetworkProcess
232         https://bugs.webkit.org/show_bug.cgi?id=193580
233
234         Reviewed by Geoff Garen.
235
236         * Misc/WebCache.mm:
237         (+[WebCache clearCachedCredentials]):
238         * Misc/WebDownload.mm:
239         (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]):
240         * Plugins/WebBaseNetscapePluginView.mm:
241         (WebKit::getAuthenticationInfo):
242         * WebCoreSupport/WebFrameNetworkingContext.mm:
243         (WebFrameNetworkingContext::ensurePrivateBrowsingSession):
244         (WebFrameNetworkingContext::destroyPrivateBrowsingSession):
245         (WebFrameNetworkingContext::storageSession const):
246         * WebView/WebPreferences.mm:
247         (+[WebPreferences _switchNetworkLoaderToNewTestingSession]):
248         (+[WebPreferences _clearNetworkLoaderSession]):
249         (+[WebPreferences _setCurrentNetworkLoaderSessionCookieAcceptPolicy:]):
250
251 2019-01-22  Daniel Bates  <dabates@apple.com>
252
253         [iOS] Interpret text key commands on keydown and app key commands on keypress
254         https://bugs.webkit.org/show_bug.cgi?id=192897
255         <rdar://problem/46857378>
256
257         Reviewed by Brent Fulgham.
258
259         Adopt SPI to interpret text key commands and app key commands independently on keydown (isCharEvent
260         is false) and keypress (isCharEvent is true), respectively.
261
262         * WebView/WebHTMLView.mm:
263         (-[WebHTMLView _handleEditingKeyEvent:]):
264
265 2019-01-22  Oriol Brufau  <obrufau@igalia.com>
266
267         [css-logical] Implement flow-relative margin, padding and border shorthands
268         https://bugs.webkit.org/show_bug.cgi?id=188697
269
270         Reviewed by Simon Fraser and Antti Koivisto.
271
272         Add CSSLogicalEnabled runtime flag.
273
274         * WebView/WebPreferenceKeysPrivate.h:
275         * WebView/WebPreferences.mm:
276         (+[WebPreferences initialize]):
277         (-[WebPreferences cssLogicalEnabled]):
278         (-[WebPreferences setCSSLogicalEnabled:]):
279         * WebView/WebPreferencesPrivate.h:
280         * WebView/WebView.mm:
281         (-[WebView _preferencesChanged:]):
282
283 2019-01-15  Darin Adler  <darin@apple.com>
284
285         Use references rather than pointers for register/unregister functions, and more
286         https://bugs.webkit.org/show_bug.cgi?id=175028
287
288         Reviewed by Daniel Bates.
289
290         * WebCoreSupport/WebKitFullScreenListener.mm:
291         (-[WebKitFullScreenListener webkitWillEnterFullScreen]): Update for change to the
292         functions in Document; pass a reference.
293         (-[WebKitFullScreenListener webkitDidEnterFullScreen]): Ditto, don't pass the element.
294         (-[WebKitFullScreenListener webkitWillExitFullScreen]): Ditto.
295         (-[WebKitFullScreenListener webkitDidExitFullScreen]): Ditto.
296         * WebView/WebFullScreenController.mm:
297         (-[WebFullScreenController enterFullScreen:]): Ditto.
298         (-[WebFullScreenController finishedEnterFullScreenAnimation:]): Ditto.
299         (-[WebFullScreenController exitFullScreen]): Ditto.
300         (-[WebFullScreenController finishedExitFullScreenAnimation:]): Ditto.
301         * WebView/WebFullScreenController.mm:
302         (-[WebView _commonInitializationWithFrameName:groupName:]): Pass a reference.
303
304 2019-01-12  Dan Bernstein  <mitz@apple.com>
305
306         [Cocoa] Avoid importing directly from subumbrella frameworks
307         https://bugs.webkit.org/show_bug.cgi?id=186016
308         <rdar://problem/40591038>
309
310         Reviewed by Sam Weinig.
311
312         * Carbon/CarbonWindowAdapter.h: Import Carbon.h instead of HIToolbox headers.
313         * Carbon/CarbonWindowAdapter.mm: Ditto.
314         * Carbon/CarbonWindowFrame.m: Ditto.
315         * Carbon/HIViewAdapter.h: Ditto.
316         * Configurations/WebKitLegacy.xcconfig: Removed -iframework options from
317           OTHER_CFLAGS_COCOA_TOUCH_NO.
318         * Plugins/WebNetscapePluginEventHandlerCarbon.mm: Import Carbon.h instead of CarbonEvents.h.
319         * WebView/WebPDFDocumentExtras.mm: Import Quartz.h instead of a PDFKit header.
320         * WebView/WebPDFView.h: Ditto.
321
322 2019-01-20  Antoine Quint  <graouts@apple.com>
323
324         Add a POINTER_EVENTS feature flag
325         https://bugs.webkit.org/show_bug.cgi?id=193577
326         <rdar://problem/47408511>
327
328         Unreviewed. Also enable Pointer Events for iosmac.
329
330         * Configurations/FeatureDefines.xcconfig:
331
332 2019-01-19  Antoine Quint  <graouts@apple.com>
333
334         Add a POINTER_EVENTS feature flag
335         https://bugs.webkit.org/show_bug.cgi?id=193577
336
337         Reviewed by Dean Jackson.
338
339         * Configurations/FeatureDefines.xcconfig:
340
341 2019-01-18  Eric Carlson  <eric.carlson@apple.com>
342
343         Revert r238815, it broke WK1 video fullscreen on Mac
344         https://bugs.webkit.org/show_bug.cgi?id=193586
345         <rdar://problem/47358941>
346
347         Reviewed by Jer Noble.
348
349         * WebView/WebVideoFullscreenController.h: Added.
350         * WebView/WebVideoFullscreenController.mm: Added.
351         (SOFT_LINK_CLASS):
352         (-[WebVideoFullscreenController init]):
353         (-[WebVideoFullscreenController dealloc]):
354         (-[WebVideoFullscreenController fullscreenWindow]):
355         (-[WebVideoFullscreenController windowDidLoad]):
356         (-[WebVideoFullscreenController videoElement]):
357         (-[WebVideoFullscreenController setVideoElement:]):
358         (-[WebVideoFullscreenController clearFadeAnimation]):
359         (-[WebVideoFullscreenController windowDidExitFullscreen]):
360         (-[WebVideoFullscreenController windowDidEnterFullscreen]):
361         (-[WebVideoFullscreenController videoElementRect]):
362         (-[WebVideoFullscreenController applicationDidResignActive:]):
363         (frameExpandedToRatioOfFrame):
364         (createBackgroundFullscreenWindow):
365         (-[WebVideoFullscreenController setupFadeAnimationIfNeededAndFadeIn:]):
366         (-[WebVideoFullscreenController enterFullscreen:]):
367         (-[WebVideoFullscreenController exitFullscreen]):
368         (-[WebVideoFullscreenController applicationDidChangeScreenParameters:]):
369         (-[WebVideoFullscreenController updateMenuAndDockForFullscreen]):
370         (-[WebVideoFullscreenController _requestExit]):
371         (-[WebVideoFullscreenController requestExitFullscreenWithAnimation:]):
372         (-[WebVideoFullscreenController requestExitFullscreen]):
373         (-[WebVideoFullscreenController fadeHUDIn]):
374         (-[WebVideoFullscreenController observeValueForKeyPath:ofObject:change:context:]):
375         (-[WebVideoFullscreenController rateChanged:]):
376         (-[WebVideoFullscreenWindow initWithContentRect:styleMask:backing:defer:]):
377         (-[WebVideoFullscreenWindow dealloc]):
378         (-[WebVideoFullscreenWindow resignFirstResponder]):
379         (-[WebVideoFullscreenWindow canBecomeKeyWindow]):
380         (-[WebVideoFullscreenWindow mouseDown:]):
381         (-[WebVideoFullscreenWindow cancelOperation:]):
382         (-[WebVideoFullscreenWindow animatedResizeDidEnd]):
383         (-[WebVideoFullscreenWindow animateFromRect:toRect:withSubAnimation:controllerAction:]):
384         (-[WebVideoFullscreenWindow animationDidEnd:]):
385         (-[WebVideoFullscreenWindow mouseMoved:]):
386         * WebView/WebVideoFullscreenHUDWindowController.h: Added.
387         * WebView/WebVideoFullscreenHUDWindowController.mm: Added.
388         (-[WebVideoFullscreenHUDWindow initWithContentRect:styleMask:backing:defer:]):
389         (-[WebVideoFullscreenHUDWindow canBecomeKeyWindow]):
390         (-[WebVideoFullscreenHUDWindow cancelOperation:]):
391         (-[WebVideoFullscreenHUDWindow center]):
392         (-[WebVideoFullscreenHUDWindow keyDown:]):
393         (-[WebVideoFullscreenHUDWindow resignFirstResponder]):
394         (-[WebVideoFullscreenHUDWindow performKeyEquivalent:]):
395         (-[WebVideoFullscreenHUDWindowController init]):
396         (-[WebVideoFullscreenHUDWindowController dealloc]):
397         (-[WebVideoFullscreenHUDWindowController setArea:]):
398         (-[WebVideoFullscreenHUDWindowController keyDown:]):
399         (-[WebVideoFullscreenHUDWindowController delegate]):
400         (-[WebVideoFullscreenHUDWindowController setDelegate:]):
401         (-[WebVideoFullscreenHUDWindowController scheduleTimeUpdate]):
402         (-[WebVideoFullscreenHUDWindowController unscheduleTimeUpdate]):
403         (-[WebVideoFullscreenHUDWindowController fadeWindowIn]):
404         (-[WebVideoFullscreenHUDWindowController fadeWindowOut]):
405         (-[WebVideoFullscreenHUDWindowController closeWindow]):
406         (createMediaUIControl):
407         (createControlWithMediaUIControlType):
408         (createTimeTextField):
409         (createMediaUIBackgroundView):
410         (-[WebVideoFullscreenHUDWindowController windowDidLoad]):
411         (-[WebVideoFullscreenHUDWindowController updateVolume]):
412         (-[WebVideoFullscreenHUDWindowController updateTime]):
413         (-[WebVideoFullscreenHUDWindowController endScrubbing]):
414         (-[WebVideoFullscreenHUDWindowController timelinePositionChanged:]):
415         (-[WebVideoFullscreenHUDWindowController currentTime]):
416         (-[WebVideoFullscreenHUDWindowController setCurrentTime:]):
417         (-[WebVideoFullscreenHUDWindowController duration]):
418         (-[WebVideoFullscreenHUDWindowController maxVolume]):
419         (-[WebVideoFullscreenHUDWindowController volumeChanged:]):
420         (-[WebVideoFullscreenHUDWindowController setVolumeToZero:]):
421         (-[WebVideoFullscreenHUDWindowController setVolumeToMaximum:]):
422         (-[WebVideoFullscreenHUDWindowController decrementVolume]):
423         (-[WebVideoFullscreenHUDWindowController incrementVolume]):
424         (-[WebVideoFullscreenHUDWindowController volume]):
425         (-[WebVideoFullscreenHUDWindowController setVolume:]):
426         (-[WebVideoFullscreenHUDWindowController updatePlayButton]):
427         (-[WebVideoFullscreenHUDWindowController updateRate]):
428         (-[WebVideoFullscreenHUDWindowController togglePlaying:]):
429         (-[WebVideoFullscreenHUDWindowController playing]):
430         (-[WebVideoFullscreenHUDWindowController setPlaying:]):
431         (timeToString):
432         (-[WebVideoFullscreenHUDWindowController remainingTimeText]):
433         (-[WebVideoFullscreenHUDWindowController elapsedTimeText]):
434         (-[WebVideoFullscreenHUDWindowController mouseEntered:]):
435         (-[WebVideoFullscreenHUDWindowController mouseExited:]):
436         (-[WebVideoFullscreenHUDWindowController rewind:]):
437         (-[WebVideoFullscreenHUDWindowController fastForward:]):
438         (-[WebVideoFullscreenHUDWindowController exitFullscreen:]):
439         (-[WebVideoFullscreenHUDWindowController windowDidExpose:]):
440         (-[WebVideoFullscreenHUDWindowController windowDidClose:]):
441         * WebView/WebView.mm:
442         (-[WebView _enterVideoFullscreenForVideoElement:mode:]):
443         (-[WebView _exitVideoFullscreen]):
444
445 2019-01-18  Tim Horton  <timothy_horton@apple.com>
446
447         Get rid of ADVANCED_SPELL_CHECKING
448         https://bugs.webkit.org/show_bug.cgi?id=193592
449
450         Reviewed by Wenson Hsieh.
451
452         * WebCoreSupport/WebEditorClient.mm:
453         (insertionPointFromCurrentSelection):
454         (WebEditorClient::checkTextOfParagraph):
455         (WebEditorClient::getGuessesForWord):
456         (WebEditorClient::requestCandidatesForSelection):
457         (WebEditorClient::requestCheckingOfString):
458         * WebView/WebHTMLView.mm:
459         (-[WebHTMLView insertText:]):
460
461 2019-01-18  Jer Noble  <jer.noble@apple.com>
462
463         SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds
464         https://bugs.webkit.org/show_bug.cgi?id=189553
465
466         Reviewed by Tim Horton.
467
468         * Configurations/Base.xcconfig:
469         * Configurations/SDKVariant.xcconfig: Added.
470         * Configurations/WebKitLegacy.xcconfig:
471
472 2019-01-18  David Kilzer  <ddkilzer@apple.com>
473
474         Switch remaining UIKit soft-linking in WebCore, WebKitLegacy over to UIKitSoftLink.{cpp,h}
475         <https://webkit.org/b/193568>
476         <rdar://problem/47381130>
477
478         Reviewed by Alex Christensen.
479
480         * WebView/WebView.mm:
481         - Remove unused soft-linking macros.
482         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
483         (-[WebUITextIndicatorData initWithImage:scale:]):
484         - Update to use exported PAL functions.
485
486 2019-01-17  Truitt Savell  <tsavell@apple.com>
487
488         Unreviewed, rolling out r240124.
489
490         This commit broke an internal build.
491
492         Reverted changeset:
493
494         "SDK_VARIANT build destinations should be separate from non-
495         SDK_VARIANT builds"
496         https://bugs.webkit.org/show_bug.cgi?id=189553
497         https://trac.webkit.org/changeset/240124
498
499 2019-01-17  Jer Noble  <jer.noble@apple.com>
500
501         SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds
502         https://bugs.webkit.org/show_bug.cgi?id=189553
503
504         Reviewed by Tim Horton.
505
506         * Configurations/Base.xcconfig:
507         * Configurations/SDKVariant.xcconfig: Added.
508         * Configurations/WebKitLegacy.xcconfig:
509
510 2019-01-17  Alex Christensen  <achristensen@webkit.org>
511
512         Stop using NetworkStorageSession::storageSession in WebCore
513         https://bugs.webkit.org/show_bug.cgi?id=193529
514
515         Reviewed by Tim Horton.
516
517         * Misc/WebCache.mm:
518         (+[WebCache addImageToCache:forURL:forFrame:]):
519         * WebView/WebView.mm:
520         (-[WebView _commonInitializationWithFrameName:groupName:]):
521         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
522
523 2019-01-15  Alex Christensen  <achristensen@webkit.org>
524
525         Reduce use of NetworkStorageSession::defaultStorageSession in WebCore
526         https://bugs.webkit.org/show_bug.cgi?id=193368
527
528         Reviewed by Geoff Garen.
529
530         * Misc/WebCache.mm:
531         (+[WebCache clearCachedCredentials]):
532         * Misc/WebDownload.mm:
533         (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]):
534         * Plugins/WebBaseNetscapePluginView.mm:
535         (WebKit::getAuthenticationInfo):
536
537 2019-01-15  Alex Christensen  <achristensen@webkit.org>
538
539         Stop using CookiesStrategy
540         https://bugs.webkit.org/show_bug.cgi?id=161106
541
542         Reviewed by Don Olmstead and Antti Koivisto.
543
544         * Misc/WebCache.mm:
545         (+[WebCache addImageToCache:forURL:forFrame:]):
546         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
547         (WebKit::NetscapePluginInstanceProxy::getCookies):
548         (WebKit::NetscapePluginInstanceProxy::setCookies):
549         * Plugins/WebNetscapePluginView.mm:
550         (-[WebNetscapePluginView getVariable:forURL:value:length:]):
551         (-[WebNetscapePluginView setVariable:forURL:value:length:]):
552         * WebCoreSupport/WebPlatformStrategies.h:
553         * WebCoreSupport/WebPlatformStrategies.mm:
554         (WebPlatformStrategies::createCookiesStrategy): Deleted.
555         (WebPlatformStrategies::cookiesForDOM): Deleted.
556         (WebPlatformStrategies::setCookiesFromDOM): Deleted.
557         (WebPlatformStrategies::cookiesEnabled): Deleted.
558         (WebPlatformStrategies::cookieRequestHeaderFieldValue): Deleted.
559         (WebPlatformStrategies::getRawCookies): Deleted.
560         (WebPlatformStrategies::deleteCookie): Deleted.
561         * WebView/WebView.mm:
562         (-[WebView _commonInitializationWithFrameName:groupName:]):
563         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
564
565 2019-01-15  Tim Horton  <timothy_horton@apple.com>
566
567         Cannot tab out of WKWebView on macOS
568         https://bugs.webkit.org/show_bug.cgi?id=161448
569         <rdar://problem/28100085>
570
571         Reviewed by Dean Jackson.
572
573         * WebCoreSupport/WebChromeClient.mm:
574         * WebView/WebView.mm:
575         Make use of SPI headers.
576
577 2019-01-14  Commit Queue  <commit-queue@webkit.org>
578
579         Unreviewed, rolling out r239901, r239909, r239910, r239912,
580         r239913, and r239914.
581         https://bugs.webkit.org/show_bug.cgi?id=193407
582
583         These revisions caused an internal failure (Requested by
584         Truitt on #webkit).
585
586         Reverted changesets:
587
588         "[Cocoa] Avoid importing directly from subumbrella frameworks"
589         https://bugs.webkit.org/show_bug.cgi?id=186016
590         https://trac.webkit.org/changeset/239901
591
592         "Tried to fix USE(APPLE_INTERNAL_SDK) builds after r239901."
593         https://trac.webkit.org/changeset/239909
594
595         "Tried to fix the build."
596         https://trac.webkit.org/changeset/239910
597
598         "Fixed iOS builds after r239910."
599         https://trac.webkit.org/changeset/239912
600
601         "More build fixing."
602         https://trac.webkit.org/changeset/239913
603
604         "Tried to fix USE(APPLE_INTERNAL_SDK) 32-bit builds."
605         https://trac.webkit.org/changeset/239914
606
607 2019-01-14  Mark Lam  <mark.lam@apple.com>
608
609         Re-enable ability to build --cloop builds.
610         https://bugs.webkit.org/show_bug.cgi?id=192955
611         <rdar://problem/46882363>
612
613         Reviewed by Saam barati and Keith Miller.
614
615         * Configurations/FeatureDefines.xcconfig:
616
617 2019-01-13  Dan Bernstein  <mitz@apple.com>
618
619         Tried to fix USE(APPLE_INTERNAL_SDK) builds after r239901.
620
621         Patch by Keith Rollin.
622
623         * WebView/PDFViewSPI.h:
624
625 2019-01-12  Timothy Hatcher  <timothy@apple.com>
626
627         Have prefers-color-scheme: light always match on macOS versions before Mojave.
628         https://bugs.webkit.org/show_bug.cgi?id=191655
629         rdar://problem/46074680
630
631         Reviewed by Megan Gardner.
632
633         * Configurations/FeatureDefines.xcconfig: ENABLE_DARK_MODE_CSS_macosx for all OS versions.
634         * WebView/WebView.mm:
635         (-[WebView _effectiveAppearanceIsDark]):
636
637 2019-01-12  Dan Bernstein  <mitz@apple.com>
638
639         [Cocoa] Avoid importing directly from subumbrella frameworks
640         https://bugs.webkit.org/show_bug.cgi?id=186016
641         <rdar://problem/40591038>
642
643         Reviewed by Sam Weinig.
644
645         * Carbon/CarbonWindowAdapter.h: Import Carbon.h instead of HIToolbox headers.
646         * Carbon/CarbonWindowAdapter.mm: Ditto.
647         * Carbon/CarbonWindowFrame.m: Ditto.
648         * Carbon/HIViewAdapter.h: Ditto.
649         * Configurations/WebKitLegacy.xcconfig: Removed -iframework options from
650           OTHER_CFLAGS_COCOA_TOUCH_NO.
651         * Plugins/WebNetscapePluginEventHandlerCarbon.mm: Import Carbon.h instead of CarbonEvents.h.
652         * WebView/WebPDFDocumentExtras.mm: Import Quartz.h instead of a PDFKit header.
653         * WebView/WebPDFView.h: Ditto.
654
655 2019-01-11  Ryosuke Niwa  <rniwa@webkit.org>
656
657         Enable visual viewport API by default
658         https://bugs.webkit.org/show_bug.cgi?id=193376
659
660         Reviewed by Simon Fraser.
661
662         * WebView/WebPreferences.mm:
663         (+[WebPreferences initialize]):
664
665 2019-01-11  John Wilander  <wilander@apple.com>
666
667         Compile out Web API Statistics Collection
668         https://bugs.webkit.org/show_bug.cgi?id=193370
669         <rdar://problem/45388584>
670
671         Reviewed by Brent Fulgham.
672
673         * Configurations/FeatureDefines.xcconfig:
674             Defined ENABLE_WEB_API_STATISTICS, off by default.
675
676 2019-01-08  Alex Christensen  <achristensen@webkit.org>
677
678         Stop using NetworkStorageSession in WebProcess
679         https://bugs.webkit.org/show_bug.cgi?id=193236
680
681         Reviewed by Don Olmstead.
682
683         * WebCoreSupport/WebFrameNetworkingContext.h:
684         * WebCoreSupport/WebFrameNetworkingContext.mm:
685         (WebFrameNetworkingContext::storageSession const):
686         * WebCoreSupport/WebPlatformStrategies.h:
687         * WebCoreSupport/WebPlatformStrategies.mm:
688         (WebPlatformStrategies::cookiesForDOM):
689         (WebPlatformStrategies::setCookiesFromDOM):
690         (WebPlatformStrategies::cookiesEnabled):
691         (WebPlatformStrategies::cookieRequestHeaderFieldValue):
692         (WebPlatformStrategies::getRawCookies):
693         (WebPlatformStrategies::deleteCookie):
694         * WebView/WebView.mm:
695         (-[WebView _cachedResponseForURL:]):
696         (-[WebView _clearCredentials]):
697
698 2019-01-08  Alex Christensen  <achristensen@webkit.org>
699
700         Unreviewed, rolling out r239727.
701
702         Broke API tests
703
704         Reverted changeset:
705
706         "Stop using NetworkStorageSession in WebProcess"
707         https://bugs.webkit.org/show_bug.cgi?id=193236
708         https://trac.webkit.org/changeset/239727
709
710 2019-01-08  Alex Christensen  <achristensen@webkit.org>
711
712         Stop using NetworkStorageSession in WebProcess
713         https://bugs.webkit.org/show_bug.cgi?id=193236
714
715         Reviewed by Don Olmstead.
716
717         * WebCoreSupport/WebFrameNetworkingContext.h:
718         * WebCoreSupport/WebFrameNetworkingContext.mm:
719         (WebFrameNetworkingContext::storageSession const):
720         * WebView/WebView.mm:
721         (-[WebView _cachedResponseForURL:]):
722         (-[WebView _clearCredentials]):
723
724 2019-01-07  David Kilzer  <ddkilzer@apple.com>
725
726         Prefer RetainPtr<NSObject> to RetainPtr<NSObject *>
727         <https://webkit.org/b/193056>
728
729         Reviewed by Alex Christensen.
730
731         * Plugins/Hosted/NetscapePluginHostProxy.h:
732         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
733         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
734         (WebKit::NetscapePluginInstanceProxy::enumerate):
735         (WebKit::NetscapePluginInstanceProxy::marshalValue):
736         (WebKit::NetscapePluginInstanceProxy::marshalValues):
737         (WebKit::NetscapePluginInstanceProxy::demarshalValue):
738         (WebKit::NetscapePluginInstanceProxy::demarshalValues):
739         * Plugins/Hosted/ProxyInstance.mm:
740         (WebKit::ProxyInstance::invoke):
741         * WebCoreSupport/WebGeolocationClient.mm:
742         * WebView/WebDataSource.mm:
743         (-[WebDataSource _receivedData:]):
744         * WebView/WebView.mm:
745         (-[WebView _cachedResponseForURL:]):
746         - Remove '*' from RetainPtr<> type.
747
748 2019-01-04  Alex Christensen  <achristensen@webkit.org>
749
750         Progress towards fixing Mac CMake build
751         https://bugs.webkit.org/show_bug.cgi?id=193105
752
753         Reviewed by Don Olmstead.
754
755         * WebKitPrefix.h:
756
757 2019-01-04  Joseph Pecoraro  <pecoraro@apple.com>
758
759         Web Inspector: Use save sheet instead of dialog where possible
760         https://bugs.webkit.org/show_bug.cgi?id=193160
761         <rdar://problem/37399759>
762
763         Reviewed by Devin Rousso.
764
765         * WebCoreSupport/WebInspectorClient.mm:
766         (WebInspectorFrontendClient::save):
767
768 2019-01-04  Wenson Hsieh  <wenson_hsieh@apple.com>
769
770         [Cocoa] Merge WebEditCommandProxy::nameForEditAction and undoNameForEditAction into a single function
771         https://bugs.webkit.org/show_bug.cgi?id=193129
772
773         Reviewed by Tim Horton.
774
775         Remove undoNameForEditAction and use WebCore::nameForUndoRedo instead.
776
777         * WebCoreSupport/WebEditorClient.mm:
778         (WebEditorClient::registerUndoOrRedoStep):
779         (undoNameForEditAction): Deleted.
780
781 2019-01-02  Wenson Hsieh  <wenson_hsieh@apple.com>
782
783         Add support for using the current text selection as the find string on iOS
784         https://bugs.webkit.org/show_bug.cgi?id=193034
785         <rdar://problem/45138739>
786
787         Reviewed by Tim Horton.
788
789         Add a method stub for WebKitLegacy.
790
791         * WebCoreSupport/WebEditorClient.h:
792
793 2019-01-01  Jeff Miller  <jeffm@apple.com>
794
795         Update user-visible copyright strings to include 2019
796         https://bugs.webkit.org/show_bug.cgi?id=192811
797
798         Reviewed by Mark Lam.
799
800         * Info.plist:
801
802 2018-12-20  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
803
804         Use Ref<> as much as possible
805         https://bugs.webkit.org/show_bug.cgi?id=192808
806
807         Reviewed by Alex Christensen.
808
809         * DOM/DOM.mm:
810         (-[DOMNode getPreviewSnapshotImage:andRects:]):
811         * Plugins/Hosted/NetscapePluginHostManager.mm:
812         (WebKit::NetscapePluginHostManager::instantiatePlugin):
813         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
814         (WebKit::NetscapePluginInstanceProxy::evaluateJavaScript):
815         (WebKit::NetscapePluginInstanceProxy::loadRequest):
816         * Plugins/WebNetscapePluginView.mm:
817         (-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]):
818         (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
819         * WebCoreSupport/WebContextMenuClient.mm:
820         (WebContextMenuClient::imageForCurrentSharingServicePickerItem):
821         * WebCoreSupport/WebFrameLoaderClient.mm:
822         (WebFrameLoaderClient::transitionToCommittedForNewPage):
823         * WebView/WebFrame.mm:
824         (-[WebFrame getDictationResultRanges:andMetadatas:]):
825         * WebView/WebHTMLView.mm:
826         (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
827         * WebView/WebView.mm:
828         (+[WebView _addUserScriptToGroup:world:source:url:whitelist:blacklist:injectionTime:injectedFrames:]):
829         (+[WebView _addUserStyleSheetToGroup:world:source:url:whitelist:blacklist:injectedFrames:]):
830
831 2018-12-21  Benjamin Poulain  <benjamin@webkit.org>
832
833         <rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
834         https://bugs.webkit.org/show_bug.cgi?id=192821
835
836         Reviewed by Chris Dumez.
837
838         When a window becomes occluded, the window server informs the application.
839         This should be used to suspend any work that is not visible by the user.
840
841         WebKit2 handles it just fine, but WebKit1 did not handle the notification.
842         In some cases, that lead to performance impact (see radar).
843
844         This patch adds an observer for the occlusion notification. I tried to stick
845         with the same names used by WebKit2.
846
847         * WebView/WebView.mm:
848         (-[WebView _isViewVisible]):
849         (-[WebView addWindowObserversForWindow:]):
850         (-[WebView removeWindowObservers]):
851         (-[WebView _windowDidChangeOcclusionState:]):
852
853 2018-12-20  Jiewen Tan  <jiewen_tan@apple.com>
854
855         [WebAuthN] Add a runtime flag for local authenticator
856         https://bugs.webkit.org/show_bug.cgi?id=192792
857         <rdar://problem/46798738>
858
859         Reviewed by Brent Fulgham.
860
861         * WebView/WebPreferenceKeysPrivate.h:
862         * WebView/WebPreferences.mm:
863         (+[WebPreferences initialize]):
864         (-[WebPreferences webAuthenticationEnabled]): Deleted.
865         (-[WebPreferences setWebAuthenticationEnabled:]): Deleted.
866         * WebView/WebPreferencesPrivate.h:
867         * WebView/WebView.mm:
868         (-[WebView _preferencesChanged:]):
869
870 2018-12-20  Chris Dumez  <cdumez@apple.com>
871
872         Use Optional::valueOr() instead of Optional::value_or()
873         https://bugs.webkit.org/show_bug.cgi?id=192933
874
875         Reviewed by Geoffrey Garen.
876
877         * WebCoreSupport/WebSecurityOrigin.mm:
878         (-[WebSecurityOrigin port]):
879
880 2018-12-20  Ryan Haddad  <ryanhaddad@apple.com>
881
882         Unreviewed, rolling out r239417.
883
884         Introduced two API test failures on macOS.
885
886         Reverted changeset:
887
888         "<rdar://problem/46194315> macOS: WebKit1 does not handle
889         occlusion changes"
890         https://bugs.webkit.org/show_bug.cgi?id=192821
891         https://trac.webkit.org/changeset/239417
892
893 2018-12-20  Brent Fulgham  <bfulgham@apple.com>
894
895         WKWebView default UA doesn't freeze the build number
896         https://bugs.webkit.org/show_bug.cgi?id=192809
897         <rdar://problem/44687185>
898
899         Reviewed by Andy Estes.
900
901         Always reports the frozen build number.
902
903         * WebView/WebView.mm:
904         (-[WebView _setBrowserUserAgentProductVersion:buildVersion:bundleVersion:]): Do not report the
905         actual build number through this method call.
906         (-[WebView _setUIWebViewUserAgentWithBuildVersion:]): Ditto.
907
908 2018-12-19  Chris Dumez  <cdumez@apple.com>
909
910         wtf/Optional.h: move-constructor and move-assignment operator should disengage the value being moved from
911         https://bugs.webkit.org/show_bug.cgi?id=192728
912         <rdar://problem/46746779>
913
914         Reviewed by Geoff Garen.
915
916         * DOM/*:
917         * Plugins/*:
918         * WebCoreSupport/*:
919         * WebView/*:
920
921 2018-12-19  Benjamin Poulain  <benjamin@webkit.org>
922
923         <rdar://problem/46194315> macOS: WebKit1 does not handle occlusion changes
924         https://bugs.webkit.org/show_bug.cgi?id=192821
925
926         Reviewed by Chris Dumez.
927
928         When a window becomes occluded, the window server informs the application.
929         This should be used to suspend any work that is not visible by the user.
930
931         WebKit2 handles it just fine, but WebKit1 did not handle the notification.
932         In some cases, that lead to performance impact (see radar).
933
934         This patch adds an observer for the occlusion notification. I tried to stick
935         with the same names used by WebKit2.
936
937         * WebView/WebView.mm:
938         (-[WebView _isViewVisible]):
939         (-[WebView addWindowObserversForWindow:]):
940         (-[WebView removeWindowObservers]):
941         (-[WebView _windowDidChangeOcclusionState:]):
942
943 2018-12-19  Megan Gardner  <megan_gardner@apple.com>
944
945         Allow clients to set the navigator platform
946         https://bugs.webkit.org/show_bug.cgi?id=192735
947
948         Reviewed by Tim Horton.
949
950         Add stubs to fill out the added functionality in FrameLoaderClient.
951
952         * WebCoreSupport/WebFrameLoaderClient.h:
953         * WebCoreSupport/WebFrameLoaderClient.mm:
954         (WebFrameLoaderClient::navigatorPlatform):
955
956 2018-12-17  Ryosuke Niwa  <rniwa@webkit.org>
957
958         offsetLeft and offsetParent should adjust across shadow boundaries
959         https://bugs.webkit.org/show_bug.cgi?id=157437
960         <rdar://problem/26154021>
961
962         Reviewed by Simon Fraser.
963
964         Use *forBindings variants of offsetLeft, offsetTop, and offsetParent.
965
966         * DOM/DOMElement.mm:
967         (-[DOMElement offsetLeft]):
968         (-[DOMElement offsetTop]):
969         (-[DOMElement offsetParent]):
970
971 2018-12-17  Zalan Bujtas  <zalan@apple.com>
972
973         Unreviewed build fix.
974
975         * WebView/WebFrame.mm:
976         (-[WebFrame getDictationResultRanges:andMetadatas:]):
977
978 2018-12-15  Darin Adler  <darin@apple.com>
979
980         Use warning-ignoring macros more consistently and simply
981         https://bugs.webkit.org/show_bug.cgi?id=192743
982
983         Reviewed by Mark Lam.
984
985         * DOM/DOM.mm: Use IGNORE_WARNINGS_BEGIN/END instead of
986         IGNORE_CLANG_WARNINGS_BEGIN since there is no need to accomodate non-clang
987         compilers in Objective-C++ code.
988
989         * WebCoreSupport/WebAlternativeTextClient.h: Use IGNORE_WARNINGS_BEGIN/END
990         instead of IGNORE_CLANG_WARNINGS_BEGIN/END because there is no need to
991         accomodate non-clang compilers here. Also use #pragma once, add a missing
992         "explicit" and fix conditionals.
993
994 2018-12-12  Ryosuke Niwa  <rniwa@webkit.org>
995
996         Make TextInputController.legacyAttributedString take DOM nodes and offsets
997         https://bugs.webkit.org/show_bug.cgi?id=192653
998
999         Reviewed by Wenson Hsieh.
1000
1001         * WebView/WebHTMLView.mm:
1002         (-[WebHTMLView _legacyAttributedStringFrom:offset:to:offset:]):
1003
1004 2018-12-11  Justin Michaud  <justin_michaud@apple.com>
1005
1006         Implement feature flag for CSS Typed OM
1007         https://bugs.webkit.org/show_bug.cgi?id=192610
1008
1009         Reviewed by Ryosuke Niwa.
1010
1011         * Configurations/FeatureDefines.xcconfig:
1012
1013 2018-12-11  Tim Horton  <timothy_horton@apple.com>
1014
1015         WebCore shouldn't have a Objective-C class named NSCursor
1016         https://bugs.webkit.org/show_bug.cgi?id=192602
1017         <rdar://problem/46615532>
1018
1019         Reviewed by Wenson Hsieh.
1020
1021         * WebView/WebFrameView.mm:
1022         (-[WebFrameView keyDown:keyDown:]):
1023         * WebView/WebHTMLView.mm:
1024         (-[WebHTMLView keyDown:]):
1025         (-[WebHTMLView performKeyEquivalent:]):
1026         Only use NSCursor on macOS.
1027
1028 2018-12-10  Don Olmstead  <don.olmstead@sony.com>
1029
1030         Move ENABLE_RESOURCE_LOAD_STATISTICS to FeatureDefines.xcconfig
1031         https://bugs.webkit.org/show_bug.cgi?id=192573
1032
1033         Reviewed by Simon Fraser.
1034
1035         * Configurations/FeatureDefines.xcconfig:
1036
1037 2018-12-10  Antti Koivisto  <antti@apple.com>
1038
1039         Rename "forced style recalc" to "full style rebuild"
1040         https://bugs.webkit.org/show_bug.cgi?id=192572
1041
1042         Reviewed by Zalan Bujtas.
1043
1044         * WebView/WebHTMLView.mm:
1045         (-[WebHTMLView setNeedsToApplyStyles:]):
1046
1047 2018-12-10  Darin Adler  <darin@apple.com>
1048
1049         [macOS] MSHCreateMIGServerSource invocation does not handle send/receive rights correctly
1050         https://bugs.webkit.org/show_bug.cgi?id=192533
1051         rdar://problem/45732710
1052
1053         Reviewed by Anders Carlsson.
1054
1055         * Plugins/Hosted/NetscapePluginHostProxy.mm:
1056         (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): Pass kMSHDoNotCreateSendRightOption.
1057
1058 2018-12-10  Darin Adler  <darin@apple.com>
1059
1060         [macOS] Use mach_port_mod_refs instead of mach_port_destroy
1061         https://bugs.webkit.org/show_bug.cgi?id=192532
1062         rdar://problem/45731047
1063
1064         Reviewed by Chris Dumez.
1065
1066         * Plugins/Hosted/NetscapePluginHostManager.mm:
1067         (WebKit::NetscapePluginHostManager::hostForPlugin): Use mach_port_mod_refs.
1068         * Plugins/Hosted/NetscapePluginHostProxy.mm:
1069         (WebKit::NetscapePluginHostProxy::~NetscapePluginHostProxy): Ditto.
1070
1071 2018-12-05  Wenson Hsieh  <wenson_hsieh@apple.com>
1072
1073         Turn WritingDirection into an enum class
1074         https://bugs.webkit.org/show_bug.cgi?id=192401
1075         Work towards <rdar://problem/42075638>
1076
1077         Reviewed by Dan Bernstein.
1078
1079         Change WritingDirection from an enum to an enum class. No change in behavior.
1080
1081         * WebView/WebHTMLView.mm:
1082         (-[WebHTMLView toggleBaseWritingDirection:]):
1083         (-[WebHTMLView changeBaseWritingDirection:]):
1084         (-[WebHTMLView _changeBaseWritingDirectionTo:]):
1085
1086 2018-12-03  Alex Christensen  <achristensen@webkit.org>
1087
1088         Add WKWebProcessPlugInLoadDelegate SPI willStartProvisionalLoadForFrame with a completion handler
1089         https://bugs.webkit.org/show_bug.cgi?id=192272
1090
1091         Reviewed by Brady Eidson.
1092
1093         * WebCoreSupport/WebFrameLoaderClient.h:
1094         * WebCoreSupport/WebFrameLoaderClient.mm:
1095         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
1096
1097 2018-12-03  Jer Noble  <jer.noble@apple.com>
1098
1099         Get rid of old, dead Mac video fullscreen code.
1100         https://bugs.webkit.org/show_bug.cgi?id=192315
1101
1102         Reviewed by Eric Carlson.
1103
1104         The Mac-only WebVideoFullscreenController and WebVideoFullscreenHUDWindowController depend upon QTKit, which
1105         is no longer supported in the Mac port.
1106
1107         * WebView/WebVideoFullscreenController.h: Removed.
1108         * WebView/WebVideoFullscreenController.mm: Removed.
1109         * WebView/WebVideoFullscreenHUDWindowController.h: Removed.
1110         * WebView/WebVideoFullscreenHUDWindowController.mm: Removed.
1111         * WebView/WebView.mm:
1112         (-[WebView _enterVideoFullscreenForVideoElement:mode:]):
1113         (-[WebView _exitVideoFullscreen]):
1114
1115 2018-12-03  Daniel Bates  <dabates@apple.com>
1116
1117         [iOS] Do not handle key events that are key commands
1118         https://bugs.webkit.org/show_bug.cgi?id=191608
1119         <rdar://problem/46046013>
1120
1121         Reviewed by Ryosuke Niwa.
1122
1123         A key down event may be associated with a key command. If it is then we want to execute the
1124         key command instead of inserting or deleting text. We need to ask UIKit to handle the current
1125         event as a key command to find out.
1126
1127         * WebView/WebHTMLView.mm:
1128         (-[WebHTMLView _handleEditingKeyEvent:]):
1129
1130 2018-12-02  Zalan Bujtas  <zalan@apple.com>
1131
1132         Add a runtime feature flag for LayoutFormattingContext.
1133         https://bugs.webkit.org/show_bug.cgi?id=192280
1134
1135         Reviewed by Simon Fraser.
1136
1137         * Configurations/FeatureDefines.xcconfig:
1138
1139 2018-11-30  Alex Christensen  <achristensen@webkit.org>
1140
1141         Move URL from WebCore to WTF
1142         https://bugs.webkit.org/show_bug.cgi?id=190234
1143
1144         Reviewed by Keith Miller.
1145
1146         * DOM/DOMAttr.mm:
1147         * DOM/DOMBlob.mm:
1148         * DOM/DOMCSSCharsetRule.mm:
1149         * DOM/DOMCSSImportRule.mm:
1150         * DOM/DOMCSSMediaRule.mm:
1151         * DOM/DOMCSSPageRule.mm:
1152         * DOM/DOMCSSPrimitiveValue.mm:
1153         * DOM/DOMCSSRule.mm:
1154         * DOM/DOMCSSStyleDeclaration.mm:
1155         * DOM/DOMCSSStyleRule.mm:
1156         * DOM/DOMCSSStyleSheet.mm:
1157         * DOM/DOMCSSValue.mm:
1158         * DOM/DOMCharacterData.mm:
1159         * DOM/DOMCounter.mm:
1160         * DOM/DOMDocument.mm:
1161         * DOM/DOMDocumentFragment.mm:
1162         * DOM/DOMDocumentType.mm:
1163         * DOM/DOMEvent.mm:
1164         * DOM/DOMFile.mm:
1165         * DOM/DOMHTMLAnchorElement.mm:
1166         * DOM/DOMHTMLAppletElement.mm:
1167         * DOM/DOMHTMLAreaElement.mm:
1168         * DOM/DOMHTMLBRElement.mm:
1169         * DOM/DOMHTMLBaseElement.mm:
1170         * DOM/DOMHTMLBaseFontElement.mm:
1171         * DOM/DOMHTMLBodyElement.mm:
1172         * DOM/DOMHTMLButtonElement.mm:
1173         * DOM/DOMHTMLCanvasElement.mm:
1174         * DOM/DOMHTMLCollection.mm:
1175         * DOM/DOMHTMLDivElement.mm:
1176         * DOM/DOMHTMLDocument.mm:
1177         * DOM/DOMHTMLElement.mm:
1178         * DOM/DOMHTMLEmbedElement.mm:
1179         * DOM/DOMHTMLFieldSetElement.mm:
1180         * DOM/DOMHTMLFontElement.mm:
1181         * DOM/DOMHTMLFormElement.mm:
1182         * DOM/DOMHTMLFrameElement.mm:
1183         * DOM/DOMHTMLFrameSetElement.mm:
1184         * DOM/DOMHTMLHRElement.mm:
1185         * DOM/DOMHTMLHeadElement.mm:
1186         * DOM/DOMHTMLHeadingElement.mm:
1187         * DOM/DOMHTMLHtmlElement.mm:
1188         * DOM/DOMHTMLIFrameElement.mm:
1189         * DOM/DOMHTMLImageElement.mm:
1190         * DOM/DOMHTMLInputElement.mm:
1191         * DOM/DOMHTMLLIElement.mm:
1192         * DOM/DOMHTMLLabelElement.mm:
1193         * DOM/DOMHTMLLegendElement.mm:
1194         * DOM/DOMHTMLLinkElement.mm:
1195         * DOM/DOMHTMLMapElement.mm:
1196         * DOM/DOMHTMLMarqueeElement.mm:
1197         * DOM/DOMHTMLMediaElement.mm:
1198         * DOM/DOMHTMLMetaElement.mm:
1199         * DOM/DOMHTMLModElement.mm:
1200         * DOM/DOMHTMLOListElement.mm:
1201         * DOM/DOMHTMLObjectElement.mm:
1202         * DOM/DOMHTMLOptGroupElement.mm:
1203         * DOM/DOMHTMLOptionElement.mm:
1204         * DOM/DOMHTMLOptionsCollection.mm:
1205         * DOM/DOMHTMLParagraphElement.mm:
1206         * DOM/DOMHTMLParamElement.mm:
1207         * DOM/DOMHTMLQuoteElement.mm:
1208         * DOM/DOMHTMLScriptElement.mm:
1209         * DOM/DOMHTMLSelectElement.mm:
1210         * DOM/DOMHTMLStyleElement.mm:
1211         * DOM/DOMHTMLTableCaptionElement.mm:
1212         * DOM/DOMHTMLTableCellElement.mm:
1213         * DOM/DOMHTMLTableColElement.mm:
1214         * DOM/DOMHTMLTableElement.mm:
1215         * DOM/DOMHTMLTableRowElement.mm:
1216         * DOM/DOMHTMLTableSectionElement.mm:
1217         * DOM/DOMHTMLTitleElement.mm:
1218         * DOM/DOMHTMLUListElement.mm:
1219         * DOM/DOMHTMLVideoElement.mm:
1220         * DOM/DOMKeyboardEvent.mm:
1221         * DOM/DOMMediaList.mm:
1222         * DOM/DOMMouseEvent.mm:
1223         * DOM/DOMMutationEvent.mm:
1224         * DOM/DOMNamedNodeMap.mm:
1225         * DOM/DOMProcessingInstruction.mm:
1226         * DOM/DOMRange.mm:
1227         * DOM/DOMStyleSheet.mm:
1228         * DOM/DOMText.mm:
1229         * DOM/DOMTextEvent.mm:
1230         * DOM/DOMTokenList.mm:
1231         * DOM/DOMUIEvent.mm:
1232         * DOM/DOMXPathResult.mm:
1233         * History/WebHistoryItem.mm:
1234         * Misc/WebNSURLExtras.mm:
1235         (-[NSURL _web_userVisibleString]):
1236         (-[NSURL _web_URLByRemovingUserInfo]):
1237         (-[NSURL _web_dataForURLComponentType:]):
1238         (-[NSURL _web_schemeData]):
1239         (-[NSURL _web_hostData]):
1240         * Misc/WebUserContentURLPattern.mm:
1241         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1242         * Plugins/WebNetscapePluginStream.h:
1243         (WebNetscapePluginStream::setRequestURL):
1244         * WebCoreSupport/WebChromeClient.h:
1245         * WebCoreSupport/WebChromeClient.mm:
1246         (WebChromeClient::signedPublicKeyAndChallengeString const):
1247         * WebCoreSupport/WebContextMenuClient.h:
1248         * WebCoreSupport/WebContextMenuClient.mm:
1249         * WebCoreSupport/WebDragClient.h:
1250         * WebCoreSupport/WebFrameLoaderClient.h:
1251         * WebCoreSupport/WebFrameLoaderClient.mm:
1252         (WebFrameLoaderClient::updateGlobalHistory):
1253         * WebCoreSupport/WebPaymentCoordinatorClient.h:
1254         * WebCoreSupport/WebPaymentCoordinatorClient.mm:
1255         (WebPaymentCoordinatorClient::showPaymentUI):
1256         * WebCoreSupport/WebPlatformStrategies.h:
1257         * WebCoreSupport/WebPlatformStrategies.mm:
1258         (WebPlatformStrategies::readURLFromPasteboard):
1259         * WebCoreSupport/WebPluginInfoProvider.h:
1260         * WebCoreSupport/WebPluginInfoProvider.mm:
1261         (WebPluginInfoProvider::webVisiblePluginInfo):
1262         * WebCoreSupport/WebSecurityOrigin.mm:
1263         * WebCoreSupport/WebVisitedLinkStore.h:
1264         * WebView/WebDataSource.mm:
1265         * WebView/WebFrame.mm:
1266         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
1267         * WebView/WebImmediateActionController.mm:
1268         (-[WebImmediateActionController _defaultAnimationController]):
1269         * WebView/WebPDFView.mm:
1270         * WebView/WebScriptDebugger.mm:
1271         * WebView/WebViewInternal.h:
1272
1273 2018-11-30  Don Olmstead  <don.olmstead@sony.com>
1274
1275         Rename ENABLE_SUBTLE_CRYPTO to ENABLE_WEB_CRYPTO
1276         https://bugs.webkit.org/show_bug.cgi?id=192197
1277
1278         Reviewed by Jiewen Tan.
1279
1280         * Configurations/FeatureDefines.xcconfig:
1281         * WebCoreSupport/WebChromeClient.h:
1282         * WebCoreSupport/WebChromeClient.mm:
1283
1284 2018-11-28  Alex Christensen  <achristensen@webkit.org>
1285
1286         Remove dead code from an earlier attempt at implementing safe browsing
1287         https://bugs.webkit.org/show_bug.cgi?id=192067
1288
1289         Reviewed by Chris Dumez.
1290
1291         * WebCoreSupport/WebFrameLoaderClient.h:
1292         * WebCoreSupport/WebFrameLoaderClient.mm:
1293         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1294
1295 2018-11-27  Mark Lam  <mark.lam@apple.com>
1296
1297         ENABLE_FAST_JIT_PERMISSIONS should be false for iosmac.
1298         https://bugs.webkit.org/show_bug.cgi?id=192055
1299         <rdar://problem/46288783>
1300
1301         Reviewed by Saam Barati.
1302
1303         * Configurations/FeatureDefines.xcconfig:
1304
1305 2018-11-25  Tim Horton  <timothy_horton@apple.com>
1306
1307         Make it possible to insert editable images with a gesture
1308         https://bugs.webkit.org/show_bug.cgi?id=191937
1309
1310         Reviewed by Wenson Hsieh.
1311
1312         * WebCoreSupport/WebEditorClient.mm:
1313         (undoNameForEditAction):
1314         Add a undo name.
1315
1316 2018-11-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1317
1318         [Cocoa] Fix a few localizable string descriptions in WebEditCommandProxy.cpp and WebEditorClient.mm
1319         https://bugs.webkit.org/show_bug.cgi?id=191945
1320
1321         Reviewed by Anders Carlsson.
1322
1323         * WebCoreSupport/WebEditorClient.mm:
1324         (undoNameForEditAction):
1325
1326 2018-11-23  Wenson Hsieh  <wenson_hsieh@apple.com>
1327
1328         Enable drag and drop support for iOSMac
1329         https://bugs.webkit.org/show_bug.cgi?id=191818
1330         <rdar://problem/43907454>
1331
1332         Reviewed by Dean Jackson.
1333
1334         * Configurations/FeatureDefines.xcconfig:
1335
1336 2018-11-22  Wenson Hsieh  <wenson_hsieh@apple.com>
1337
1338         Address post-review feedback after r238438
1339         https://bugs.webkit.org/show_bug.cgi?id=191913
1340
1341         Reviewed by Ryosuke Niwa.
1342
1343         * WebView/WebFrame.mm:
1344         (-[WebFrame setSelectedDOMRange:affinity:closeTyping:]):
1345         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
1346         * WebView/WebView.mm:
1347         (-[WebView setSelectedDOMRange:affinity:]):
1348
1349 2018-11-19  Joseph Pecoraro  <pecoraro@apple.com>
1350
1351         Web Inspector: "Reload Web Inspector" button no longer partially works
1352         https://bugs.webkit.org/show_bug.cgi?id=191773
1353         <rdar://problem/46139932>
1354
1355         Reviewed by Devin Rousso.
1356
1357         * WebCoreSupport/WebInspectorClient.h:
1358         * WebCoreSupport/WebInspectorClient.mm:
1359         (WebInspectorFrontendClient::reopen):
1360
1361 2018-11-17  Devin Rousso  <drousso@apple.com>
1362
1363         Web Inspector: Network: add button to show system certificate dialog
1364         https://bugs.webkit.org/show_bug.cgi?id=191458
1365         <rdar://problem/45977019>
1366
1367         Reviewed by Joseph Pecoraro.
1368
1369         * WebCoreSupport/WebInspectorClient.h:
1370         * WebCoreSupport/WebInspectorClient.mm:
1371         (WebInspectorFrontendClient::showCertificate): Added.
1372
1373         * Configurations/WebKitLegacy.xcconfig:
1374
1375 2018-11-15  Truitt Savell  <tsavell@apple.com>
1376
1377         Unreviewed, rolling out r238244.
1378
1379         Caused High Sierra test runs to fail early with 50 crashes and
1380         casued 25 API failures.
1381
1382         Reverted changeset:
1383
1384         "[css-logical] Implement flow-relative margin, padding and
1385         border shorthands"
1386         https://bugs.webkit.org/show_bug.cgi?id=188697
1387         https://trac.webkit.org/changeset/238244
1388
1389 2018-11-15  Oriol Brufau  <obrufau@igalia.com>
1390
1391         [css-logical] Implement flow-relative margin, padding and border shorthands
1392         https://bugs.webkit.org/show_bug.cgi?id=188697
1393
1394         Reviewed by Simon Fraser and Antti Koivisto.
1395
1396         Add CSSLogicalEnabled runtime flag.
1397
1398         * WebView/WebPreferenceKeysPrivate.h:
1399         * WebView/WebPreferences.mm:
1400         (+[WebPreferences initialize]):
1401         (-[WebPreferences cssLogicalEnabled]):
1402         (-[WebPreferences setCSSLogicalEnabled:]):
1403         * WebView/WebPreferencesPrivate.h:
1404         * WebView/WebView.mm:
1405         (-[WebView _preferencesChanged:]):
1406
1407 2018-11-14  Joseph Pecoraro  <pecoraro@apple.com>
1408
1409         Web Inspector: Pass Inspector::FrontendChannel as a reference connect/disconnect methods
1410         https://bugs.webkit.org/show_bug.cgi?id=191612
1411
1412         Reviewed by Matt Baker.
1413
1414         * WebCoreSupport/WebInspectorClient.mm:
1415         (-[WebInspectorWindowController destroyInspectorView]):
1416
1417 2018-11-14  Joseph Pecoraro  <pecoraro@apple.com>
1418
1419         Web Inspector: Keep Web Inspector window alive across process swaps (PSON) (Remote Inspector)
1420         https://bugs.webkit.org/show_bug.cgi?id=191494
1421         <rdar://problem/45469854>
1422
1423         Reviewed by Devin Rousso.
1424
1425         * WebCoreSupport/WebInspectorClient.h:
1426         WebKitLegacy will still have remote inspection of the Page directly.
1427
1428 2018-11-12  Simon Fraser  <simon.fraser@apple.com>
1429
1430         Make compositing updates incremental
1431         https://bugs.webkit.org/show_bug.cgi?id=90342
1432
1433         Reviewed by Antti Koivisto.
1434
1435         Fix spelling error.
1436
1437         * WebView/WebView.mm:
1438         (-[WebView _setMediaLayer:forPluginView:]):
1439
1440 2018-11-11  Wenson Hsieh  <wenson_hsieh@apple.com>
1441
1442         Implement a new edit command to change the enclosing list type
1443         https://bugs.webkit.org/show_bug.cgi?id=191487
1444         <rdar://problem/45955922>
1445
1446         Reviewed by Ryosuke Niwa.
1447
1448         Add undo/redo edit action strings for ConvertToOrderedList and ConvertToUnorderedList.
1449
1450         * WebCoreSupport/WebEditorClient.mm:
1451         (undoNameForEditAction):
1452
1453 2018-11-11  Daniel Bates  <dabates@apple.com>
1454
1455         [iOS] Draw caps lock indicator in password fields
1456         https://bugs.webkit.org/show_bug.cgi?id=190565
1457         <rdar://problem/45262343>
1458
1459         Reviewed by Dean Jackson.
1460
1461         Update the caps lock state when a hardware keyboard is attached or detached.
1462
1463         * WebView/WebHTMLView.mm:
1464         (hardwareKeyboardAvailabilityChangedCallback): Added.
1465         (-[WebHTMLView initWithFrame:]): Register for hardware keyboard availability changed notifications.
1466         (-[WebHTMLView dealloc]): Unregister from hardware keyboard availability changed notifications.
1467
1468 2018-11-11  Benjamin Poulain  <benjamin@webkit.org>
1469
1470         Fix a fixme: rename wtfObjcMsgSend to wtfObjCMsgSend
1471         https://bugs.webkit.org/show_bug.cgi?id=191492
1472
1473         Reviewed by Alex Christensen.
1474
1475         * Carbon/HIWebView.mm:
1476         * Misc/WebNSFileManagerExtras.mm:
1477         * Misc/WebNSURLExtras.mm:
1478         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1479         * Plugins/WebBasePluginPackage.mm:
1480         * Plugins/WebPluginContainerCheck.mm:
1481         * WebCoreSupport/WebCachedFramePlatformData.h:
1482         * WebCoreSupport/WebDeviceOrientationClient.mm:
1483         * WebView/WebDelegateImplementationCaching.mm:
1484         * WebView/WebHTMLView.mm:
1485         * WebView/WebPDFRepresentation.mm:
1486         * WebView/WebPolicyDelegate.mm:
1487         * WebView/WebView.mm:
1488
1489 2018-11-10  Benjamin Poulain  <benjamin@webkit.org>
1490
1491         Fix a fixme: rename wtfObjcMsgSend to wtfObjCMsgSend
1492         https://bugs.webkit.org/show_bug.cgi?id=191492
1493
1494         Reviewed by Alex Christensen.
1495
1496         * Carbon/HIWebView.mm:
1497         (UpdateCommandStatus):
1498         * Misc/WebNSFileManagerExtras.mm:
1499         * Misc/WebNSURLExtras.mm:
1500         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1501         * Plugins/WebBasePluginPackage.mm:
1502         * Plugins/WebPluginContainerCheck.mm:
1503         (-[WebPluginContainerCheck _continueWithPolicy:]):
1504         * WebCoreSupport/WebCachedFramePlatformData.h:
1505         (WebCachedFramePlatformData::clear):
1506         * WebCoreSupport/WebDeviceOrientationClient.mm:
1507         (WebDeviceOrientationClient::getProvider const):
1508         * WebView/WebDelegateImplementationCaching.mm:
1509         (CallDelegate):
1510         (CallDelegateReturningBoolean):
1511         (CallResourceLoadDelegateReturningBoolean):
1512         (CallFormDelegate):
1513         (CallFormDelegateReturningBoolean):
1514         * WebView/WebHTMLView.mm:
1515         * WebView/WebPDFRepresentation.mm:
1516         * WebView/WebPolicyDelegate.mm:
1517         (-[WebPolicyDecisionListener _usePolicy:]):
1518         * WebView/WebView.mm:
1519
1520 2018-11-09  Ryan Haddad  <ryanhaddad@apple.com>
1521
1522         Unreviewed, rolling out r238047.
1523
1524         Introduced layout test failures on iOS simulator.
1525
1526         Reverted changeset:
1527
1528         "[iOS] Draw caps lock indicator in password fields"
1529         https://bugs.webkit.org/show_bug.cgi?id=190565
1530         https://trac.webkit.org/changeset/238047
1531
1532 2018-11-09  Antti Koivisto  <antti@apple.com>
1533
1534         Use OptionSet for layout milestones
1535         https://bugs.webkit.org/show_bug.cgi?id=191470
1536
1537         Reviewed by Dean Jackson.
1538
1539         * WebCoreSupport/WebFrameLoaderClient.h:
1540         * WebCoreSupport/WebFrameLoaderClient.mm:
1541         (WebFrameLoaderClient::dispatchDidReachLayoutMilestone):
1542         * WebView/WebView.mm:
1543         (coreLayoutMilestones):
1544         (kitLayoutMilestones):
1545         (-[WebView _cacheFrameLoadDelegateImplementations]):
1546         * WebView/WebViewInternal.h:
1547
1548 2018-11-09  Daniel Bates  <dabates@apple.com>
1549
1550         [iOS] Draw caps lock indicator in password fields
1551         https://bugs.webkit.org/show_bug.cgi?id=190565
1552         <rdar://problem/45262343>
1553
1554         Reviewed by Dean Jackson.
1555
1556         Update the caps lock state when a hardware keyboard is attached or detached.
1557
1558         * WebView/WebHTMLView.mm:
1559         (hardwareKeyboardAvailabilityChangedCallback): Added.
1560         (-[WebHTMLView initWithFrame:]): Register for hardware keyboard availability changed notifications.
1561         (-[WebHTMLView dealloc]): Unregister from hardware keyboard availability changed notifications.
1562
1563 2018-11-09  Daniel Bates  <dabates@apple.com>
1564
1565         [iOS] Pressing forward delete key in text field does nothing and we should not invoke an editor
1566         action when forward delete is pressed outside a text field
1567         https://bugs.webkit.org/show_bug.cgi?id=190566
1568         <rdar://problem/45262367>
1569
1570         Reviewed by Wenson Hsieh.
1571
1572         Remove dead code. UIKit ceased sending us a character string with 0xF728 for the forward delete
1573         key many years ago. We will need to fix up iOS Legacy WebKit support for the forward delete key
1574         in UIKit. We may revist this decision once <rdar://problem/45772078> is fixed.
1575
1576         * WebView/WebHTMLView.mm:
1577         (-[WebHTMLView _handleEditingKeyEvent:]):
1578
1579 2018-11-08  Megan Gardner  <megan_gardner@apple.com>
1580
1581         Adopt Reveal Framework to replace Lookup
1582         https://bugs.webkit.org/show_bug.cgi?id=191097
1583         <rdar://problem/45924508>
1584
1585         Reviewed by Tim Horton.
1586
1587         Pass in what it needed to clear the textIndicators. This is better than
1588         the current notification structure.
1589
1590         * WebView/WebView.mm:
1591         (-[WebView _animationControllerForDictionaryLookupPopupInfo:]):
1592         (-[WebView _prepareForDictionaryLookup]):
1593
1594 2018-11-06  Justin Fan  <justin_fan@apple.com>
1595
1596         [WebGPU] Experimental prototype for WebGPURenderPipeline and WebGPUSwapChain
1597         https://bugs.webkit.org/show_bug.cgi?id=191291
1598
1599         Reviewed by Myles Maxfield.
1600
1601         Properly disable WEBGPU on all non-Metal platforms for now.
1602
1603         * Configurations/FeatureDefines.xcconfig:
1604
1605 2018-11-02  Daniel Bates  <dabates@apple.com>
1606
1607         [iOS] WebKit should dispatch DOM events when a modifier key is pressed
1608         https://bugs.webkit.org/show_bug.cgi?id=190487
1609
1610         Reviewed by Tim Horton.
1611
1612         Having Legacy WebKit return NO if the editing event represents a modifier flags change to
1613         allow the default handling.
1614
1615         * WebView/WebHTMLView.mm:
1616         (-[WebHTMLView _handleEditingKeyEvent:]):
1617
1618 2018-11-01  Sihui Liu  <sihui_liu@apple.com>
1619
1620         Add a storage limit for IndexedDB
1621         https://bugs.webkit.org/show_bug.cgi?id=190598
1622         <rdar://problem/44654715>
1623
1624         Reviewed by Chris Dumez.
1625
1626         * Storage/WebDatabaseManager.mm:
1627         (-[WebDatabaseManager setIDBPerOriginQuota:]):
1628         * Storage/WebDatabaseManagerPrivate.h:
1629
1630 2018-10-31  Antti Koivisto  <antti@apple.com>
1631
1632         Remove LayerFlushScheduler
1633         https://bugs.webkit.org/show_bug.cgi?id=191103
1634
1635         Reviewed by Anders Carlsson.
1636
1637         Add a RunLoopObserver directly into WebViewLayerFlushScheduler and remove
1638         all the virtual cruft.
1639
1640         * WebView/WebViewData.h:
1641         (WebViewLayerFlushScheduler::~WebViewLayerFlushScheduler): Deleted.
1642         (): Deleted.
1643         * WebView/WebViewData.mm:
1644         (currentRunLoop):
1645         (WebViewLayerFlushScheduler::WebViewLayerFlushScheduler):
1646         (WebViewLayerFlushScheduler::~WebViewLayerFlushScheduler):
1647         (WebViewLayerFlushScheduler::schedule):
1648         (WebViewLayerFlushScheduler::invalidate):
1649         (WebViewLayerFlushScheduler::layerFlushCallback):
1650
1651 2018-10-30  Alexey Proskuryakov  <ap@apple.com>
1652
1653         Enable InstallAPI for iOS unconditionally
1654         https://bugs.webkit.org/show_bug.cgi?id=191043
1655         rdar://problem/32728423
1656
1657         Reviewed by Dan Bernstein.
1658
1659         * Configurations/WebKitLegacy.xcconfig: Enabled it. Added NSURLDownloadSPI.h as an
1660         excluded header - WebKitLegacy doesn't export NSURLDownload, so the definition
1661         shouldn't be processed by InstallAPI.
1662         * MigrateHeaders.make: Removed an obsolete workaround.
1663         * Misc/NSURLDownloadSPI.h: Added.
1664         * Misc/WebDownload.h: Use NSURLDownloadSPI.h instead of defining SPI inline.
1665
1666 2018-10-30  Alexey Proskuryakov  <ap@apple.com>
1667
1668         Clean up some obsolete MAX_ALLOWED macros
1669         https://bugs.webkit.org/show_bug.cgi?id=190916
1670
1671         Reviewed by Tim Horton.
1672
1673         * WebView/WebHTMLView.mm:
1674         (-[WebHTMLView pressureChangeWithEvent:]):
1675         * WebView/WebPDFView.h:
1676
1677 2018-10-30  Commit Queue  <commit-queue@webkit.org>
1678
1679         Unreviewed, rolling out r237600 and r237604.
1680         https://bugs.webkit.org/show_bug.cgi?id=191086
1681
1682         Breaks internal iOS builds (Requested by ryanhadd_ on
1683         #webkit).
1684
1685         Reverted changesets:
1686
1687         "Enable InstallAPI for iOS unconditionally"
1688         https://bugs.webkit.org/show_bug.cgi?id=191043
1689         https://trac.webkit.org/changeset/237600
1690
1691         "Build fix attempt after enabling InstallAPI for iOS."
1692         https://bugs.webkit.org/show_bug.cgi?id=191043
1693         https://trac.webkit.org/changeset/237604
1694
1695 2018-10-30  Alexey Proskuryakov  <ap@apple.com>
1696
1697         Enable InstallAPI for iOS unconditionally
1698         https://bugs.webkit.org/show_bug.cgi?id=191043
1699         rdar://problem/32728423
1700
1701         Reviewed by Dan Bernstein.
1702
1703         * Configurations/WebKitLegacy.xcconfig: Enabled it. Added NSURLDownloadSPI.h as an
1704         excluded header - WebKitLegacy doesn't export NSURLDownload, so the definition
1705         shouldn't be processed by InstallAPI.
1706         * MigrateHeaders.make: Removed an obsolete workaround.
1707         * Misc/NSURLDownloadSPI.h: Added.
1708         * Misc/WebDownload.h: Use NSURLDownloadSPI.h instead of defining SPI inline.
1709
1710 2018-10-29  Tim Horton  <timothy_horton@apple.com>
1711
1712         Modernize WebKit nibs and lprojs for localization's sake
1713         https://bugs.webkit.org/show_bug.cgi?id=190911
1714         <rdar://problem/45349466>
1715
1716         Reviewed by Dan Bernstein.
1717
1718         * Misc/WebNSControlExtras.m:
1719         (-[NSControl sizeToFitAndAdjustWindowHeight]):
1720         NSWindow and its contents are both in the same scale space these days; avoid
1721         double-applying the scale factor, or you can't see the prompt.
1722
1723         * Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib: Removed.
1724         * Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib: Removed.
1725         * Panels/en.lproj/WebAuthenticationPanel.xib: Added.
1726         NIB->XIB
1727
1728 2018-10-25  Antoine Quint  <graouts@apple.com>
1729
1730         [Web Animations] Turn Web Animations CSS Integration off by default
1731         https://bugs.webkit.org/show_bug.cgi?id=190901
1732
1733         Reviewed by Dean Jackson.
1734
1735         * WebView/WebPreferences.mm:
1736         (+[WebPreferences initialize]):
1737
1738 2018-10-24  Alexey Proskuryakov  <ap@apple.com>
1739
1740         Clean up some obsolete macOS version guards
1741         https://bugs.webkit.org/show_bug.cgi?id=190887
1742
1743         Reviewed by Dan Bernstein.
1744
1745         * Misc/WebNSPasteboardExtras.mm:
1746         (+[NSPasteboard _web_dragTypesForURL]):
1747         * WebCoreSupport/PopupMenuMac.mm:
1748         (PopupMenuMac::show):
1749         * WebCoreSupport/WebEditorClient.h:
1750         * WebCoreSupport/WebEditorClient.mm:
1751         (WebEditorClient::respondToChangedSelection):
1752         * WebView/WebPDFView.mm:
1753         (-[WebPDFView _clipViewForPDFDocumentView]):
1754
1755 2018-10-24  Megan Gardner  <megan_gardner@apple.com>
1756
1757         Turn on Conic Gradients
1758         https://bugs.webkit.org/show_bug.cgi?id=190810
1759
1760         Reviewed by Tim Horton.
1761
1762         * Configurations/FeatureDefines.xcconfig:
1763
1764 2018-10-24  Said Abou-Hallawa  <sabouhallawa@apple.com>
1765
1766         Cleanup: MIMETypeRegistry functions
1767         https://bugs.webkit.org/show_bug.cgi?id=190838
1768
1769         Reviewed by Simon Fraser.
1770
1771         * Misc/WebNSPasteboardExtras.mm:
1772         (-[NSPasteboard _web_writePromisedRTFDFromArchive:containsImage:]):
1773         Replace isSupportedImageResourceMIMEType() by isSupportedImageMIMEType()
1774         because they were identical.
1775
1776         * WebView/WebHTMLRepresentation.mm:
1777         (+[WebHTMLRepresentation supportedMediaMIMETypes]):
1778         (+[WebHTMLRepresentation supportedNonImageMIMETypes]):
1779         (+[WebHTMLRepresentation supportedImageMIMETypes]):
1780         (+[WebHTMLRepresentation unsupportedTextMIMETypes]):
1781         * WebView/WebView.mm:
1782         (+[WebView _unregisterViewClassAndRepresentationClassForMIMEType:]):
1783         (+[WebView _registerViewClass:representationClass:forURLScheme:]):
1784         (+[WebView registerViewClass:representationClass:forMIMEType:]):
1785
1786 2018-10-23  David Kilzer  <ddkilzer@apple.com>
1787
1788         Fix false positive leaks when using custom -init methods that don't start with -init
1789         <https://webkit.org/b/190818>
1790         <rdar://problem/45476042>
1791
1792         Reviewed by Dan Bernstein.
1793
1794         * Misc/WebKitErrors.m: Move `descriptions` static global so that
1795         it is accessible by both categories.
1796         (-[NSError _webkit_initWithDomain:code:URL:]): Declare new
1797         NSError (WebKitInternal) category.  Add attribute to make this
1798         behave like an -init method.
1799         (-[NSError _webkit_initWithDomain:code:URL:]): Move into new
1800         NSError (WebKitInternal) category.  Modernize method.  Replace
1801         constant NSString with `NSURLErrorFailingURLStringErrorKey`.
1802
1803 2018-10-18  Alexey Proskuryakov  <ap@apple.com>
1804
1805         Switch from PLATFORM(IOS) to PLATFORM(IOS_FAMILY)
1806         https://bugs.webkit.org/show_bug.cgi?id=190729
1807
1808         Reviewed by Tim Horton.
1809
1810         * DOM/DOM.mm:
1811         (-[DOMNode boundingBox]):
1812         * DOM/DOMElement.mm:
1813         * DOM/DOMHTML.mm:
1814         * DOM/DOMInternal.mm:
1815         * DOM/DOMUIKitExtensions.mm:
1816         * DOM/WebDOMOperations.mm:
1817         * DefaultDelegates/WebDefaultContextMenuDelegate.mm:
1818         * DefaultDelegates/WebDefaultEditingDelegate.m:
1819         * DefaultDelegates/WebDefaultPolicyDelegate.m:
1820         (-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
1821         * DefaultDelegates/WebDefaultUIDelegate.h:
1822         * DefaultDelegates/WebDefaultUIDelegate.mm:
1823         (-[WebDefaultUIDelegate webViewClose:]):
1824         (-[WebDefaultUIDelegate webViewFocus:]):
1825         (-[WebDefaultUIDelegate webViewUnfocus:]):
1826         (-[WebDefaultUIDelegate webViewIsResizable:]):
1827         (-[WebDefaultUIDelegate webView:setResizable:]):
1828         (-[WebDefaultUIDelegate webView:setFrame:]):
1829         (-[WebDefaultUIDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:]):
1830         * History/BackForwardList.h:
1831         * History/BackForwardList.mm:
1832         * History/WebBackForwardList.mm:
1833         (+[WebBackForwardList initialize]):
1834         (bumperCarBackForwardHackNeeded):
1835         * History/WebHistory.mm:
1836         (-[WebHistoryPrivate addItem:discardDuplicate:]):
1837         (-[WebHistory _sendNotification:entries:]):
1838         (-[WebHistory loadFromURL:error:]):
1839         (-[WebHistory saveToURL:error:]):
1840         * History/WebHistoryItem.mm:
1841         (WKNotifyHistoryItemChanged):
1842         (+[WebHistoryItem initialize]):
1843         (-[WebHistoryItem initFromDictionaryRepresentation:]):
1844         * History/WebURLsWithTitles.m:
1845         * Misc/WebCache.mm:
1846         (+[WebCache initialize]):
1847         * Misc/WebDownload.mm:
1848         (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]):
1849         * Misc/WebElementDictionary.mm:
1850         (+[WebElementDictionary initialize]):
1851         (+[WebElementDictionary initializeLookupTable]):
1852         * Misc/WebIconDatabase.mm:
1853         * Misc/WebKitNSStringExtras.mm:
1854         (+[NSString _webkit_localCacheDirectoryWithBundleIdentifier:]):
1855         * Misc/WebKitVersionChecks.h:
1856         * Misc/WebKitVersionChecks.mm:
1857         (WebKitLinkedOnOrAfter):
1858         (WebKitLinkTimeVersion):
1859         * Misc/WebLocalizableStrings.mm:
1860         * Misc/WebNSControlExtras.h:
1861         * Misc/WebNSControlExtras.m:
1862         * Misc/WebNSEventExtras.m:
1863         * Misc/WebNSFileManagerExtras.mm:
1864         * Misc/WebNSImageExtras.h:
1865         * Misc/WebNSImageExtras.m:
1866         * Misc/WebNSPasteboardExtras.mm:
1867         * Misc/WebNSPrintOperationExtras.h:
1868         * Misc/WebNSPrintOperationExtras.m:
1869         * Misc/WebNSViewExtras.m:
1870         * Misc/WebNSWindowExtras.m:
1871         * Panels/WebAuthenticationPanel.h:
1872         * Panels/WebAuthenticationPanel.m:
1873         * Panels/WebPanelAuthenticationHandler.m:
1874         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1875         (+[WebHostedNetscapePluginView initialize]):
1876         * Plugins/WebBasePluginPackage.h:
1877         * Plugins/WebBasePluginPackage.mm:
1878         * Plugins/WebJavaPlugIn.h:
1879         * Plugins/WebPluginContainerCheck.mm:
1880         * Plugins/WebPluginController.h:
1881         * Plugins/WebPluginController.mm:
1882         (-[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
1883         (-[WebPluginController addPlugin:]):
1884         (-[WebPluginController destroyPlugin:]):
1885         (-[WebPluginController destroyAllPlugins]):
1886         * Plugins/WebPluginDatabase.mm:
1887         (+[WebPluginDatabase _defaultPlugInPaths]):
1888         * Plugins/WebPluginPackage.mm:
1889         (-[WebPluginPackage initWithPath:]):
1890         * Storage/WebDatabaseManager.mm:
1891         (-[WebDatabaseManager deleteAllDatabases]):
1892         * Storage/WebDatabaseManagerClient.h:
1893         * Storage/WebDatabaseManagerClient.mm:
1894         (WebDatabaseManagerClient::WebDatabaseManagerClient):
1895         (WebDatabaseManagerClient::~WebDatabaseManagerClient):
1896         * Storage/WebStorageManager.mm:
1897         (-[WebStorageManager deleteAllOrigins]):
1898         (WebKitInitializeStorageIfNecessary):
1899         * WebCoreSupport/WebAlternativeTextClient.h:
1900         * WebCoreSupport/WebApplicationCache.mm:
1901         (applicationCacheBundleIdentifier):
1902         * WebCoreSupport/WebChromeClient.h:
1903         * WebCoreSupport/WebChromeClient.mm:
1904         (WebChromeClient::setWindowRect):
1905         (WebChromeClient::windowRect):
1906         (WebChromeClient::takeFocus):
1907         (WebChromeClient::addMessageToConsole):
1908         (WebChromeClient::enableSuddenTermination):
1909         (WebChromeClient::disableSuddenTermination):
1910         (WebChromeClient::createPopupMenu const):
1911         (WebChromeClient::createSearchPopupMenu const):
1912         (WebChromeClient::shouldPaintEntireContents const):
1913         (WebChromeClient::supportsVideoFullscreen):
1914         (WebChromeClient::supportsFullScreenForElement):
1915         (WebChromeClient::enterFullScreenForElement):
1916         (WebChromeClient::exitFullScreenForElement):
1917         * WebCoreSupport/WebContextMenuClient.mm:
1918         * WebCoreSupport/WebDragClient.mm:
1919         * WebCoreSupport/WebEditorClient.h:
1920         * WebCoreSupport/WebEditorClient.mm:
1921         (+[WebUndoStep initialize]):
1922         (updateFontPanel):
1923         (WebEditorClient::didBeginEditing):
1924         (WebEditorClient::respondToChangedContents):
1925         (WebEditorClient::respondToChangedSelection):
1926         (WebEditorClient::canceledComposition):
1927         (WebEditorClient::didEndEditing):
1928         (WebEditorClient::didWriteSelectionToPasteboard):
1929         (attributesForAttributedStringConversion):
1930         (WebEditorClient::setInsertionPasteboard):
1931         (WebEditorClient::registerUndoOrRedoStep):
1932         (WebEditorClient::handleKeyboardEvent):
1933         (WebEditorClient::handleInputMethodKeydown):
1934         (WebEditorClient::textDidChangeInTextField):
1935         (WebEditorClient::requestCheckingOfString):
1936         * WebCoreSupport/WebFrameLoaderClient.h:
1937         * WebCoreSupport/WebFrameLoaderClient.mm:
1938         (WebFrameLoaderClient::detachedFromParent2):
1939         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
1940         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
1941         (WebFrameLoaderClient::dispatchWillSendRequest):
1942         (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
1943         (WebFrameLoaderClient::dispatchDidReceiveResponse):
1944         (WebFrameLoaderClient::willCacheResponse const):
1945         (WebFrameLoaderClient::dispatchDidReceiveContentLength):
1946         (WebFrameLoaderClient::dispatchDidFinishLoading):
1947         (WebFrameLoaderClient::dispatchDidFailLoading):
1948         (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
1949         (WebFrameLoaderClient::dispatchWillClose):
1950         (WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
1951         (WebFrameLoaderClient::dispatchDidCommitLoad):
1952         (WebFrameLoaderClient::dispatchDidFailProvisionalLoad):
1953         (WebFrameLoaderClient::dispatchDidFailLoad):
1954         (WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
1955         (WebFrameLoaderClient::dispatchDidFinishLoad):
1956         (WebFrameLoaderClient::dispatchDidReachLayoutMilestone):
1957         (WebFrameLoaderClient::willChangeTitle):
1958         (WebFrameLoaderClient::didChangeTitle):
1959         (WebFrameLoaderClient::didReplaceMultipartContent):
1960         (WebFrameLoaderClient::updateGlobalHistory):
1961         (WebFrameLoaderClient::saveViewStateToItem):
1962         (WebFrameLoaderClient::restoreViewState):
1963         (WebFrameLoaderClient::provisionalLoadStarted):
1964         (WebFrameLoaderClient::prepareForDataSourceReplacement):
1965         (WebFrameLoaderClient::setTitle):
1966         (WebFrameLoaderClient::savePlatformDataToCachedFrame):
1967         (WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
1968         (WebFrameLoaderClient::transitionToCommittedForNewPage):
1969         (WebFrameLoaderClient::didRestoreFromPageCache):
1970         (WebFrameLoaderClient::actionDictionary const):
1971         (WebFrameLoaderClient::createPlugin):
1972         (WebFrameLoaderClient::getLoadDecisionForIcons):
1973         (WebFrameLoaderClient::finishedLoadingIcon):
1974         (+[WebFramePolicyListener initialize]):
1975         * WebCoreSupport/WebFrameNetworkingContext.mm:
1976         * WebCoreSupport/WebGeolocationClient.h:
1977         * WebCoreSupport/WebGeolocationClient.mm:
1978         (WebGeolocationClient::requestPermission):
1979         * WebCoreSupport/WebInspectorClient.h:
1980         * WebCoreSupport/WebJavaScriptTextInputPanel.m:
1981         * WebCoreSupport/WebNotificationClient.mm:
1982         * WebCoreSupport/WebOpenPanelResultListener.mm:
1983         * WebCoreSupport/WebPlatformStrategies.h:
1984         * WebCoreSupport/WebPlatformStrategies.mm:
1985         * WebCoreSupport/WebProgressTrackerClient.h:
1986         * WebCoreSupport/WebProgressTrackerClient.mm:
1987         (WebProgressTrackerClient::progressStarted):
1988         (WebProgressTrackerClient::progressEstimateChanged):
1989         (WebProgressTrackerClient::progressFinished):
1990         * WebCoreSupport/WebSecurityOrigin.mm:
1991         * WebInspector/WebNodeHighlight.h:
1992         * WebInspector/WebNodeHighlight.mm:
1993         (-[WebNodeHighlight initWithTargetView:inspectorController:]):
1994         (-[WebNodeHighlight dealloc]):
1995         (-[WebNodeHighlight attach]):
1996         * WebInspector/WebNodeHighlightView.h:
1997         * WebInspector/WebNodeHighlightView.mm:
1998         (-[WebNodeHighlightView initWithWebNodeHighlight:]):
1999         (-[WebNodeHighlightView dealloc]):
2000         * WebInspector/WebNodeHighlighter.mm:
2001         (-[WebNodeHighlighter highlight]):
2002         * WebView/WebArchive.mm:
2003         (+[WebArchivePrivate initialize]):
2004         * WebView/WebClipView.h:
2005         * WebView/WebDataSource.mm:
2006         (WebDataSourcePrivate::WebDataSourcePrivate):
2007         (+[WebDataSource initialize]):
2008         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
2009         (-[WebDataSource _makeRepresentation]):
2010         * WebView/WebDelegateImplementationCaching.h:
2011         * WebView/WebDelegateImplementationCaching.mm:
2012         (CallDelegate):
2013         (CallDelegateReturningFloat):
2014         (CallDelegateReturningBoolean):
2015         (CallUIDelegate):
2016         (CallUIDelegateReturningFloat):
2017         (CallUIDelegateReturningBoolean):
2018         (CallFrameLoadDelegate):
2019         (CallFrameLoadDelegateReturningBoolean):
2020         (CallResourceLoadDelegate):
2021         (CallScriptDebugDelegate):
2022         (CallFormDelegate):
2023         (CallFormDelegateReturningBoolean):
2024         * WebView/WebDeviceOrientation.mm:
2025         (-[WebDeviceOrientation initWithCanProvideAlpha:alpha:canProvideBeta:beta:canProvideGamma:gamma:]):
2026         * WebView/WebDocumentInternal.h:
2027         * WebView/WebDocumentLoaderMac.mm:
2028         (needsDataLoadWorkaround):
2029         * WebView/WebDynamicScrollBarsViewInternal.h:
2030         * WebView/WebFormDelegate.m:
2031         * WebView/WebFrame.mm:
2032         (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
2033         (-[WebFrame _unmarkAllMisspellings]):
2034         (-[WebFrame _paintBehaviorForDestinationContext:]):
2035         (-[WebFrame _drawRect:contentsOnly:]):
2036         (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
2037         (-[WebFrame _scrollDOMRangeToVisible:]):
2038         (-[WebFrame _bodyBackgroundColor]):
2039         (-[WebFrame accessibilityRoot]):
2040         (needsMicrosoftMessengerDOMDocumentWorkaround):
2041         * WebView/WebFrameInternal.h:
2042         * WebView/WebFrameView.mm:
2043         (-[WebFrameView _setDocumentView:]):
2044         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
2045         (-[WebFrameView _viewClassForMIMEType:]):
2046         (-[WebFrameView initWithFrame:]):
2047         (-[WebFrameView drawRect:]):
2048         (-[WebFrameView _firstResponderIsFormControl]):
2049         (-[WebFrameView keyDown:keyDown:]):
2050         (-[WebFrameView _isScrollable]):
2051         * WebView/WebFullScreenController.h:
2052         * WebView/WebFullScreenController.mm:
2053         * WebView/WebHTMLRepresentation.mm:
2054         * WebView/WebHTMLView.mm:
2055         (-[WebHTMLView hitTest:]):
2056         (-[WebHTMLView initWithFrame:]):
2057         (-[WebHTMLView dealloc]):
2058         (-[WebHTMLView addSubview:]):
2059         (-[WebHTMLView mouseDown:]):
2060         (-[WebHTMLView mouseUp:]):
2061         (-[WebHTMLView resignFirstResponder]):
2062         (-[WebHTMLView accessibilityHitTest:]):
2063         (-[WebHTMLView selectionImageForcingBlackText:selectionImageForcingBlackText:]):
2064         * WebView/WebHTMLViewInternal.h:
2065         * WebView/WebIndicateLayer.h:
2066         * WebView/WebIndicateLayer.mm:
2067         * WebView/WebMediaPlaybackTargetPicker.h:
2068         * WebView/WebMediaPlaybackTargetPicker.mm:
2069         * WebView/WebPDFDocumentExtras.h:
2070         * WebView/WebPDFDocumentExtras.mm:
2071         * WebView/WebPDFRepresentation.h:
2072         * WebView/WebPDFRepresentation.mm:
2073         * WebView/WebPDFView.h:
2074         * WebView/WebPreferences.mm:
2075         (cacheModelForMainBundle):
2076         (WebPreferencesPrivate::WebPreferencesPrivate):
2077         (-[WebPreferences initWithIdentifier:sendChangeNotification:initWithIdentifier:]):
2078         (-[WebPreferences encodeWithCoder:]):
2079         (+[WebPreferences standardPreferences]):
2080         (+[WebPreferences initialize]):
2081         (-[WebPreferences _valueForKey:]):
2082         (-[WebPreferences _setStringValue:forKey:]):
2083         (-[WebPreferences _setIntegerValue:forKey:]):
2084         (-[WebPreferences _setUnsignedIntValue:forKey:]):
2085         (-[WebPreferences _setFloatValue:forKey:]):
2086         (-[WebPreferences _setBoolValue:forKey:]):
2087         (-[WebPreferences _setLongLongValue:forKey:]):
2088         (-[WebPreferences _setUnsignedLongLongValue:forKey:]):
2089         (-[WebPreferences _postCacheModelChangedNotification]):
2090         (-[WebPreferences _postPreferencesChangedNotification]):
2091         (+[WebPreferences _switchNetworkLoaderToNewTestingSession]):
2092         (-[WebPreferences setStorageBlockingPolicy:]):
2093         * WebView/WebResource.mm:
2094         (+[WebResourcePrivate initialize]):
2095         * WebView/WebTextCompletionController.h:
2096         * WebView/WebTextIterator.mm:
2097         (+[WebTextIteratorPrivate initialize]):
2098         * WebView/WebView.mm:
2099         (shouldEnableLoadDeferring):
2100         (shouldRestrictWindowFocus):
2101         (shouldRespectPriorityInCSSAttributeSetters):
2102         (shouldUseLegacyBackgroundSizeShorthandBehavior):
2103         (shouldAllowPictureInPictureMediaPlayback):
2104         (shouldAllowContentSecurityPolicySourceStarToMatchAnyProtocol):
2105         (shouldAllowWindowOpenWithoutUserGesture):
2106         (shouldConvertInvalidURLsToBlank):
2107         (shouldRequireUserGestureToLoadVideo):
2108         (-[WebView _commonInitializationWithFrameName:groupName:]):
2109         (+[WebView _viewClass:andRepresentationClass:forMIMEType:allowingPlugins:]):
2110         (-[WebView _viewClass:andRepresentationClass:forMIMEType:]):
2111         (-[WebView _closePluginDatabases]):
2112         (-[WebView _closeWithFastTeardown]):
2113         (-[WebView _close]):
2114         (+[WebView _MIMETypeForFile:]):
2115         (-[WebView setShowingInspectorIndication:]):
2116         (-[WebView _setFormDelegate:]):
2117         (-[WebView _needsPreHTML5ParserQuirks]):
2118         (-[WebView _preferencesChangedNotification:]):
2119         (-[WebView _preferencesChanged:]):
2120         (-[WebView _cacheResourceLoadDelegateImplementations]):
2121         (-[WebView _cacheFrameLoadDelegateImplementations]):
2122         (-[WebView _policyDelegateForwarder]):
2123         (-[WebView _UIDelegateForwarder]):
2124         (-[WebView _editingDelegateForwarder]):
2125         (-[WebView _updateActiveState]):
2126         (-[_WebSafeForwarder forwardInvocation:]):
2127         (+[WebView initialize]):
2128         (-[WebView _pluginForMIMEType:]):
2129         (-[WebView _pluginForExtension:]):
2130         (-[WebView _isMIMETypeRegisteredAsPlugin:]):
2131         (+[WebView canShowMIMETypeAsHTML:]):
2132         (-[WebView _initWithArguments:]):
2133         (-[WebView initWithFrame:frameName:groupName:]):
2134         (-[WebView dealloc]):
2135         (-[WebView close]):
2136         (-[WebView viewDidMoveToWindow]):
2137         (-[WebView setUIDelegate:]):
2138         (-[WebView setResourceLoadDelegate:]):
2139         (-[WebView setPolicyDelegate:]):
2140         (-[WebView setFrameLoadDelegate:]):
2141         (-[WebView goBack]):
2142         (-[WebView goForward]):
2143         (-[WebView stringByEvaluatingJavaScriptFromString:]):
2144         (-[WebView setHostWindow:]):
2145         (-[WebView becomeFirstResponder]):
2146         (+[WebView _cacheModelChangedNotification:]):
2147         (-[WebView _frameViewAtWindowPoint:]):
2148         (+[WebView _preflightSpellCheckerNow:]):
2149         (+[WebView _preflightSpellChecker]):
2150         (-[WebView canGoBack]):
2151         (-[WebView canGoForward]):
2152         (-[WebView stopLoading:]):
2153         (-[WebView reload:]):
2154         (-[WebView setMainFrameDocumentReady:]):
2155         (-[WebView _shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]):
2156         (-[WebView setContinuousSpellCheckingEnabled:]):
2157         (-[WebView undoManager]):
2158         (-[WebView isAutomaticQuoteSubstitutionEnabled]):
2159         (-[WebView isAutomaticLinkDetectionEnabled]):
2160         (-[WebView isAutomaticDashSubstitutionEnabled]):
2161         (-[WebView isAutomaticTextReplacementEnabled]):
2162         (-[WebView isAutomaticSpellingCorrectionEnabled]):
2163         (+[WebView _setCacheModel:]):
2164         (-[WebView _retrieveKeyboardUIModeFromPreferences:]):
2165         (-[WebView _keyboardUIMode]):
2166         (LayerFlushController::flushLayers):
2167         (-[WebView _scheduleCompositingLayerFlush]):
2168         (-[WebView _enterVideoFullscreenForVideoElement:mode:]):
2169         (-[WebView fullScreenPlaceholderView]):
2170         (WebInstallMemoryPressureHandler):
2171         * WebView/WebViewData.h:
2172         * WebView/WebViewData.mm:
2173         (+[WebViewPrivate initialize]):
2174         (-[WebViewPrivate init]):
2175         (-[WebViewPrivate dealloc]):
2176         * WebView/WebViewInternal.h:
2177
2178 2018-10-18  Alex Christensen  <achristensen@webkit.org>
2179
2180         Clean up FrameLoader two-state enums
2181         https://bugs.webkit.org/show_bug.cgi?id=190731
2182
2183         Reviewed by Chris Dumez.
2184
2185         * WebCoreSupport/WebFrameLoaderClient.h:
2186         * WebCoreSupport/WebFrameLoaderClient.mm:
2187         (WebFrameLoaderClient::dispatchWillPerformClientRedirect):
2188
2189 2018-10-18  Alex Christensen  <achristensen@webkit.org>
2190
2191         Unreviewed, rolling out r237137.
2192
2193         SPI is actually used
2194
2195         Reverted changeset:
2196
2197         "Remove unused WebFrame._loadType"
2198         https://bugs.webkit.org/show_bug.cgi?id=190583
2199         https://trac.webkit.org/changeset/237137
2200
2201 2018-10-17  Wenson Hsieh  <wenson_hsieh@apple.com>
2202
2203         Enable the datalist element by default on iOS and macOS
2204         https://bugs.webkit.org/show_bug.cgi?id=190594
2205         <rdar://problem/45281159>
2206
2207         Reviewed by Ryosuke Niwa and Tim Horton.
2208
2209         * Configurations/FeatureDefines.xcconfig:
2210
2211 2018-10-17  Alex Christensen  <achristensen@webkit.org>
2212
2213         BackForwardClient needs to be able to support UIProcess-only back/forward lists
2214         https://bugs.webkit.org/show_bug.cgi?id=190675
2215
2216         Reviewed by Chris Dumez.
2217
2218         * History/BackForwardList.h:
2219         * History/BackForwardList.mm:
2220         (BackForwardList::backItem):
2221         (BackForwardList::currentItem):
2222         (BackForwardList::forwardItem):
2223         (BackForwardList::backListCount const):
2224         (BackForwardList::forwardListCount const):
2225         (BackForwardList::itemAtIndex):
2226         * History/WebBackForwardList.mm:
2227         (-[WebBackForwardList backItem]):
2228         (-[WebBackForwardList currentItem]):
2229         (-[WebBackForwardList forwardItem]):
2230         (-[WebBackForwardList itemAtIndex:]):
2231
2232 2018-10-16  Timothy Hatcher  <timothy@apple.com>
2233
2234         Add <meta name="supported-color-schemes"> to control what color schemes the page supports
2235         https://bugs.webkit.org/show_bug.cgi?id=190526
2236         rdar://problem/45230140
2237
2238         Reviewed by Dean Jackson.
2239
2240         * WebCoreSupport/WebEditorClient.mm:
2241         (_WebCreateFragment): Update use of LocalDefaultSystemAppearance.
2242
2243 2018-10-16  Justin Michaud  <justin_michaud@apple.com>
2244
2245         Implement feature flag and bindings for CSS Painting API
2246         https://bugs.webkit.org/show_bug.cgi?id=190237
2247
2248         Reviewed by Ryosuke Niwa.
2249
2250         * Configurations/FeatureDefines.xcconfig:
2251
2252 2018-10-16  Alex Christensen  <achristensen@webkit.org>
2253
2254         Replace HistoryItem* with HistoryItem& where possible
2255         https://bugs.webkit.org/show_bug.cgi?id=190617
2256
2257         Reviewed by Chris Dumez.
2258
2259         * History/BackForwardList.h:
2260         * History/BackForwardList.mm:
2261         (BackForwardList::goToItem):
2262         * History/WebBackForwardList.mm:
2263         (-[WebBackForwardList goToItem:]):
2264         * History/WebHistoryItem.mm:
2265         (WKNotifyHistoryItemChanged):
2266         * History/WebHistoryItemInternal.h:
2267
2268 2018-10-16  Alex Christensen  <achristensen@webkit.org>
2269
2270         Remove unused WebHistoryItem._transientPropertyForKey
2271         https://bugs.webkit.org/show_bug.cgi?id=190606
2272
2273         Reviewed by Chris Dumez.
2274
2275         * History/WebHistoryItem.mm:
2276         * History/WebHistoryItemPrivate.h:
2277
2278 2018-10-15  Justin Fan  <justin_fan@apple.com>
2279
2280         Add WebGPU 2018 feature flag and experimental feature flag
2281         https://bugs.webkit.org/show_bug.cgi?id=190509
2282
2283         Reviewed by Dean Jackson.
2284
2285         Re-add ENABLE_WEBGPU, an experimental feature flag, and a RuntimeEnabledFeature
2286         for the 2018 WebGPU prototype.
2287
2288         * Configurations/FeatureDefines.xcconfig:
2289         * WebView/WebPreferenceKeysPrivate.h:
2290         * WebView/WebPreferences.mm:
2291         (+[WebPreferences initialize]):
2292         (-[WebPreferences webGPUEnabled]):
2293         (-[WebPreferences setWebGPUEnabled:]):
2294         * WebView/WebPreferencesPrivate.h:
2295         * WebView/WebView.mm:
2296         (-[WebView _preferencesChanged:]):
2297
2298 2018-10-15  Alex Christensen  <achristensen@webkit.org>
2299
2300         Fix iOS build after r237157
2301
2302         * WebView/WebView.mm:
2303         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
2304
2305 2018-10-15  Alex Christensen  <achristensen@webkit.org>
2306
2307         Modernize BackForwardClient.h
2308         https://bugs.webkit.org/show_bug.cgi?id=190610
2309
2310         Reviewed by Chris Dumez.
2311
2312         * History/BackForwardList.h:
2313         * History/BackForwardList.mm:
2314         (BackForwardList::backListCount const):
2315         (BackForwardList::forwardListCount const):
2316         (BackForwardList::backListCount): Deleted.
2317         (BackForwardList::forwardListCount): Deleted.
2318         * History/WebBackForwardList.mm:
2319         (-[WebBackForwardList init]):
2320         * WebCoreSupport/WebFrameLoaderClient.mm:
2321         (WebFrameLoaderClient::canCachePage const):
2322         * WebView/WebFrameView.mm:
2323         (-[WebFrameView keyDown:keyDown:]):
2324         * WebView/WebView.mm:
2325         (-[WebView _commonInitializationWithFrameName:groupName:]):
2326         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
2327         (-[WebView _loadBackForwardListFromOtherView:]):
2328         (-[WebView initWithCoder:]):
2329         (-[WebView encodeWithCoder:]):
2330         (-[WebView backForwardList]):
2331         (-[WebView setMaintainsBackForwardList:]):
2332
2333 2018-10-15  Timothy Hatcher  <timothy@apple.com>
2334
2335         Add support for prefers-color-scheme media query
2336         https://bugs.webkit.org/show_bug.cgi?id=190499
2337         rdar://problem/45212025
2338
2339         Reviewed by Dean Jackson.
2340
2341         * Configurations/FeatureDefines.xcconfig: Added ENABLE_DARK_MODE_CSS.
2342
2343 2018-10-15  Alex Christensen  <achristensen@webkit.org>
2344
2345         Remove unused WebView._globalHistoryItem
2346         https://bugs.webkit.org/show_bug.cgi?id=190601
2347
2348         Reviewed by Chris Dumez.
2349
2350         * WebCoreSupport/WebFrameLoaderClient.h:
2351         * WebCoreSupport/WebFrameLoaderClient.mm:
2352         (WebFrameLoaderClient::updateGlobalHistoryItemForPage): Deleted.
2353         * WebView/WebView.mm:
2354         (-[WebView _globalHistoryItem]): Deleted.
2355         (-[WebView _setGlobalHistoryItem:]): Deleted.
2356         * WebView/WebViewData.h:
2357         * WebView/WebViewInternal.h:
2358         * WebView/WebViewPrivate.h:
2359
2360 2018-10-15  Alex Christensen  <achristensen@webkit.org>
2361
2362         Remove unused parameters from FrameLoaderClient::createFrame
2363         https://bugs.webkit.org/show_bug.cgi?id=190587
2364
2365         Reviewed by Chris Dumez.
2366
2367         * WebCoreSupport/WebFrameLoaderClient.h:
2368         * WebCoreSupport/WebFrameLoaderClient.mm:
2369         (WebFrameLoaderClient::createFrame):
2370
2371 2018-10-15  Alex Christensen  <achristensen@webkit.org>
2372
2373         Remove unused WebFrame._loadType
2374         https://bugs.webkit.org/show_bug.cgi?id=190583
2375
2376         Reviewed by Chris Dumez.
2377
2378         This is unused, and this concept needs to not be exposed from WebCore to WebKitLegacy for me to fix history bugs.
2379
2380         * WebView/WebFrame.mm:
2381         (toWebFrameLoadType): Deleted.
2382         (-[WebFrame _loadType]): Deleted.
2383         * WebView/WebFramePrivate.h:
2384
2385 2018-10-15  Chris Dumez  <cdumez@apple.com>
2386
2387         Restrict browsing context lookup by name to frames that are related to one another
2388         https://bugs.webkit.org/show_bug.cgi?id=190475
2389
2390         Reviewed by Alex Christensen.
2391
2392         * WebView/WebFrame.mm:
2393         (-[WebFrame findFrameNamed:]):
2394
2395 2018-10-15  Alex Christensen  <achristensen@webkit.org>
2396
2397         Remove InjectedBundle processing of back/forward lists
2398         https://bugs.webkit.org/show_bug.cgi?id=190459
2399
2400         Reviewed by Chris Dumez.
2401
2402         * WebCoreSupport/WebFrameLoaderClient.h:
2403         * WebCoreSupport/WebFrameLoaderClient.mm:
2404         (WebFrameLoaderClient::shouldGoToHistoryItem const):
2405
2406 2018-10-14  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
2407
2408         [JSC] Remove Option::useAsyncIterator
2409         https://bugs.webkit.org/show_bug.cgi?id=190567
2410
2411         Reviewed by Saam Barati.
2412
2413         * Configurations/FeatureDefines.xcconfig:
2414
2415 2018-10-12  Alex Christensen  <achristensen@webkit.org>
2416
2417         Allow encoding of small enum classes
2418         https://bugs.webkit.org/show_bug.cgi?id=190531
2419
2420         Reviewed by Tim Horton.
2421
2422         * WebCoreSupport/WebFrameLoaderClient.mm:
2423         (-[WebFramePolicyListener dealloc]):
2424
2425 2018-10-11  Keith Rollin  <krollin@apple.com>
2426
2427         CURRENT_ARCH should not be used in Run Script phase.
2428         https://bugs.webkit.org/show_bug.cgi?id=190407
2429         <rdar://problem/45133556>
2430
2431         Reviewed by Alexey Proskuryakov.
2432
2433         CURRENT_ARCH is used in a number of Xcode Run Script phases. However,
2434         CURRENT_ARCH is not well-defined during this phase (and may even have
2435         the value "undefined") since this phase is run just once per build
2436         rather than once per supported architecture. Migrate away from
2437         CURRENT_ARCH in favor of ARCHS, either by iterating over ARCHS and
2438         performing an operation for each value, or by picking the first entry
2439         in ARCHS and using that as a representative value.
2440
2441         * Configurations/WebKitLegacy.xcconfig: When generating
2442         WebKitLegacy.*.exp, generate both 32- and 64-bit versions for
2443         macosx platforms.
2444
2445         * MigrateHeaders.make:
2446         * migrate-headers.sh: When generating ReexportedWebCoreSymbols_*.exp,
2447         generate one for each architecture in ARCHS.
2448
2449 2018-10-10  Yusuke Suzuki  <yusukesuzuki@slowstart.org>
2450
2451         [JSC] Rename createXXX to tryCreateXXX if it can return RefPtr
2452         https://bugs.webkit.org/show_bug.cgi?id=190429
2453
2454         Reviewed by Saam Barati.
2455
2456         Use `tryCreate` or new `create`. If we use new `create`, we can use Ref<> and remove null check.
2457
2458         * WebView/WebPDFRepresentation.mm:
2459         (-[WebPDFRepresentation finishedLoadingWithDataSource:]):
2460
2461 2018-10-08  Justin Fan  <justin_fan@apple.com>
2462
2463         WebGPU: Rename old WebGPU prototype to WebMetal
2464         https://bugs.webkit.org/show_bug.cgi?id=190325
2465         <rdar://problem/44990443>
2466
2467         Reviewed by Dean Jackson.
2468
2469         Rename WebGPU prototype files to WebMetal in preparation for implementing the new (Oct 2018) WebGPU interface.
2470
2471         * Configurations/FeatureDefines.xcconfig:
2472         * WebView/WebPreferenceKeysPrivate.h:
2473         * WebView/WebPreferences.mm:
2474         (+[WebPreferences initialize]):
2475         (-[WebPreferences webMetalEnabled]):
2476         (-[WebPreferences setWebMetalEnabled:]):
2477         (-[WebPreferences webGPUEnabled]): Deleted.
2478         (-[WebPreferences setWebGPUEnabled:]): Deleted.
2479         * WebView/WebPreferencesPrivate.h:
2480         * WebView/WebView.mm:
2481         (-[WebView _preferencesChanged:]):
2482
2483 2018-10-08  Aditya Keerthi  <akeerthi@apple.com>
2484
2485         Make <input type=color> a runtime enabled (on-by-default) feature
2486         https://bugs.webkit.org/show_bug.cgi?id=189162
2487
2488         Reviewed by Wenson Hsieh and Tim Horton.
2489
2490         * Configurations/FeatureDefines.xcconfig:
2491
2492 2018-10-07  Dan Bernstein  <mitz@apple.com>
2493
2494         Fixed building with the latest macOS SDK
2495
2496         * Plugins/WebNetscapePluginPackage.mm:
2497         (-[WebNetscapePluginPackage openResourceFile]):
2498         (-[WebNetscapePluginPackage closeResourceFile:]):
2499
2500 2018-10-04  Dan Bernstein  <mitz@apple.com>
2501
2502         More Carbon build-fixing.
2503
2504         * Carbon/CarbonWindowAdapter.mm:
2505         (-[CarbonWindowAdapter _destroyRealWindow:]):
2506         (-[CarbonWindowAdapter _growBoxRect]):
2507
2508 2018-10-04  Dan Bernstein  <mitz@apple.com>
2509
2510         Retried to fix 32-bit macOS builds after r236846.
2511
2512         * WebView/WebHTMLView.mm:
2513         (-[WebHTMLView setMarkedText:selectedRange:]):
2514
2515 2018-10-04  Dan Bernstein  <mitz@apple.com>
2516
2517         Retried to fix 32-bit macOS builds after r236846.
2518
2519         * Carbon/HIWebView.mm:
2520         (ActiveStateChanged):
2521
2522 2018-10-04  Dan Bernstein  <mitz@apple.com>
2523
2524         Tried to fix 32-bit macOS builds after r236846.
2525
2526         * Carbon/HIWebView.mm:
2527         (_NSSelectorForHICommand):
2528
2529 2018-10-04  Dan Bernstein  <mitz@apple.com>
2530
2531         WebKitLegacy part of [Xcode] Update some build settings as recommended by Xcode 10
2532         https://bugs.webkit.org/show_bug.cgi?id=190250
2533
2534         Reviewed by Andy Estes.
2535
2536         * Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA, CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF,
2537           CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
2538           Also enabled GCC_WARN_UNDECLARED_SELECTOR by deleting the line that set it to NO, which let
2539           an earlier line set it to YES.
2540
2541         Enabling -Wundeclared-selector exposed some long-standing mistakes and required the most
2542         changes below.
2543
2544         * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Imported an internal header that
2545           provides some missing method declarations.
2546
2547         * Misc/WebDownload.mm:
2548         (-[WebDownload initWithRequest:delegate:]): Suppressed warning about this implementation of
2549           a deprecated method.
2550
2551         * Misc/WebIconDatabase.mm: Suppressed warning around our implementation of a deprecated class.
2552
2553         * Misc/WebNSObjectExtras.mm: Declare a category that is implemented in this file, because
2554           other code in the file uses a method from it.
2555
2556         * Plugins/WebBaseNetscapePluginView.mm:
2557         (-[WebBaseNetscapePluginView renewGState]): Suppressed warning about this implementation of
2558           a deprecated method.
2559
2560         * Plugins/WebPluginController.mm:
2561         (installFlip4MacPlugInWorkaroundIfNecessary): Suppressed the undeclared selector warning
2562           around use of a selector that may be present in some WebKit client.
2563
2564         * Plugins/WebPluginDatabase.mm: Imported an internal header that provides some missing
2565           method declarations.
2566
2567         * WebCoreSupport/PopupMenuMac.mm: Imported a header that delcares delegate methods we call
2568           from here.
2569
2570         * WebCoreSupport/WebCachedFramePlatformData.h: Imported an internal header that provides some
2571           missing method declarations.
2572
2573         * WebCoreSupport/WebChromeClient.mm: Imported a header that declares delegate methods we call
2574           from here.
2575
2576         * WebCoreSupport/WebFrameLoaderClient.mm: Imported headers that declare delegate methods we
2577           call from here.
2578         (WebFrameLoaderClient::setTitle): Suppressed the undeclared selector warning around use of
2579           an obsolete delegate method for binary compatibility.
2580         (pluginView): Ditto.
2581
2582         * WebCoreSupport/WebVisitedLinkStore.mm: Imported a header that declares delegate methods we
2583           call from here.
2584
2585         * WebView/WebDeviceOrientationInternal.h: Declared -setController in a new
2586           WebDeviceOrientationProviderMock protocol.
2587
2588         * WebView/WebDeviceOrientationProviderMock.mm:
2589         (-[WebDeviceOrientationProviderMock setController:]): Moved from an internal category to the
2590           main @implementation.
2591
2592         * WebView/WebDeviceOrientationProviderMockInternal.h: Declared that
2593           WebDeviceOrientationProviderMock conforms to WebDeviceOrientationProviderMock.
2594
2595         * WebView/WebDynamicScrollBarsView.mm:
2596         (-[WebDynamicScrollBarsView accessibilityIsIgnored]): Suppressed warning about this implementation
2597           of a deprecated method.
2598
2599         * WebView/WebHTMLView.mm:
2600         (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]): Suppressed the undeclared
2601           selector warning around action methods that are not declared anywhere in WebKit.
2602
2603         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): Suppressed warning
2604           about implementing this deprecated method.
2605         (-[WebHTMLView draggingSourceOperationMaskForLocal:]): Ditto.
2606         (-[WebHTMLView draggedImage:endedAt:operation:]): Ditto.
2607         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.
2608         (-[WebHTMLView accessibilityAttributeValue:]): Ditto.
2609         (-[WebHTMLView characterIndexForPoint:]): Ditto.
2610         (-[WebHTMLView firstRectForCharacterRange:]): Ditto.
2611         (-[WebHTMLView attributedSubstringFromRange:]): Ditto.
2612         (-[WebHTMLView setMarkedText:selectedRange:]): Ditto.
2613         (-[WebHTMLView doCommandBySelector:]): Ditto.
2614         (-[WebHTMLView insertText:]): Ditto.
2615
2616         * WebView/WebHTMLViewInternal.h: Declared an internal method that’s used from another file.
2617
2618         * WebView/WebJSPDFDoc.mm: Imported a header that declares delegate methods we call from here.
2619
2620         * WebView/WebPDFView.h: Removed previewView ivar.
2621
2622         * WebView/WebPDFView.mm:
2623           Removed declaration of FileInternal category and merged its implementation with the main
2624           implementation.
2625         (-[WebPDFView dealloc]): Removed previewView ivar.
2626         (-[WebPDFView initWithFrame:]): Removed code to deal with PDFPreviewView, which doesn’t
2627           exist in macOS versions we support.
2628         (+[WebPDFView _PDFPreviewViewClass]): Deleted. PDFPreviewView doesn’t exist anymore.
2629         (-[WebPDFView _canLookUpInDictionary]): Suppressed undeclared selector warning around use of
2630           action methods internal to PDFKit.
2631         (-[WebPDFView _lookUpInDictionaryFromMenu:]): Ditto.
2632         (-[WebPDFView _menuItemsFromPDFKitForEvent:]): Ditto.
2633
2634         * WebView/WebUIDelegatePrivate.h: Restored declarations of the delegate methods we actually
2635           call on macOS, even though in r86988 we started calling different methods on iOS.
2636
2637         * WebView/WebView.mm:
2638         - Imported headers that declare delegate methods that we call.
2639         - Removed declaration of WebFileInternal category and merged its implementation with the
2640           main implementation.
2641         - Many internal methods were inexplicibly implemented as part of the WebViewEditingInMail
2642           category, which made them impossible to call from the main implementation. Moved those
2643           into the main implementation. One of those had to be declared in a class extension,
2644           because it is called from a method implemented in the WebPrivate category, and that
2645           category’s implementation appears first in the file.
2646
2647         (-[WebView _cacheHistoryDelegateImplementations]): Suppressed undeclared selector warning
2648           around use of obsolete delegate method for binary compatibility.
2649
2650         * WebView/WebViewInternal.h: Declared an internal method that’s used from another file.
2651
2652 2018-10-04  YUHAN WU  <yuhan_wu@apple.com>
2653
2654         Runtime flag and IDL for MediaRecorder
2655         https://bugs.webkit.org/show_bug.cgi?id=190018
2656
2657         Reviewed by Youenn Fablet and Chris Dumez.
2658
2659         * WebView/WebPreferenceKeysPrivate.h:
2660         * WebView/WebPreferences.mm:
2661         (+[WebPreferences initialize]):
2662         (-[WebPreferences mediaRecorderEnabled]):
2663         (-[WebPreferences setMediaRecorderEnabled:]):
2664         * WebView/WebPreferencesPrivate.h:
2665         * WebView/WebView.mm:
2666         (-[WebView _preferencesChanged:]):
2667
2668 2018-10-03  Ryosuke Niwa  <rniwa@webkit.org>
2669
2670         Enable selectionAcrossShadowBoundariesEnabled by default in WebKitLegacy
2671         https://bugs.webkit.org/show_bug.cgi?id=190238
2672
2673         Reviewed by Antti Koivisto.
2674
2675         Enabled the feature by default.
2676
2677         * WebView/WebPreferences.mm:
2678         (+[WebPreferences initialize]):
2679
2680 2018-10-01  Dean Jackson  <dino@apple.com>
2681
2682         [macOS] Switching to discrete GPU should be done in the UI process
2683         https://bugs.webkit.org/show_bug.cgi?id=189361
2684         <rdar://problem/43949622>
2685
2686         Reviewed by Simon Fraser.
2687
2688         Implement a no-op SwitchingGPUClient instance in legacy WebKit. We will
2689         not support swapping to the discrete GPU in this configuration.
2690
2691         * WebCoreSupport/WebSwitchingGPUClient.cpp: Added.
2692         (WebKit::WebSwitchingGPUClient::singleton):
2693         * WebCoreSupport/WebSwitchingGPUClient.h: Added.
2694         * WebView/WebView.mm:
2695         (-[WebView _commonInitializationWithFrameName:groupName:]):
2696
2697 2018-10-02  Alex Christensen  <achristensen@webkit.org>
2698
2699         Remove ParsedURLString
2700         https://bugs.webkit.org/show_bug.cgi?id=190154
2701
2702         Reviewed by Chris Dumez.
2703
2704         * WebView/WebScriptDebugger.mm:
2705         (toNSURL):
2706
2707 2018-10-01  Dean Jackson  <dino@apple.com>
2708
2709         Remove CSS Animation Triggers
2710         https://bugs.webkit.org/show_bug.cgi?id=190175
2711         <rdar://problem/44925626>
2712
2713         Reviewed by Simon Fraser.
2714
2715         * Configurations/FeatureDefines.xcconfig:
2716
2717 2018-10-02  Commit Queue  <commit-queue@webkit.org>
2718
2719         Unreviewed, rolling out r236624 and r236671.
2720         https://bugs.webkit.org/show_bug.cgi?id=190207
2721
2722         The change in r236624 introduced crashes on the bots
2723         (Requested by ryanhaddad on #webkit).
2724
2725         Reverted changesets:
2726
2727         "Refactoring: eliminate raw pointer usage in Fullscreen code"
2728         https://bugs.webkit.org/show_bug.cgi?id=188747
2729         https://trac.webkit.org/changeset/236624
2730
2731         "Unify implementation in VideoFullscreenInterfaceAVKit"
2732         https://bugs.webkit.org/show_bug.cgi?id=190091
2733         https://trac.webkit.org/changeset/236671
2734
2735 2018-10-01  Alex Christensen  <achristensen@webkit.org>
2736
2737         URL should not use TextEncoding internally
2738         https://bugs.webkit.org/show_bug.cgi?id=190111
2739
2740         Reviewed by Andy Estes.
2741
2742         * Misc/WebNSURLExtras.mm:
2743
2744 2018-09-28  Jer Noble  <jer.noble@apple.com>
2745
2746         Refactoring: eliminate raw pointer usage in Fullscreen code
2747         https://bugs.webkit.org/show_bug.cgi?id=188747
2748         <rdar://problem/43541164>
2749
2750         Reviewed by Alex Christensen.
2751
2752         PlaybackSessionInterface no longer has an invalidate() method.
2753
2754         * WebView/WebView.mm:
2755         (-[WebView _clearPlaybackControlsManager]):
2756
2757 2018-09-28  Chris Dumez  <cdumez@apple.com>
2758
2759         Drop support for cross-origin-window-policy header
2760         https://bugs.webkit.org/show_bug.cgi?id=190081
2761
2762         Reviewed by Ryosuke Niwa.
2763
2764         * WebView/WebPreferenceKeysPrivate.h:
2765         * WebView/WebPreferences.mm:
2766         (+[WebPreferences initialize]):
2767         * WebView/WebPreferencesPrivate.h:
2768         * WebView/WebView.mm:
2769         (-[WebView _preferencesChanged:]):
2770
2771 2018-09-28  Ryosuke Niwa  <rniwa@webkit.org>
2772
2773         Rename createMarkup to serializePreservingVisualAppearance
2774         https://bugs.webkit.org/show_bug.cgi?id=190086
2775
2776         Reviewed by Wenson Hsieh.
2777
2778         * DOM/WebDOMOperations.mm:
2779         (-[DOMRange markupString]):
2780
2781 2018-09-28  Commit Queue  <commit-queue@webkit.org>
2782
2783         Unreviewed, rolling out r236605.
2784         https://bugs.webkit.org/show_bug.cgi?id=190087
2785
2786         caused three API test timeouts (Requested by jernoble on
2787         #webkit).
2788
2789         Reverted changeset:
2790
2791         "Refactoring: eliminate raw pointer usage in Fullscreen code"
2792         https://bugs.webkit.org/show_bug.cgi?id=188747
2793         https://trac.webkit.org/changeset/236605
2794
2795 2018-09-28  Jer Noble  <jer.noble@apple.com>
2796
2797         Refactoring: eliminate raw pointer usage in Fullscreen code
2798         https://bugs.webkit.org/show_bug.cgi?id=188747
2799         <rdar://problem/43541164>
2800
2801         Reviewed by Alex Christensen.
2802
2803         PlaybackSessionInterface no longer has an invalidate() method.
2804
2805         * WebView/WebView.mm:
2806         (-[WebView _clearPlaybackControlsManager]):
2807
2808 2018-09-26  Ryosuke Niwa  <rniwa@webkit.org>
2809
2810         Use enum class in createMarkup arguments
2811         https://bugs.webkit.org/show_bug.cgi?id=190028
2812
2813         Reviewed by Wenson Hsieh.
2814
2815         * DOM/WebDOMOperations.mm:
2816         (-[DOMNode markupString]): Moved the code from WebCore/editing/markup.cpp
2817         (-[DOMRange markupString]): Ditto.
2818
2819 2018-09-27  Antoine Quint  <graouts@apple.com>
2820
2821         [Web Animations] Turn Web Animations with CSS integration on
2822         https://bugs.webkit.org/show_bug.cgi?id=184819
2823         <rdar://problem/39597337>
2824
2825         Reviewed by Dean Jackson.
2826
2827         * WebView/WebPreferences.mm:
2828         (+[WebPreferences initialize]):
2829
2830 2018-09-26  Ryosuke Niwa  <rniwa@webkit.org>
2831
2832         Selection should work across shadow boundary when initiated by a mouse drag
2833         https://bugs.webkit.org/show_bug.cgi?id=151380
2834         <rdar://problem/24363872>
2835
2836         Reviewed by Wenson Hsieh.
2837
2838         Added selectionAcrossShadowBoundariesEnabled as a preference to be used in DumpRenderTree.
2839
2840         * WebView/WebPreferenceKeysPrivate.h:
2841         * WebView/WebPreferences.mm:
2842         (+[WebPreferences initialize]):
2843         (-[WebPreferences selectionAcrossShadowBoundariesEnabled]):
2844         (-[WebPreferences setSelectionAcrossShadowBoundariesEnabled:]):
2845         * WebView/WebPreferencesPrivate.h:
2846         * WebView/WebView.mm:
2847         (-[WebView _preferencesChanged:]):
2848
2849 2018-09-24  Wenson Hsieh  <wenson_hsieh@apple.com>
2850
2851         Refactor Editor::fontAttributesForSelectionStart to be platform-agnostic
2852         https://bugs.webkit.org/show_bug.cgi?id=189918
2853         Work towards <rdar://problem/44648705>
2854
2855         Reviewed by Tim Horton.
2856
2857         Replace call sites of fontAttributesForSelectionStart() to fontAttributesAtSelectionStart().createDictionary().
2858
2859         * WebView/WebHTMLView.mm:
2860         (-[WebHTMLView _selectionStartFontAttributesAsRTF]):
2861         (-[WebHTMLView _updateFontPanel]):
2862         * WebView/WebView.mm:
2863         (-[WebView typingAttributes]):
2864
2865 2018-09-17  Darin Adler  <darin@apple.com>
2866
2867         Use OpaqueJSString rather than JSRetainPtr inside WebKit
2868         https://bugs.webkit.org/show_bug.cgi?id=189652
2869
2870         Reviewed by Saam Barati.
2871
2872         * WebView/WebPDFRepresentation.mm:
2873         (-[WebPDFRepresentation finishedLoadingWithDataSource:]): Use OpaqueJSString::create.
2874
2875 2018-09-14  Jer Noble  <jer.noble@apple.com>
2876
2877         Turn SourceBufferChangeTypeEnabled on by default
2878         https://bugs.webkit.org/show_bug.cgi?id=189527
2879
2880         Reviewed by Eric Carlson.
2881
2882         * WebView/WebPreferences.mm:
2883         (+[WebPreferences initialize]):
2884
2885 2018-09-12  Alex Christensen  <achristensen@webkit.org>
2886
2887         Fix an internal build after r235935
2888         https://bugs.webkit.org/show_bug.cgi?id=188996
2889
2890         * Carbon/HIWebView.mm:
2891         (Draw):
2892         r235935 fixed a mismatched macro with deprecated functions below it.  To quickly fix the build, I'm just going to restore the imbalance.
2893
2894 2018-09-12  Guillaume Emont  <guijemont@igalia.com>
2895
2896         Add IGNORE_WARNING_.* macros
2897         https://bugs.webkit.org/show_bug.cgi?id=188996
2898
2899         Reviewed by Michael Catanzaro.
2900
2901         * Carbon/CarbonUtils.m:
2902         (PoolCleaner):
2903         * Carbon/CarbonWindowAdapter.mm:
2904         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
2905         (-[CarbonWindowAdapter setViewsNeedDisplay:]):
2906         (-[CarbonWindowAdapter reconcileToCarbonWindowBounds]):
2907         (-[CarbonWindowAdapter _termWindowIfOwner]):
2908         (-[CarbonWindowAdapter _windowMovedToRect:]):
2909         (-[CarbonWindowAdapter setContentView:]):
2910         (-[CarbonWindowAdapter _handleRootBoundsChanged]):
2911         (-[CarbonWindowAdapter _handleContentBoundsChanged]):
2912         * Carbon/CarbonWindowFrame.m:
2913         (-[CarbonWindowFrame title]):
2914         * Carbon/HIViewAdapter.m:
2915         (+[HIViewAdapter getHIViewForNSView:]):
2916         * Carbon/HIWebView.mm:
2917         (overrideCGContext):
2918         (restoreCGContext):
2919         (Draw):
2920         * DOM/DOM.mm:
2921         * History/WebHistory.mm:
2922         (-[WebHistoryPrivate loadHistoryGutsFromURL:savedItemsCount:collectDiscardedItemsInto:error:]):
2923         * History/WebHistoryItem.mm:
2924         (-[WebHistoryItem icon]):
2925         * Misc/WebKitNSStringExtras.mm:
2926         (-[NSString _web_drawAtPoint:font:textColor:]):
2927         * Misc/WebNSImageExtras.m:
2928         (-[NSImage _web_scaleToMaxSize:]):
2929         (-[NSImage _web_dissolveToFraction:]):
2930         * Misc/WebNSPasteboardExtras.mm:
2931         (+[NSPasteboard _web_setFindPasteboardString:withOwner:]):
2932         (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):
2933         * Panels/WebAuthenticationPanel.m:
2934         (-[WebAuthenticationPanel loadNib]):
2935         * Plugins/Hosted/NetscapePluginHostManager.mm:
2936         (WebKit::NetscapePluginHostManager::spawnPluginHost):
2937         (WebKit::NetscapePluginHostManager::didCreateWindow):
2938         * Plugins/Hosted/NetscapePluginHostProxy.mm:
2939         (WebKit::NetscapePluginHostProxy::makeCurrentProcessFrontProcess):
2940         (WebKit::NetscapePluginHostProxy::makePluginHostProcessFrontProcess const):
2941         (WebKit::NetscapePluginHostProxy::isPluginHostProcessFrontProcess const):
2942         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2943         (WebKit::NetscapePluginInstanceProxy::mouseEvent):
2944         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
2945         (-[WebHostedNetscapePluginView drawRect:]):
2946         * Plugins/Hosted/WebTextInputWindowController.m:
2947         (-[WebTextInputPanel _interpretKeyEvent:string:]):
2948         * Plugins/WebBaseNetscapePluginView.mm:
2949         (-[WebBaseNetscapePluginView convertFromX:andY:space:toX:andY:space:]):
2950         * Plugins/WebNetscapePluginPackage.mm:
2951         (-[WebNetscapePluginPackage _tryLoad]):
2952         * Plugins/WebNetscapePluginView.mm:
2953         (-[WebNetscapePluginView saveAndSetNewPortStateForUpdate:]):
2954         (-[WebNetscapePluginView sendDrawRectEvent:]):
2955         (-[WebNetscapePluginView drawRect:]):
2956         * Plugins/WebPluginController.mm:
2957         (WebKit_TSUpdateCheck_alertDidEnd_returnCode_contextInfo_):
2958         (WebKit_NSAlert_beginSheetModalForWindow_modalDelegate_didEndSelector_contextInfo_):
2959         * WebCoreSupport/PopupMenuMac.mm:
2960         (PopupMenuMac::populate):
2961         * WebCoreSupport/WebAlternativeTextClient.h:
2962         * WebCoreSupport/WebDragClient.mm:
2963         (WebDragClient::startDrag):
2964         * WebCoreSupport/WebFrameLoaderClient.mm:
2965         (WebFrameLoaderClient::convertMainResourceLoadToDownload):
2966         (webGetNSImage):
2967         * WebInspector/WebNodeHighlight.mm:
2968         * WebInspector/WebNodeHighlightView.mm:
2969         (-[WebNodeHighlightView drawRect:]):
2970         * WebView/WebClipView.mm:
2971         (-[WebClipView initWithFrame:]):
2972         * WebView/WebFrame.mm:
2973         (-[WebFrame _updateBackgroundAndUpdatesWhileOffscreen]):
2974         (-[WebFrame _drawRect:contentsOnly:]):
2975         (-[WebFrame accessibilityRoot]):
2976         * WebView/WebFullScreenController.mm:
2977         (-[WebFullScreenController enterFullScreen:]):
2978         (-[WebFullScreenController finishedEnterFullScreenAnimation:]):
2979         (-[WebFullScreenController exitFullScreen]):
2980         (-[WebFullScreenController finishedExitFullScreenAnimation:]):
2981         (-[WebFullScreenController _startEnterFullScreenAnimationWithDuration:]):
2982         (-[WebFullScreenController _startExitFullScreenAnimationWithDuration:]):
2983         * WebView/WebHTMLView.mm:
2984         (-[NSWindow _web_borderView]):
2985         (-[WebHTMLView _updateMouseoverWithFakeEvent]):
2986         (-[WebHTMLView _setAsideSubviews]):
2987         (-[WebHTMLView _autoscroll]):
2988         (-[WebHTMLView drawRect:]):
2989         (-[WebHTMLView mouseDown:]):
2990         (-[WebHTMLView mouseDragged:]):
2991         (-[WebHTMLView mouseUp:]):
2992         (-[WebHTMLView _endPrintModeAndRestoreWindowAutodisplay]):
2993         (-[WebHTMLView knowsPageRange:]):
2994         (-[WebHTMLView accessibilityHitTest:]):
2995         (-[WebHTMLView _fontAttributesFromFontPasteboard]):
2996         (-[WebHTMLView _colorAsString:]):
2997         (-[WebHTMLView copyFont:]):
2998         (-[WebHTMLView _executeSavedKeypressCommands]):
2999         (-[WebHTMLView attachRootLayer:]):
3000         (-[WebHTMLView textStorage]):
3001         (-[WebHTMLView _updateSelectionForInputManager]):
3002         * WebView/WebPDFView.mm:
3003         (_applicationInfoForMIMEType):
3004         (-[WebPDFView centerSelectionInVisibleArea:]):
3005         (-[WebPDFView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
3006         (-[WebPDFView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
3007         (-[WebPDFView _recursive:displayRectIgnoringOpacity:inContext:topView:]):
3008         (-[WebPDFView searchFor:direction:caseSensitive:wrap:startInSelection:]):
3009         * WebView/WebTextCompletionController.mm:
3010         (-[WebTextCompletionController _buildUI]):
3011         (-[WebTextCompletionController _placePopupWindow:]):
3012         * WebView/WebVideoFullscreenController.mm:
3013         * WebView/WebVideoFullscreenHUDWindowController.mm:
3014         (createMediaUIBackgroundView):
3015         * WebView/WebView.mm:
3016         (-[WebTextListTouchBarViewController initWithWebView:]):
3017         (-[WebView _dispatchTileDidDraw:]):
3018         (-[WebView encodeWithCoder:]):
3019         (-[WebView mainFrameIcon]):
3020         (LayerFlushController::flushLayers):
3021         * WebView/WebWindowAnimation.mm:
3022         (setScaledFrameForWindow):
3023
3024 2018-09-10  Fujii Hironori  <Hironori.Fujii@sony.com>
3025
3026         Remove unused needsDestruction class variables from HashTraits
3027         https://bugs.webkit.org/show_bug.cgi?id=189490
3028
3029         Reviewed by Daniel Bates.
3030
3031         * History/BinaryPropertyList.cpp: Removed needsDestruction.
3032
3033 2018-09-07  Frederic Wang  <fwang@igalia.com>
3034
3035         [CSSOM View] Handle the scrollingElement in Element::scroll(Left/Top/Width/Height/To)
3036         https://bugs.webkit.org/show_bug.cgi?id=182230
3037
3038         Reviewed by Simon Fraser.
3039
3040         * DOM/DOMDocument.mm:
3041         (-[DOMDocument scrollingElement]): Use the new name.
3042
3043 2018-09-06  Wenson Hsieh  <wenson_hsieh@apple.com>
3044
3045         Refactor WebCore::EditAction to be an 8-bit enum class
3046         https://bugs.webkit.org/show_bug.cgi?id=189383
3047
3048         Reviewed by Dan Bernstein.
3049
3050         * WebCoreSupport/WebEditorClient.mm:
3051         (undoNameForEditAction):
3052         * WebView/WebHTMLView.mm:
3053         (-[WebHTMLView pasteFont:]):
3054         (-[WebHTMLView changeFont:]):
3055         (-[WebHTMLView changeAttributes:]):
3056         (-[WebHTMLView _undoActionFromColorPanelWithSelector:]):
3057         (-[WebHTMLView changeColor:]):
3058         * WebView/WebView.mm:
3059         (-[WebView setTypingStyle:]):
3060
3061 2018-09-06  Frederic Wang  <fwang@igalia.com>
3062
3063         Group options of scrollRectToVisible into a struct
3064         https://bugs.webkit.org/show_bug.cgi?id=189352
3065
3066         Reviewed by Simon Fraser.
3067
3068         * WebView/WebFrame.mm: Add header to use ScrollRectToVisibleOptions.
3069         (-[WebFrame _scrollDOMRangeToVisible:]): Pass options via a struct.
3070         (-[WebFrame _scrollDOMRangeToVisible:withInset:]): Ditto.
3071
3072 2018-09-06  Wenson Hsieh  <wenson_hsieh@apple.com>
3073
3074         [macOS] Cannot change font size at selection until font panel is shown
3075         https://bugs.webkit.org/show_bug.cgi?id=189295
3076         <rdar://problem/35593389>
3077
3078         Reviewed by Ryosuke Niwa.
3079
3080         Remove code in WebKitLegacy for diffing NSFonts to figure out which style properties need to be changed. See
3081         WebCore ChangeLog for more details.
3082
3083         * WebView/WebHTMLView.mm:
3084         (-[WebHTMLView changeFont:]):
3085         (-[WebHTMLView changeAttributes:]):
3086         (-[WebHTMLView _originalFontA]): Deleted.
3087         (-[WebHTMLView _originalFontB]): Deleted.
3088         (fontNameForDescription): Deleted.
3089         (-[WebHTMLView _addToStyle:fontA:fontB:]): Deleted.
3090         (-[WebHTMLView _styleFromFontManagerOperation]): Deleted.
3091         (-[WebHTMLView _styleForAttributeChange:]): Deleted.
3092
3093 2018-09-05  Jer Noble  <jer.noble@apple.com>
3094
3095         Add MediaCapabilities as an Experimental Feature
3096         https://bugs.webkit.org/show_bug.cgi?id=189209
3097
3098         Reviewed by Eric Carlson.
3099
3100         RuntimeEnabledFeature -> Setting.
3101
3102         * WebView/WebView.mm:
3103         (-[WebView _preferencesChanged:]):
3104
3105 2018-09-04  Frederic Wang  <fwang@igalia.com>
3106
3107         Add basic support for ScrollIntoViewOptions
3108         https://bugs.webkit.org/show_bug.cgi?id=189258
3109
3110         Reviewed by Simon Fraser.
3111
3112         * WebProcess/InjectedBundle/API/gtk/DOM/WebKitDOMElementGtk.cpp: Add ScrollIntoViewOptions
3113         header so that this file can build despite the new scrollIntoView function.
3114
3115 2018-09-04  Wenson Hsieh  <wenson_hsieh@apple.com>
3116
3117         Populate "text/uri-list" with multiple URLs when the pasteboard contains multiple URLs
3118         https://bugs.webkit.org/show_bug.cgi?id=188890
3119         <rdar://problem/43648605>
3120
3121         Reviewed by Tim Horton.
3122
3123         Add some plumbing through pasteboard classes to support `Pasteboard::readAllStrings`. See WebCore ChangeLog for
3124         more detail.
3125
3126         * WebCoreSupport/WebPlatformStrategies.h:
3127         * WebCoreSupport/WebPlatformStrategies.mm:
3128         (WebPlatformStrategies::allStringsForType):
3129
3130 2018-09-01  Darin Adler  <darin@apple.com>
3131
3132         [CFNetwork] Update CFNetwork SPI use to use CFNetworkSPI.h more consistently
3133         https://bugs.webkit.org/show_bug.cgi?id=189072
3134         Reviewed by Dan Bernstein.
3135
3136         * Misc/WebDownload.mm: Removed forward declaration of NSURLConnectionDelegateProxy
3137         and declarations for NSURLDownload init methods.
3138
3139         * Misc/WebDownloadInternal.h: Removed.
3140
3141         * WebCoreSupport/WebFrameLoaderClient.mm: Removed include of WebDownloadInternal.h.
3142         (WebFrameLoaderClient::convertMainResourceLoadToDownload): Ignore
3143         "-Wdeprecated-declarations" because the method used here is deprecated.
3144
3145         * WebView/WebView.mm:
3146         (-[WebView _downloadURL:]): Ignore "-Wdeprecated-declarations" because the method
3147         used here is deprecated.
3148
3149 2018-08-31  Chris Dumez  <cdumez@apple.com>
3150
3151         Assertion hit in ~CompletionHandler() from ~WebFrame()
3152         https://bugs.webkit.org/show_bug.cgi?id=189199
3153         <rdar://problem/42657233>
3154
3155         Reviewed by Youenn Fablet.
3156
3157         * WebCoreSupport/WebFrameLoaderClient.h:
3158         * WebCoreSupport/WebFrameLoaderClient.mm:
3159         (WebFrameLoaderClient::dispatchWillSubmitForm):
3160
3161 2018-08-31  Antti Koivisto  <antti@apple.com>
3162
3163         Replace OptionSet |= and -= operators with add() and remove() functions
3164         https://bugs.webkit.org/show_bug.cgi?id=189169
3165
3166         Reviewed by Anders Carlsson.
3167
3168         * WebView/WebFrame.mm:
3169         (-[WebFrame _drawRect:contentsOnly:]):
3170         * WebView/WebView.mm:
3171         (coreOptions):
3172
3173 2018-08-31  Frederic Wang  <fwang@igalia.com>
3174
3175         Bug 182053 - [CSSOM View] Implement standard behavior for scrollingElement
3176         https://bugs.webkit.org/show_bug.cgi?id=182053
3177
3178         Reviewed by Simon Fraser.
3179
3180         Add developer flag to use standard behavior for scrolling* attributes.
3181
3182         * WebView/WebPreferenceKeysPrivate.h:
3183         * WebView/WebPreferences.mm:
3184         (+[WebPreferences initialize]):
3185         (-[WebPreferences CSSOMViewScrollingAPIEnabled]):
3186         (-[WebPreferences setCSSOMViewScrollingAPIEnabled:]):
3187         * WebView/WebPreferencesPrivate.h:
3188         * WebView/WebView.mm:
3189         (-[WebView _preferencesChanged:]):
3190
3191 2018-08-29  Olivia Barnett  <obarnett@apple.com>
3192
3193         Implement the Web Share API
3194         https://bugs.webkit.org/show_bug.cgi?id=171100
3195         <rdar://problem/31751734>
3196
3197         Reviewed by Tim Horton.
3198
3199         * WebCoreSupport/WebChromeClient.h:
3200         * WebCoreSupport/WebChromeClient.mm:
3201         (WebChromeClient::showShareSheet):
3202         Empty declaration of showShareSheet.
3203
3204 2018-08-29  Youenn Fablet  <youenn@apple.com>
3205
3206         Remove WebRTC legacy API implementation
3207         https://bugs.webkit.org/show_bug.cgi?id=189040
3208
3209         Reviewed by Eric Carlson.
3210
3211         * WebView/WebPreferenceKeysPrivate.h:
3212         * WebView/WebPreferences.mm:
3213         (+[WebPreferences initialize]):
3214         (-[WebPreferences webRTCLegacyAPIEnabled]): Deleted.
3215         (-[WebPreferences setWebRTCLegacyAPIEnabled:]): Deleted.
3216         * WebView/WebPreferencesPrivate.h:
3217         * WebView/WebView.mm:
3218         (-[WebView _preferencesChanged:]):
3219
3220 2018-08-28  Wenson Hsieh  <wenson_hsieh@apple.com>
3221
3222         Work towards: [iOS] Consolidate the implementations of readString, stringForType, and readURL in PlatformPasteboardIOS.mm
3223         https://bugs.webkit.org/show_bug.cgi?id=189054
3224
3225         Reviewed by Andy Estes.
3226
3227         Remove the pasteboard type argument from readURLFromPasteboard.
3228
3229         * WebCoreSupport/WebPlatformStrategies.h:
3230         * WebCoreSupport/WebPlatformStrategies.mm:
3231         (WebPlatformStrategies::readURLFromPasteboard):
3232
3233 2018-08-27  Keith Rollin  <krollin@apple.com>
3234
3235         Unreviewed build fix -- disable LTO for production builds
3236
3237         * Configurations/Base.xcconfig:
3238
3239 2018-08-27  Aditya Keerthi  <akeerthi@apple.com>
3240
3241         Consolidate ENABLE_INPUT_TYPE_COLOR and ENABLE_INPUT_TYPE_COLOR_POPOVER
3242         https://bugs.webkit.org/show_bug.cgi?id=188931
3243
3244         Reviewed by Wenson Hsieh.
3245
3246         * Configurations/FeatureDefines.xcconfig: Removed ENABLE_INPUT_TYPE_COLOR_POPOVER.
3247
3248 2018-08-27  Keith Rollin  <krollin@apple.com>
3249
3250         Build system support for LTO
3251         https://bugs.webkit.org/show_bug.cgi?id=187785
3252         <rdar://problem/42353132>
3253
3254         Reviewed by Dan Bernstein.
3255
3256         Update Base.xcconfig and DebugRelease.xcconfig to optionally enable
3257         LTO.
3258
3259         * Configurations/Base.xcconfig:
3260         * Configurations/DebugRelease.xcconfig:
3261
3262 2018-08-24  Ryosuke Niwa  <rniwa@webkit.org>
3263
3264         Pass in IsComposed flag to Event constructors
3265         https://bugs.webkit.org/show_bug.cgi?id=188720
3266         <rdar://problem/43580387>
3267
3268         Reviewed by Simon Fraser.
3269
3270         * WebView/WebPDFView.mm:
3271         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): A trusted click event is composed regardless of
3272         whether it's simulated or not.
3273
3274 2018-08-23  Mark Lam  <mark.lam@apple.com>
3275
3276         Move vmEntryGlobalObject() to VM from CallFrame.
3277         https://bugs.webkit.org/show_bug.cgi?id=188900
3278         <rdar://problem/43655753>
3279
3280         Reviewed by Michael Saboff.
3281
3282         * WebView/WebScriptDebugger.mm:
3283         (WebScriptDebugger::sourceParsed):
3284
3285 2018-08-23  Andy Estes  <aestes@apple.com>
3286
3287         [Apple Pay] Introduce Apple Pay JS v4 on iOS 12 and macOS Mojave
3288         https://bugs.webkit.org/show_bug.cgi?id=188829
3289
3290         Reviewed by Tim Horton.
3291
3292         * Configurations/FeatureDefines.xcconfig:
3293
3294 2018-08-21  Ryosuke Niwa  <rniwa@webkit.org>
3295
3296         Replace booleans for modifier keys in UIEventWithKeyState with OptionSet<Modifier>
3297         https://bugs.webkit.org/show_bug.cgi?id=188777
3298
3299         Reviewed by Simon Fraser.
3300
3301         Create MouseEvent::create with IsSimulated set to Yes; correspoding to the last argument
3302         being "true" before the code change.
3303
3304         Use modifiersForEvent to convert [nsEvent modifierFlags] to OptionSet<Modifier>.
3305
3306         * WebView/WebPDFView.mm:
3307         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
3308
3309 2018-08-21  Daniel Bates  <dabates@apple.com>
3310
3311         Replace TextCheckingTypeMask with OptionSet
3312         https://bugs.webkit.org/show_bug.cgi?id=188678
3313
3314         Reviewed by Antti Koivisto.
3315
3316         Currently we have code in WebEditorClient::checkTextOfParagraph() that incorrectly assumes
3317         that the enumerators of TextCheckingType have a one-to-one correspondence with NSTextCheckingType.
3318         (This is not the case because there is not corresponding NSTextCheckingType for TextCheckingTypeShowCorrectionPanel).
3319         We now explicitly convert from OptionSet<TextCheckingType> to NSTextCheckingTypes.
3320
3321         * WebCoreSupport/WebEditorClient.h:
3322         * WebCoreSupport/WebEditorClient.mm:
3323         (WebEditorClient::checkTextOfParagraph):
3324         (WebEditorClient::shouldEraseMarkersAfterChangeSelection const):
3325         (core): Fix up code style nits; compare resultType on the right-hand side instead of the
3326         left as this is more readable and unncessary now that modern compilers like Clang have
3327         diagnostics to catch accidental assignments when equality was intended.
3328         (WebEditorClient::didCheckSucceed):
3329         * WebView/WebView.mm:
3330         (coreTextCheckingType):
3331         (textCheckingResultFromNSTextCheckingResult):
3332
3333 2018-08-21  Daniel Bates  <dabates@apple.com>
3334
3335         [iOS][WK1] Support toggling continuous spell checking from tests
3336         https://bugs.webkit.org/show_bug.cgi?id=188763
3337
3338         Reviewed by Simon Fraser.
3339
3340         Move some more code out from under a !PLATFORM(IOS)-guard so as to support toggling continuous
3341         spell checking from tests in iOS WebKit Legacy.
3342
3343         * WebCoreSupport/WebEditorClient.h:
3344         (WebEditorClient::toggleContinuousSpellChecking): Deleted.
3345         * WebCoreSupport/WebEditorClient.mm:
3346         * WebView/WebView.h:
3347         * WebView/WebView.mm:
3348         (-[WebView toggleContinuousSpellChecking:]):
3349         (-[WebView toggleSmartInsertDelete:]):
3350
3351 2018-08-17  Alex Christensen  <achristensen@webkit.org>
3352
3353         Add some plumbing for safe browsing
3354         https://bugs.webkit.org/show_bug.cgi?id=188709
3355
3356         Reviewed by Tim Horton.
3357
3358         * WebCoreSupport/WebFrameLoaderClient.h:
3359         * WebCoreSupport/WebFrameLoaderClient.mm:
3360         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
3361
3362 2018-08-16  Ryosuke Niwa  <rniwa@webkit.org>
3363
3364         Replace canBubble and cancelable booleans in Event by enum classes
3365         https://bugs.webkit.org/show_bug.cgi?id=188692
3366
3367         Reviewed by Alex Christensen.
3368
3369         * WebView/WebPDFView.mm:
3370         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
3371         * WebView/WebView.mm:
3372         (-[WebView _dispatchUnloadEvent]):
3373
3374 2018-08-16  Jer Noble  <jer.noble@apple.com>
3375
3376         Add Experimental Feature support for SourceBuffer.changeType()
3377         https://bugs.webkit.org/show_bug.cgi?id=188626
3378         <rdar://problem/43356021>
3379
3380         Reviewed by Eric Carlson.
3381
3382         Add a new WebPreference property mapping to the WebCore SourceBufferChangeTypeEnabled setting.
3383
3384         * WebView/WebPreferenceKeysPrivate.h:
3385         * WebView/WebPreferences.mm:
3386         (+[WebPreferences initialize]):
3387         (-[WebPreferences sourceBufferChangeTypeEnabled]):
3388         (-[WebPreferences setSourceBufferChangeTypeEnabled:]):
3389         * WebView/WebPreferencesPrivate.h:
3390         * WebView/WebView.mm:
3391         (-[WebView _preferencesChanged:]):
3392
3393 2018-08-16  Aditya Keerthi  <akeerthi@apple.com>
3394
3395         Support drag-and-drop for input[type=color]
3396         https://bugs.webkit.org/show_bug.cgi?id=188464
3397
3398         Reviewed by Wenson Hsieh.
3399
3400         * WebCoreSupport/WebPlatformStrategies.h:
3401         * WebCoreSupport/WebPlatformStrategies.mm:
3402         (WebPlatformStrategies::setColor):
3403
3404 2018-08-15  Tim Horton  <timothy_horton@apple.com>
3405
3406         Crashes in Quip under _dictionaryPopupInfoForRange, in setObject:forKey:
3407         https://bugs.webkit.org/show_bug.cgi?id=188569
3408         <rdar://problem/34201095>
3409
3410         Reviewed by Megan Gardner.
3411
3412         * WebView/WebImmediateActionController.mm:
3413         (+[WebImmediateActionController _dictionaryPopupInfoForRange:inFrame:withLookupOptions:indicatorOptions:transition:]):
3414         Speculative fix; the crashes indicate font is null, but we just checked it,
3415         so it must be getting made null by convertFont:toSize:. Check again!
3416
3417 2018-08-13  Alex Christensen  <achristensen@webkit.org>
3418
3419         Use a 1-byte enum class for TextDirection
3420         https://bugs.webkit.org/show_bug.cgi?id=188350
3421
3422         Reviewed by Simon Fraser.
3423
3424         * WebCoreSupport/PopupMenuMac.mm:
3425         (PopupMenuMac::populate):
3426         (PopupMenuMac::show):
3427         * WebCoreSupport/WebFrameLoaderClient.mm:
3428         (WebFrameLoaderClient::transitionToCommittedForNewPage):
3429         * WebView/WebFrame.mm:
3430         (-[WebFrame _dispatchDidReceiveTitle:]):
3431
3432 2018-08-09  Ali Juma  <ajuma@chromium.org>
3433
3434         Import WPTs for IntersectionObserver
3435         https://bugs.webkit.org/show_bug.cgi?id=188416
3436
3437         Reviewed by Simon Fraser.
3438
3439         * WebView/WebPreferencesPrivate.h:
3440
3441 2018-08-08  Jonathan Bedard  <jbedard@apple.com>
3442
3443         Follow-up build fix for r234685
3444         https://bugs.webkit.org/show_bug.cgi?id=188245
3445
3446         Unreviewed build fix.
3447
3448         * WebCoreSupport/WebSecurityOriginPrivate.h:
3449
3450 2018-08-05  Darin Adler  <darin@apple.com>
3451
3452         [Cocoa] More tweaks and refactoring to prepare for ARC
3453         https://bugs.webkit.org/show_bug.cgi?id=188245
3454
3455         Reviewed by Dan Bernstein.
3456
3457         * Carbon/CarbonUtils.m: Updated include for rename: FoundationSPI.h -> objcSPI.h.
3458
3459         * Carbon/CarbonWindowFrame.m:
3460         (-[CarbonWindowFrame dealloc]): Deleted. It was empty.
3461
3462         * DOM/DOM.mm:
3463         (-[DOMElement _imageTIFFRepresentation]): Use a bridging cast.
3464         (-[DOMNodeFilter finalize]): Deleted. WebKit no longer supports Objective-C
3465         garbage collection so this method isn't useful.
3466
3467         * DOM/DOMXPath.mm:
3468         (-[DOMNativeXPathNSResolver finalize]): Deleted. WebKit no longer supports
3469         Objective-C garbage collection so this method isn't useful.
3470
3471         * History/WebHistory.mm:
3472         (-[WebHistoryPrivate data]): Allocate an NSData instead of casting from a CFData.
3473
3474         * Misc/WebElementDictionary.mm:
3475         (addLookupKey): Use a bridging cast.
3476         (cacheValueForKey): Ditto.
3477         (-[WebElementDictionary _fillCache]): Ditto.
3478         (-[WebElementDictionary objectForKey:]): Ditto.
3479
3480         * Misc/WebKitNSStringExtras.mm:
3481         (-[NSString _web_drawAtPoint:font:textColor:]): Use a bridging cast.
3482         (-[NSString _web_widthWithFont:]): Ditto.
3483         (-[NSString _webkit_stringByTrimmingWhitespace]): Ditto.
3484
3485         * Misc/WebLocalizableStrings.mm:
3486         (WebLocalizedString): Use a bridging cast.
3487
3488         * Misc/WebNSDataExtras.mm:
3489         (-[NSString _web_capitalizeRFC822HeaderFieldName]): Use a bridging cast
3490         and use CFBridgingRelease instead of calling autorelease directly.
3491         (-[NSData _webkit_parseRFC822HeaderFields]): Use NSString methods instead
3492         of a mix of CFString and NSString. Also simplified logic a bit, and cut down
3493         on the amount of explicit release and autorelease.
3494
3495         * Misc/WebNSDictionaryExtras.h: Deleted unused methods.
3496         * Misc/WebNSDictionaryExtras.m:
3497         (-[NSDictionary _webkit_intForKey:]): Deleted.
3498         (-[NSMutableDictionary _webkit_setInt:forKey:]): Deleted.
3499         (-[NSMutableDictionary _webkit_setFloat:forKey:]): Deleted.
3500         (-[NSMutableDictionary _webkit_setBool:forKey:]): Deleted.
3501         (-[NSMutableDictionary _webkit_setLongLong:forKey:]): Deleted.
3502         (-[NSMutableDictionary _webkit_setUnsignedLongLong:forKey:]): Deleted.
3503         (-[NSMutableDictionary _webkit_setUnsignedInt:forKey:]): Deleted.
3504
3505         * Misc/WebStringTruncator.mm:
3506         (fontFromNSFont): Use a bridging cast.
3507
3508         * Plugins/Hosted/NetscapePluginHostManager.mm:
3509         (WebKit::preferredBundleLocalizationName): Use a bridging cast and CFBridgingRelease.
3510
3511         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3512         (WebKit::NetscapePluginInstanceProxy::cleanup): Use a bridging cast.
3513         (WebKit::NetscapePluginInstanceProxy::status): Ditto.
3514         (WebKit::NetscapePluginInstanceProxy::loadURL): Ditto.
3515         (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray): Ditto.
3516         * Plugins/Hosted/ProxyInstance.mm:
3517         (WebKit::ProxyInstance::getPropertyNames): Ditto.
3518         * Plugins/WebBasePluginPackage.mm:
3519         (-[WebBasePluginPackage _objectForInfoDictionaryKey:]): Ditto.
3520         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
3521         (WebNetscapePluginEventHandlerCocoa::platformWindow): Ditto.
3522         * Plugins/WebNetscapePluginPackage.mm:
3523         (-[WebNetscapePluginPackage _initWithPath:]): Ditto.
3524
3525         * Plugins/WebNetscapePluginView.mm:
3526         (-[WebNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]):
3527         Use bridging casts and use RetainPtr insteead of an explicit CFRelease.
3528         (-[WebNetscapePluginView status:]): Use a bridging cast.
3529         (-[WebNetscapePluginView popUpContextMenu:]): Ditto.
3530
3531         * Plugins/WebPluginController.mm:
3532         (-[WebPluginController _cancelOutstandingChecks]): Use a bridging cast.
3533
3534         * Plugins/WebPluginDatabase.mm:
3535         (checkCandidate): Use explicit __strong for out argument types.
3536
3537         * Plugins/npapi.mm:
3538         (pluginViewForInstance): Use a bridging cast.
3539
3540         * Storage/WebDatabaseManager.mm:
3541         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Use modern boxing instead of
3542         explicit NSNumber and NSDictionary calls.
3543
3544         * WebCoreSupport/WebContextMenuClient.mm:
3545         (WebContextMenuClient::speak): Remove an unnecessary copy/autorelease pair.
3546
3547         * WebCoreSupport/WebEditorClient.mm:
3548         (WebEditorClient::handleKeyboardEvent): Added a missing typecast.
3549         (WebEditorClient::handleInputMethodKeydown): Ditto.
3550
3551         * WebCoreSupport/WebFrameNetworkingContext.mm:
3552         (WebFrameNetworkingContext::sourceApplicationAuditData const): Use a bridging cast.
3553
3554         * WebCoreSupport/WebSecurityOriginPrivate.h: Forward declare WebSecurityOriginPrivate
3555         as a struct rather than an Objective-C class, since that's how it's defined.
3556
3557         * WebInspector/WebNodeHighlighter.mm: Added missing includes.
3558
3559         * WebView/WebFullScreenController.mm:
3560         (-[WebFullScreenController enterFullScreen:]): Use a bridging cast.
3561         * WebView/WebHTMLView.mm:
3562         (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
3563         Ditto.
3564         (-[WebHTMLView pasteboard:provideDataForType:]): Ditto.
3565
3566         * WebView/WebImmediateActionController.mm:
3567         (-[WebImmediateActionController performHitTestAtPoint:]): Removed redundant code to
3568         go down to the document and then back to the frame.
3569         (-[WebImmediateActionController immediateActionRecognizerDidUpdateAnimation:]): Ditto.
3570         (-[WebImmediateActionController immediateActionRecognizerDidCancelAnimation:]): Ditto.
3571         (-[WebImmediateActionController immediateActionRecognizerDidCompleteAnimation:]): Ditto.
3572
3573         * WebView/WebJSPDFDoc.mm:
3574         (jsPDFDocInitialize): Removed some unneeded type casting.
3575         (jsPDFDocFinalize): Ditto.
3576         (jsPDFDocPrint): Use a bridging cast.
3577
3578         * WebView/WebPDFView.mm:
3579         (_applicationInfoForMIMEType): Use bridging casts.
3580
3581         * WebView/WebPreferences.mm:
3582         (-[WebPreferences _setIntegerValue:forKey:]): Use boxing and setObject directly
3583         instead of methods from WebNSDictionaryExtras.
3584         (-[WebPreferences _setUnsignedIntValue:forKey:]): Ditto.
3585         (-[WebPreferences _setFloatValue:forKey:]): Ditto.
3586         (-[WebPreferences _setBoolValue:forKey:]): Ditto.
3587         (-[WebPreferences _setLongLongValue:forKey:]): Ditto.
3588         (-[WebPreferences _setUnsignedLongLongValue:forKey:]): Ditto.
3589
3590         * WebView/WebView.mm:
3591         (-[WebView _removeFromAllWebViewsSet]): Use bridging cast.
3592         (-[WebView _addToAllWebViewsSet]): Ditto.
3593         (+[WebView closeAllWebViews]): Use a modern for loop instead of NSEnumerator.
3594         (-[WebView _windowVisibilityChanged:]): Moved this into the internal category
3595         so it can be called from WebViewData methods.
3596
3597         * WebView/WebViewData.mm: Added an import so we can call an internal WebView
3598         method, _windowVisibilityChanged:.
3599
3600         * WebView/WebViewInternal.h: Declared _windowVisibilityChanged: so it can be
3601         called from WebViewData methods.
3602
3603 2018-08-06  Alex Christensen  <achristensen@webkit.org>
3604
3605         Use enum classes and OptionSets for PaintPhase and PaintBehavior
3606         https://bugs.webkit.org/show_bug.cgi?id=188323
3607
3608         Reviewed by Simon Fraser.
3609
3610         * WebCoreSupport/WebContextMenuClient.mm:
3611         (WebContextMenuClient::imageForCurrentSharingServicePickerItem):
3612         * WebView/WebFrame.mm:
3613         (-[WebFrame _paintBehaviorForDestinationContext:]):
3614         (-[WebFrame _drawRect:contentsOnly:]):
3615         * WebView/WebHTMLView.mm:
3616         (imageFromRect):
3617         (selectionImage):
3618
3619 2018-08-05  Yusuke Suzuki  <utatane.tea@gmail.com>
3620
3621         Add support for microtasks in workers
3622         https://bugs.webkit.org/show_bug.cgi?id=188246
3623
3624         Reviewed by Darin Adler.
3625
3626         Rename JSMainThreadExecState.h to JSExecState.h.
3627
3628         * DOM/DOMAttr.mm:
3629         * DOM/DOMBlob.mm:
3630         * DOM/DOMCDATASection.mm:
3631         * DOM/DOMCSSCharsetRule.mm:
3632         * DOM/DOMCSSFontFaceRule.mm:
3633         * DOM/DOMCSSImportRule.mm:
3634         * DOM/DOMCSSMediaRule.mm:
3635         * DOM/DOMCSSPageRule.mm:
3636         * DOM/DOMCSSPrimitiveValue.mm:
3637         * DOM/DOMCSSRule.mm:
3638         * DOM/DOMCSSRuleList.mm:
3639         * DOM/DOMCSSStyleDeclaration.mm:
3640         * DOM/DOMCSSStyleRule.mm:
3641         * DOM/DOMCSSStyleSheet.mm:
3642         * DOM/DOMCSSUnknownRule.mm:
3643         * DOM/DOMCSSValue.mm:
3644         * DOM/DOMCSSValueList.mm:
3645         * DOM/DOMCharacterData.mm:
3646         * DOM/DOMComment.mm:
3647         * DOM/DOMCounter.mm:
3648         * DOM/DOMDocument.mm:
3649         * DOM/DOMDocumentFragment.mm:
3650         * DOM/DOMDocumentType.mm:
3651         * DOM/DOMElement.mm:
3652         * DOM/DOMEvent.mm:
3653         * DOM/DOMFile.mm:
3654         * DOM/DOMFileList.mm:
3655         * DOM/DOMHTML.mm:
3656         * DOM/DOMHTMLAnchorElement.mm:
3657         * DOM/DOMHTMLAppletElement.mm:
3658         * DOM/DOMHTMLAreaElement.mm:
3659         * DOM/DOMHTMLBRElement.mm:
3660         * DOM/DOMHTMLBaseElement.mm:
3661         * DOM/DOMHTMLBaseFontElement.mm:
3662         * DOM/DOMHTMLBodyElement.mm:
3663         * DOM/DOMHTMLButtonElement.mm:
3664         * DOM/DOMHTMLCanvasElement.mm:
3665         * DOM/DOMHTMLCollection.mm:
3666         * DOM/DOMHTMLDListElement.mm:
3667         * DOM/DOMHTMLDirectoryElement.mm:
3668         * DOM/DOMHTMLDivElement.mm:
3669         * DOM/DOMHTMLDocument.mm:
3670         * DOM/DOMHTMLElement.mm:
3671         * DOM/DOMHTMLEmbedElement.mm:
3672         * DOM/DOMHTMLFieldSetElement.mm:
3673         * DOM/DOMHTMLFontElement.mm:
3674         * DOM/DOMHTMLFormElement.mm:
3675         * DOM/DOMHTMLFrameElement.mm:
3676         * DOM/DOMHTMLFrameSetElement.mm:
3677         * DOM/DOMHTMLHRElement.mm:
3678         * DOM/DOMHTMLHeadElement.mm:
3679         * DOM/DOMHTMLHeadingElement.mm:
3680         * DOM/DOMHTMLHtmlElement.mm:
3681         * DOM/DOMHTMLIFrameElement.mm:
3682         * DOM/DOMHTMLImageElement.mm:
3683         * DOM/DOMHTMLInputElement.mm:
3684         * DOM/DOMHTMLLIElement.mm:
3685         * DOM/DOMHTMLLabelElement.mm:
3686         * DOM/DOMHTMLLegendElement.mm:
3687         * DOM/DOMHTMLLinkElement.mm:
3688         * DOM/DOMHTMLMapElement.mm:
3689         * DOM/DOMHTMLMarqueeElement.mm:
3690         * DOM/DOMHTMLMediaElement.mm:
3691         * DOM/DOMHTMLMenuElement.mm:
3692         * DOM/DOMHTMLMetaElement.mm:
3693         * DOM/DOMHTMLModElement.mm:
3694         * DOM/DOMHTMLOListElement.mm:
3695         * DOM/DOMHTMLObjectElement.mm:
3696         * DOM/DOMHTMLOptGroupElement.mm:
3697         * DOM/DOMHTMLOptionElement.mm:
3698         * DOM/DOMHTMLOptionsCollection.mm:
3699         * DOM/DOMHTMLParagraphElement.mm:
3700         * DOM/DOMHTMLParamElement.mm:
3701         * DOM/DOMHTMLPreElement.mm:
3702         * DOM/DOMHTMLQuoteElement.mm:
3703         * DOM/DOMHTMLScriptElement.mm:
3704         * DOM/DOMHTMLSelectElement.mm:
3705         * DOM/DOMHTMLStyleElement.mm:
3706         * DOM/DOMHTMLTableCaptionElement.mm:
3707         * DOM/DOMHTMLTableCellElement.mm:
3708         * DOM/DOMHTMLTableColElement.mm:
3709         * DOM/DOMHTMLTableElement.mm:
3710         * DOM/DOMHTMLTableRowElement.mm:
3711         * DOM/DOMHTMLTableSectionElement.mm:
3712         * DOM/DOMHTMLTextAreaElement.mm:
3713         * DOM/DOMHTMLTitleElement.mm:
3714         * DOM/DOMHTMLUListElement.mm:
3715         * DOM/DOMHTMLVideoElement.mm:
3716         * DOM/DOMImplementation.mm:
3717         * DOM/DOMKeyboardEvent.mm:
3718         * DOM/DOMMediaError.mm:
3719         * DOM/DOMMediaList.mm:
3720         * DOM/DOMMouseEvent.mm:
3721         * DOM/DOMMutationEvent.mm:
3722         * DOM/DOMNamedNodeMap.mm:
3723         * DOM/DOMNode.mm:
3724         * DOM/DOMNodeIterator.mm:
3725         * DOM/DOMNodeList.mm:
3726         * DOM/DOMOverflowEvent.mm:
3727         * DOM/DOMProcessingInstruction.mm:
3728         * DOM/DOMProgressEvent.mm:
3729         * DOM/DOMRGBColor.mm:
3730         * DOM/DOMRange.mm:
3731         * DOM/DOMRect.mm:
3732         * DOM/DOMStyleSheet.mm:
3733         * DOM/DOMStyleSheetList.mm:
3734         * DOM/DOMText.mm:
3735         * DOM/DOMTextEvent.mm:
3736         * DOM/DOMTimeRanges.mm:
3737         * DOM/DOMTokenList.mm:
3738         * DOM/DOMTreeWalker.mm:
3739         * DOM/DOMUIEvent.mm:
3740         * DOM/DOMWheelEvent.mm:
3741         * DOM/DOMXPathExpression.mm:
3742         * DOM/DOMXPathResult.mm:
3743         * DOM/ObjCEventListener.mm:
3744
3745 2018-08-03  Alex Christensen  <achristensen@webkit.org>
3746
3747         Fix spelling of "overridden"
3748         https://bugs.webkit.org/show_bug.cgi?id=188315
3749
3750         Reviewed by Darin Adler.
3751
3752         * Misc/WebKitVersionChecks.mm:
3753         (setWebKitLinkTimeVersion):
3754         (WebKitLinkTimeVersion):
3755         * Plugins/WebBaseNetscapePluginView.mm:
3756         (-[WebBaseNetscapePluginView handleMouseMoved:]):
3757         * WebCoreSupport/PopupMenuMac.mm:
3758         (PopupMenuMac::populate):
3759
3760 2018-08-01  Nan Wang  <n_wang@apple.com>
3761
3762         AX: AOM: Add ARIA IDL Attribute Reflection
3763         https://bugs.webkit.org/show_bug.cgi?id=184676
3764         <rdar://problem/39476882>
3765
3766         Reviewed by Chris Fleizach.
3767
3768         * WebView/WebPreferenceKeysPrivate.h:
3769         * WebView/WebPreferences.mm:
3770         (+[WebPreferences initialize]):
3771         (-[WebPreferences ariaReflectionEnabled]):
3772         (-[WebPreferences setAriaReflectionEnabled:]):
3773         * WebView/WebPreferencesPrivate.h:
3774         * WebView/WebView.mm:
3775         (-[WebView _preferencesChanged:]):
3776
3777 2018-07-30  Simon Fraser  <simon.fraser@apple.com>
3778
3779         Shrink GraphicsLayerCA
3780         https://bugs.webkit.org/show_bug.cgi?id=188141
3781
3782         Reviewed by Zalan Bujtas.
3783
3784         Shrink GraphicsLayerCA from 1040 to 880 bytes by:
3785         * moving all the clone-related stuff into the lazily-allocated m_layerClones
3786         * moving all the animation-related stuff into the lazily-allocated m_animations
3787         * making enums be 8-bit
3788         * re-ordering data members
3789
3790         * WebView/WebView.mm:
3791         (-[WebView _setMediaLayer:forPluginView:]):
3792
3793 2018-07-30  Rob Buis  <rbuis@igalia.com>
3794
3795         Merge PlatformCookieJar functions into NetworkStorageSession
3796         https://bugs.webkit.org/show_bug.cgi?id=188137
3797
3798         Adapt callsites to use NetworkStorageSession instead of CookieJar functions.
3799
3800         Reviewed by Alex Christensen.
3801
3802         * WebCoreSupport/WebPlatformStrategies.mm:
3803         (WebPlatformStrategies::cookiesForDOM):
3804         (WebPlatformStrategies::setCookiesFromDOM):
3805         (WebPlatformStrategies::cookiesEnabled):
3806         (WebPlatformStrategies::cookieRequestHeaderFieldValue):
3807         (WebPlatformStrategies::getRawCookies):
3808         (WebPlatformStrategies::deleteCookie):
3809         * WebView/WebPreferences.mm:
3810         (+[WebPreferences _clearNetworkLoaderSession]):
3811
3812 2018-07-28  Darin Adler  <darin@apple.com>
3813
3814         [Cocoa] Update more WebCore Objective-C code to be ARC compatible
3815         https://bugs.webkit.org/show_bug.cgi?id=188140
3816
3817         Reviewed by Sam Weinig.
3818
3819         * WebView/WebImmediateActionController.mm:
3820         (-[WebImmediateActionController _animationControllerForText]): Updated to use the
3821         new DictionaryLookup function that returns a tuple instead of using an out argument.
3822
3823 2018-07-26  Andy VanWagoner  <andy@vanwagoner.family>
3824
3825         [INTL] Remove INTL sub-feature compile flags
3826         https://bugs.webkit.org/show_bug.cgi?id=188081
3827
3828         Reviewed by Michael Catanzaro.
3829
3830         * Configurations/FeatureDefines.xcconfig:
3831
3832 2018-07-26  Commit Queue  <commit-queue@webkit.org>
3833
3834         Unreviewed, rolling out r234181 and r234189.
3835         https://bugs.webkit.org/show_bug.cgi?id=188075
3836
3837         These are not needed right now (Requested by thorton on
3838         #webkit).
3839
3840         Reverted changesets:
3841
3842         "Enable Web Content Filtering on watchOS"
3843         https://bugs.webkit.org/show_bug.cgi?id=187979
3844         https://trac.webkit.org/changeset/234181
3845
3846         "HAVE(PARENTAL_CONTROLS) should be true on watchOS"
3847         https://bugs.webkit.org/show_bug.cgi?id=187985
3848         https://trac.webkit.org/changeset/234189
3849
3850 2018-07-26  Timothy Hatcher  <timothy@apple.com>
3851
3852         Use the Page's appearance when converting pasteboard attributed strings.
3853         https://bugs.webkit.org/show_bug.cgi?id=188067
3854         rdar://problem/42632246
3855
3856         Reviewed by Wenson Hsieh.
3857
3858         * WebCoreSupport/WebEditorClient.mm:
3859         (_WebCreateFragment): Create a LocalDefaultSystemAppearance based on the Page.
3860
3861 2018-07-25  Chris Dumez  <cdumez@apple.com>
3862
3863         navigator.userAgent may return outdated value after webView.customUserAgent is set
3864         https://bugs.webkit.org/show_bug.cgi?id=188009
3865         <rdar://problem/42566456>
3866
3867         Reviewed by Alex Christensen.
3868
3869         Let the page know when the user agent changes.
3870
3871         * WebView/WebView.mm:
3872         (-[WebView _preferencesChanged:]):
3873         (-[WebView setApplicationNameForUserAgent:]):
3874         (-[WebView _invalidateUserAgentCache]):
3875         (-[WebView setCustomUserAgent:]):
3876         * WebView/WebViewInternal.h:
3877
3878 2018-07-24  Tim Horton  <timothy_horton@apple.com>
3879
3880         Enable Web Content Filtering on watchOS
3881         https://bugs.webkit.org/show_bug.cgi?id=187979
3882         <rdar://problem/42559346>
3883
3884         Reviewed by Wenson Hsieh.
3885
3886         * Configurations/FeatureDefines.xcconfig:
3887
3888 2018-07-20  Ryosuke Niwa  <rniwa@apple.com>
3889
3890         Picking a color from the color panel for typing attributes needs to inverse transform through color-filter
3891         https://bugs.webkit.org/show_bug.cgi?id=187846
3892
3893         Reviewed by Simon Fraser.
3894
3895         Invert the filtered font and background colors when using font panels, font pasteboard, and other Objective-C APIs.
3896
3897         * WebView/WebHTMLView.mm:
3898         (-[WebHTMLView _applyStyleToSelection:withUndoAction:]): Share code with _applyEditingStyleToSelection.
3899         (-[WebHTMLView _applyEditingStyleToSelection:withUndoAction:]):
3900
3901 2018-07-11  Dean Jackson  <dino@apple.com>
3902
3903         Allow removal of white backgrounds
3904         https://bugs.webkit.org/show_bug.cgi?id=187574
3905         <rdar://problem/41146792>
3906
3907         Reviewed by Simon Fraser.
3908
3909         Add a new WebPreference for punching out white backgrounds.
3910
3911         * WebView/WebPreferenceKeysPrivate.h:
3912         * WebView/WebPreferences.mm:
3913         (+[WebPreferences initialize]):
3914         (-[WebPreferences punchOutWhiteBackgroundsInDarkMode]):
3915         (-[WebPreferences setPunchOutWhiteBackgroundsInDarkMode:]):
3916         * WebView/WebPreferencesPrivate.h:
3917         * WebView/WebView.mm:
3918         (-[WebView _preferencesChanged:]):
3919
3920 2018-07-14  Kocsen Chung  <kocsen_chung@apple.com>
3921
3922         Ensure WebKit stack is ad-hoc signed
3923         https://bugs.webkit.org/show_bug.cgi?id=187667
3924
3925         Reviewed by Alexey Proskuryakov.
3926
3927         * Configurations/Base.xcconfig:
3928
3929 2018-07-11  Aditya Keerthi  <akeerthi@apple.com>
3930
3931         REGRESSION (231276): Attempting to copy an image fails
3932         https://bugs.webkit.org/show_bug.cgi?id=187212
3933         <rdar://problem/41540074>
3934
3935         Reviewed by Ryosuke Niwa.
3936
3937         Renamed methods to make it clear that one URL and one title are being passed in.
3938
3939         * WebCoreSupport/WebPlatformStrategies.h:
3940         * WebCoreSupport/WebPlatformStrategies.mm:
3941         (WebPlatformStrategies::setURL):
3942
3943 2018-07-10  Ryosuke Niwa  <rniwa@webkit.org>
3944
3945         Disable cross-origin-window-policy by default
3946         https://bugs.webkit.org/show_bug.cgi?id=187509
3947
3948         Reviewed by Chris Dumez.
3949
3950         * WebView/WebPreferences.mm:
3951         (+[WebPreferences initialize]):
3952
3953 2018-07-09  Timothy Hatcher  <timothy@apple.com>
3954
3955         Semantic colors don't update when accessibility Increase Contrast mode is enabled.
3956         https://bugs.webkit.org/show_bug.cgi?id=187425
3957         rdar://problem/39948240
3958
3959         Reviewed by Tim Horton.
3960
3961         * WebView/WebView.mm:
3962         (-[WebView _commonInitializationWithFrameName:groupName:]): Removed call to
3963         _updateDefaultAppearance, which called setUseDarkAppearance. There is already
3964         a call in this method to setUseDarkAppearance.
3965         (-[WebView _setUseSystemAppearance:]): Just call the page, not setUseDarkAppearance.
3966         (-[WebView viewDidChangeEffectiveAppearance]): Added. This is the proper NSView method to use.
3967         (-[WebView _updateDefaultAppearance]): Deleted.
3968         (-[WebView effectiveAppearanceDidChange]): Deleted. This method is a deprecated name.
3969
3970 2018-07-09  Simon Fraser  <simon.fraser@apple.com>
3971
3972         Shrink various loading-related enums to shrink CachedResource
3973         https://bugs.webkit.org/show_bug.cgi?id=187443
3974
3975         Reviewed by Chris Dumez.
3976
3977         * WebCoreSupport/WebFrameLoaderClient.mm:
3978         (WebFrameLoaderClient::convertMainResourceLoadToDownload):
3979         (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
3980         (WebFrameLoaderClient::assignIdentifierToInitialRequest):
3981         (WebFrameLoaderClient::dispatchWillSendRequest):
3982         (WebFrameLoaderClient::dispatchDecidePolicyForResponse):
3983         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
3984         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
3985         (WebFrameLoaderClient::updateGlobalHistory):
3986         (WebFrameLoaderClient::canHandleRequest const):
3987         * WebView/WebDataSource.mm:
3988         (-[WebDataSource initialRequest]):
3989         (-[WebDataSource request]):
3990
3991 2018-07-09  Commit Queue  <commit-queue@webkit.org>
3992
3993         Unreviewed, rolling out r233612.
3994         https://bugs.webkit.org/show_bug.cgi?id=187475
3995
3996         Revision caused the api test LinkColorWithSystemAppearance to
3997         fail on all systems. (Requested by Truitt on #webkit).
3998
3999         Reverted changeset:
4000
4001         "Semantic colors don't update when accessibility Increase
4002         Contrast mode is enabled."
4003         https://bugs.webkit.org/show_bug.cgi?id=187425
4004         https://trac.webkit.org/changeset/233612
4005
4006 2018-07-06  Timothy Hatcher  <timothy@apple.com>
4007
4008         Semantic colors don't update when accessibility Increase Contrast mode is enabled.
4009         https://bugs.webkit.org/show_bug.cgi?id=187425
4010         rdar://problem/39948240
4011
4012         Reviewed by Tim Horton.
4013
4014         * WebView/WebView.mm:
4015         (-[WebView _commonInitializationWithFrameName:groupName:]): Removed call to
4016         _updateDefaultAppearance, which called setUseDarkAppearance. There is already
4017         a call in this method to setUseDarkAppearance.
4018         (-[WebView _setUseSystemAppearance:]): Just call the page, not setUseDarkAppearance.
4019         (-[WebView viewDidChangeEffectiveAppearance]): Added. This is the proper NSView method to use.
4020         (-[WebView _updateDefaultAppearance]): Deleted.
4021         (-[WebView effectiveAppearanceDidChange]): Deleted. This method is a deprecated name.
4022
4023 2018-07-05  Timothy Hatcher  <timothy@apple.com>
4024
4025         Rename and flip the meaning of defaultAppearance to be useDarkAppearance.
4026         https://bugs.webkit.org/show_bug.cgi?id=187369
4027         rdar://problem/41870420
4028
4029         Reviewed by Tim Horton.
4030
4031         * WebView/WebMediaPlaybackTargetPicker.mm:
4032         (WebMediaPlaybackTargetPicker::showPlaybackTargetPicker):
4033         * WebView/WebView.mm:
4034         (-[WebView _commonInitializationWithFrameName:groupName:]):
4035         (-[WebView _effectiveAppearanceIsDark]):
4036         (-[WebView _updateDefaultAppearance]):
4037         (-[WebView _defaultAppearance]): Deleted.
4038
4039 2018-07-04  Ryosuke Niwa  <rniwa@webkit.org>
4040
4041         Youtube video pages crash after a couple of minutes
4042         https://bugs.webkit.org/show_bug.cgi?id=187316
4043
4044         Reviewed by Antti Koivisto.
4045
4046         * WebView/WebView.mm:
4047         (-[WebView _preferencesChanged:]):
4048
4049 2018-07-04  Tim Horton  <timothy_horton@apple.com>