[WTF] Clean up StringStatics.cpp by using LazyNeverDestroyed<> for Atoms
[WebKit-https.git] / Source / WebKit / mac / ChangeLog
1 2017-07-05  Yusuke Suzuki  <utatane.tea@gmail.com>
2
3         [WTF] Clean up StringStatics.cpp by using LazyNeverDestroyed<> for Atoms
4         https://bugs.webkit.org/show_bug.cgi?id=174150
5
6         Reviewed by Mark Lam.
7
8         * DOM/DOM.mm:
9         (lookupElementClass):
10
11 2017-07-05  Brady Eidson  <beidson@apple.com>
12
13         Allow navigations in subframes to get a ShouldOpenExternalURLsPolicy of "ShouldAllow".
14         <rdar://problem/22485589> and https://bugs.webkit.org/show_bug.cgi?id=174178
15
16         Reviewed by Alex Christensen.
17
18         Adopt to the new constructor for FrameLoadRequest.
19
20         * WebView/WebPDFView.mm:
21         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
22
23 2017-07-05  Ryosuke Niwa  <rniwa@webkit.org>
24
25         Make WebKit's public headers on Mac and iOS C++ module safe
26         https://bugs.webkit.org/show_bug.cgi?id=174175
27
28         Reviewed by Alex Christensen.
29
30         Fixed the header files.
31
32         * Misc/WebDownload.h:
33         * Misc/WebKitErrors.h:
34         * Plugins/WebPluginContainer.h:
35         * WebView/WebResourceLoadDelegate.h:
36
37 2017-07-03  Myles C. Maxfield  <mmaxfield@apple.com>
38
39         Remove copy of ICU headers from WebKit
40         https://bugs.webkit.org/show_bug.cgi?id=116407
41
42         Reviewed by Alex Christensen.
43
44         Use WTF's copy of ICU headers.
45
46         * Configurations/WebKitLegacy.xcconfig:
47         * icu/unicode/localpointer.h: Removed.
48         * icu/unicode/parseerr.h: Removed.
49         * icu/unicode/platform.h: Removed.
50         * icu/unicode/ptypes.h: Removed.
51         * icu/unicode/putil.h: Removed.
52         * icu/unicode/uchar.h: Removed.
53         * icu/unicode/uconfig.h: Removed.
54         * icu/unicode/ucurr.h: Removed.
55         * icu/unicode/uidna.h: Removed.
56         * icu/unicode/uiter.h: Removed.
57         * icu/unicode/umachine.h: Removed.
58         * icu/unicode/unorm.h: Removed.
59         * icu/unicode/unorm2.h: Removed.
60         * icu/unicode/urename.h: Removed.
61         * icu/unicode/uscript.h: Removed.
62         * icu/unicode/ustring.h: Removed.
63         * icu/unicode/utf.h: Removed.
64         * icu/unicode/utf16.h: Removed.
65         * icu/unicode/utf8.h: Removed.
66         * icu/unicode/utf_old.h: Removed.
67         * icu/unicode/utypes.h: Removed.
68         * icu/unicode/uvernum.h: Removed.
69         * icu/unicode/uversion.h: Removed.
70
71 2017-07-05  Jonathan Bedard  <jbedard@apple.com>
72
73         Add WebKitPrivateFrameworkStubs for iOS 11
74         https://bugs.webkit.org/show_bug.cgi?id=173988
75
76         Reviewed by David Kilzer.
77
78         * Configurations/WebKitLegacy.xcconfig: iphoneos and iphonesimulator should
79         use the same directory for private framework stubs.
80
81 2017-07-03  Matt Lewis  <jlewis3@apple.com>
82
83         Unreviewed, rolling out r219103.
84
85         Caused multiple build failures.
86
87         Reverted changeset:
88
89         "Remove copy of ICU headers from WebKit"
90         https://bugs.webkit.org/show_bug.cgi?id=116407
91         http://trac.webkit.org/changeset/219103
92
93 2017-07-03  Myles C. Maxfield  <mmaxfield@apple.com>
94
95         Remove copy of ICU headers from WebKit
96         https://bugs.webkit.org/show_bug.cgi?id=116407
97
98         Reviewed by Alex Christensen.
99
100         Use WTF's copy of ICU headers.
101
102         * Configurations/WebKitLegacy.xcconfig:
103         * icu/unicode/localpointer.h: Removed.
104         * icu/unicode/parseerr.h: Removed.
105         * icu/unicode/platform.h: Removed.
106         * icu/unicode/ptypes.h: Removed.
107         * icu/unicode/putil.h: Removed.
108         * icu/unicode/uchar.h: Removed.
109         * icu/unicode/uconfig.h: Removed.
110         * icu/unicode/ucurr.h: Removed.
111         * icu/unicode/uidna.h: Removed.
112         * icu/unicode/uiter.h: Removed.
113         * icu/unicode/umachine.h: Removed.
114         * icu/unicode/unorm.h: Removed.
115         * icu/unicode/unorm2.h: Removed.
116         * icu/unicode/urename.h: Removed.
117         * icu/unicode/uscript.h: Removed.
118         * icu/unicode/ustring.h: Removed.
119         * icu/unicode/utf.h: Removed.
120         * icu/unicode/utf16.h: Removed.
121         * icu/unicode/utf8.h: Removed.
122         * icu/unicode/utf_old.h: Removed.
123         * icu/unicode/utypes.h: Removed.
124         * icu/unicode/uvernum.h: Removed.
125         * icu/unicode/uversion.h: Removed.
126
127 2017-07-03  Brady Eidson  <beidson@apple.com>
128
129         Switch all WebKit API related to favicons from WebIconDatabase over to new WebCore::IconLoader mechanism.
130         https://bugs.webkit.org/show_bug.cgi?id=174073
131
132         Reviewed by Andy Estes.
133
134         WebView now keeps a direct copy of its main frame icon as a member variable.
135         It populates that variable by finding exactly one Favicon LinkIcon from WebCore and loading it.
136         
137         This change causes a progression in KVO observation of the mainFrameIcon property as we now
138         have both the old icon and new icon at the time it changes.
139
140         * WebCoreSupport/WebFrameLoaderClient.h:
141         * WebCoreSupport/WebFrameLoaderClient.mm:
142         (WebFrameLoaderClient::prepareForDataSourceReplacement):
143         (WebFrameLoaderClient::getLoadDecisionForIcons):
144         (WebFrameLoaderClient::finishedLoadingIcon):
145         (WebFrameLoaderClient::dispatchDidReceiveIcon): Deleted.
146         (WebFrameLoaderClient::registerForIconNotification): Deleted.
147
148         * WebView/WebView.mm:
149         (+[WebView _setIconLoadingEnabled:]):
150         (+[WebView _isIconLoadingEnabled]):
151         (-[WebView mainFrameIcon]):
152         (-[WebView _setMainFrameIcon:]):
153         (-[WebView _receivedIconChangedNotification:]): Deleted.
154         (-[WebView _registerForIconNotification:]): Deleted.
155         (-[WebView _dispatchDidReceiveIconFromWebFrame:]): Deleted.
156         * WebView/WebViewData.h:
157         * WebView/WebViewInternal.h:
158         * WebView/WebViewPrivate.h:
159
160 2017-07-03  Sam Weinig  <sam@webkit.org>
161
162         [WebIDL] Remove more unnecessary uses of the preprocessor in idl files
163         https://bugs.webkit.org/show_bug.cgi?id=174083
164
165         Reviewed by Alex Christensen.
166
167         * Configurations/FeatureDefines.xcconfig:
168         Add ENABLE_NAVIGATOR_STANDALONE.
169
170 2017-07-03  Tim Horton  <timothy_horton@apple.com>
171
172         Expose unobscuredSafeAreaInsets on WebView
173         https://bugs.webkit.org/show_bug.cgi?id=174075
174         <rdar://problem/33096997>
175
176         Reviewed by Beth Dakin.
177
178         * WebView/WebView.mm:
179         (-[WebView _setUnobscuredSafeAreaInsets:]):
180         (-[WebView _unobscuredSafeAreaInsets]):
181         * WebView/WebViewPrivate.h:
182         Expose unobscuredSafeAreaInsets as a new private property on WebView,
183         similar to how it is exposed in WebKit2.
184
185 2017-07-03  Andy Estes  <aestes@apple.com>
186
187         [Xcode] Add an experimental setting to build with ccache
188         https://bugs.webkit.org/show_bug.cgi?id=173875
189
190         Reviewed by Tim Horton.
191
192         * Configurations/DebugRelease.xcconfig: Included ccache.xcconfig.
193
194 2017-07-03  Tim Horton  <timothy_horton@apple.com>
195
196         Expose WebPreferences for viewport-fit and constant() properties
197         https://bugs.webkit.org/show_bug.cgi?id=174072
198         <rdar://problem/33096639>
199
200         Reviewed by Ryosuke Niwa.
201
202         * WebView/WebPreferenceKeysPrivate.h:
203         * WebView/WebPreferences.mm:
204         (-[WebPreferences viewportFitEnabled]):
205         (-[WebPreferences setViewportFitEnabled:]):
206         (-[WebPreferences constantPropertiesEnabled]):
207         (-[WebPreferences setConstantPropertiesEnabled:]):
208         * WebView/WebPreferencesPrivate.h:
209         * WebView/WebView.mm:
210         (-[WebView _preferencesChanged:]):
211
212 2017-07-01  Tim Horton  <timothy_horton@apple.com>
213
214         Expose viewport-fit value to UIKit via viewport arguments dictionary
215         https://bugs.webkit.org/show_bug.cgi?id=174071
216         <rdar://problem/33096620>
217
218         Reviewed by Wenson Hsieh.
219
220         * History/WebHistoryItem.mm:
221         * History/WebHistoryItemPrivate.h:
222         Add another dictionary key and three values.
223
224 2017-07-01  Dan Bernstein  <mitz@apple.com>
225
226         [iOS] Remove code only needed when building for iOS 9.x
227         https://bugs.webkit.org/show_bug.cgi?id=174068
228
229         Reviewed by Tim Horton.
230
231         * Configurations/FeatureDefines.xcconfig:
232
233 2017-07-01  Ryosuke Niwa  <rniwa@webkit.org>
234
235         Frame.h doesn't need to include FrameLoader.h, IntRect.h, and NavigationScheduler.h
236         https://bugs.webkit.org/show_bug.cgi?id=174004
237
238         Reviewed by Simon Fraser.
239
240         * WebCoreSupport/WebPluginInfoProvider.mm:
241
242 2017-07-01  Dan Bernstein  <mitz@apple.com>
243
244         [macOS] Remove code only needed when building for OS X Yosemite
245         https://bugs.webkit.org/show_bug.cgi?id=174067
246
247         Reviewed by Tim Horton.
248
249         * Configurations/Base.xcconfig:
250         * Configurations/DebugRelease.xcconfig:
251         * Configurations/FeatureDefines.xcconfig:
252         * Configurations/Version.xcconfig:
253         * Plugins/WebBasePluginPackage.mm:
254         (-[WebBasePluginPackage getPluginInfoFromPLists]):
255         * WebCoreSupport/PopupMenuMac.mm:
256         (PopupMenuMac::show):
257         * WebCoreSupport/WebInspectorClient.mm:
258         (WebInspectorFrontendClient::startWindowDrag):
259         (-[WebInspectorWindowController window]):
260         * WebView/WebView.mm:
261         (-[WebView _animationControllerForDictionaryLookupPopupInfo:]):
262
263 2017-06-30  Daniel Bates  <dabates@apple.com>
264
265         API::FrameInfo should know the web page that contains the frame; add API property webView to WKFrameInfo
266         https://bugs.webkit.org/show_bug.cgi?id=165160
267         <rdar://problem/29451999>
268
269         Reviewed by Brady Eidson.
270
271         Pass the document that is requesting the load to the loader.
272
273         * WebView/WebPDFView.mm:
274         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
275
276 2017-06-29  Jer Noble  <jer.noble@apple.com>
277
278         Make Legacy EME API controlled by RuntimeEnabled setting.
279         https://bugs.webkit.org/show_bug.cgi?id=173994
280
281         Reviewed by Sam Weinig.
282
283         Add a new preference used to control WebCore's new RuntimeEnabledFeature setting.
284
285         * Configurations/FeatureDefines.xcconfig:
286         * WebView/WebPreferenceKeysPrivate.h:
287         * WebView/WebPreferences.mm:
288         (+[WebPreferences initialize]):
289         (-[WebPreferences legacyEncryptedMediaAPIEnabled]):
290         (-[WebPreferences setLegacyEncryptedMediaAPIEnabled:]):
291         * WebView/WebPreferencesPrivate.h:
292         * WebView/WebView.mm:
293         (-[WebView _preferencesChanged:]):
294
295 2017-06-30  Chris Dumez  <cdumez@apple.com>
296
297         ResourceLoadObserver does not need a ResourceLoadStatisticsStore
298         https://bugs.webkit.org/show_bug.cgi?id=174013
299
300         Reviewed by Brent Fulgham.
301
302         ResourceLoadObserver does not need a ResourceLoadStatisticsStore. ResourceLoadStatisticsStore is too complicated for its needs.
303         ResourceLoadStatisticsStore can then be moved to WebKit2/UIProcess in a follow-up.
304
305         * WebView/WebView.mm:
306         (-[WebView _commonInitializationWithFrameName:groupName:]):
307
308 2017-06-30  Wenson Hsieh  <wenson_hsieh@apple.com>
309
310         [iOS DnD] Drag caret rect is incorrectly computed when dropping in editable content in iframes
311         https://bugs.webkit.org/show_bug.cgi?id=174017
312         <rdar://problem/32959782>
313
314         Reviewed by Simon Fraser.
315
316         Use root view coordinates when computing the drag caret rect.
317
318         * WebView/WebView.mm:
319         (-[WebView _dataInteractionCaretRect]):
320
321 2017-06-28  Simon Fraser  <simon.fraser@apple.com>
322
323         Mark the GraphicsContext as accelerated when the WebHTMLView's layer is drawing asynchronously
324         https://bugs.webkit.org/show_bug.cgi?id=173899
325         rdar://problem/32994474
326
327         Reviewed by Tim Horton.
328
329         When the WebHTMLView is layer-backed, and -drawsAsynchronously on its layer is YES,
330         then mark the GraphicsContext that WebCore is using for drawing as accelerated, so
331         that ImageBuffer::createCompatibleBuffer() creates appropriately matched buffers.
332
333         Also clean up WebFrame a little, sharing code that checks whether the WebFrame's
334         documentView is a WebHTMLView.
335
336         * WebView/WebFrame.mm:
337         (-[WebFrame _webHTMLDocumentView]):
338         (-[WebFrame _paintBehaviorForDestinationContext:]):
339         (-[WebFrame _drawRect:contentsOnly:]):
340         (-[WebFrame setTimeoutsPaused:]):
341         (-[WebFrame prepareForPause]):
342         (-[WebFrame resumeFromPause]):
343         (-[WebFrame resetTextAutosizingBeforeLayout]):
344         * WebView/WebHTMLView.mm:
345         (-[WebHTMLView drawLayer:inContext:]):
346         (-[WebHTMLView _web_isDrawingIntoAcceleratedLayer]):
347         * WebView/WebHTMLViewInternal.h:
348
349 2017-06-27  Wenson Hsieh  <wenson_hsieh@apple.com>
350
351         [iOS DnD] Support dragging out of contenteditable areas without a prior selection
352         https://bugs.webkit.org/show_bug.cgi?id=173854
353         <rdar://problem/32236827>
354
355         Reviewed by Ryosuke Niwa and Tim Horton.
356
357         Vends some information from the DragItem passed into -[WebView _startDrag:] through the WebView as SPI for
358         WebKit1 clients. No behavior change with these changes alone -- see <rdar://problem/32991062> for more detail.
359
360         * WebView/WebView.mm:
361         (-[WebView _startDrag:]):
362         (-[WebView _dragSourceAction]):
363         (-[WebView _draggedLinkTitle]):
364         (-[WebView _draggedLinkURL]):
365         (-[WebView _draggedElementBounds]):
366         (-[WebView _endedDataInteraction:global:]):
367         * WebView/WebViewData.h:
368         * WebView/WebViewPrivate.h:
369
370 2017-06-26  Wenson Hsieh  <wenson_hsieh@apple.com>
371
372         Refactor drag start codepaths to plumb a DragItem to client layers
373         https://bugs.webkit.org/show_bug.cgi?id=173832
374         Work towards <rdar://problem/32236827>
375
376         Reviewed by Ryosuke Niwa and Tim Horton.
377
378         Refactor code used to start a drag in WebKit1 to plumb a single DragItem from DragController to the client layer
379         in WebDragClient that contains all the information needed to begin a drag. Also renames _setDataInteractionData:
380         to _startDrag: to match logic used to start a drag on other platforms.
381
382         No behavior change -- the same information should be propagated to AppKit and UIKit when beginning a drag, only
383         through the DragItem struct.
384
385         * WebCoreSupport/WebDragClient.h:
386         * WebCoreSupport/WebDragClient.mm:
387         (WebDragClient::startDrag):
388         (WebDragClient::dragSourceActionMaskForPoint):
389         (WebDragClient::willPerformDragSourceAction):
390         (WebDragClient::beginDrag):
391         * WebView/WebView.mm:
392         (-[WebView _startDrag:]):
393         (-[WebView _setDataInteractionData:textIndicator:atClientPosition:anchorPoint:action:]): Deleted.
394         * WebView/WebViewInternal.h:
395
396 2017-06-25  Konstantin Tokarev  <annulen@yandex.ru>
397
398         Remove excessive headers from JavaScriptCore
399         https://bugs.webkit.org/show_bug.cgi?id=173812
400
401         Reviewed by Darin Adler.
402
403         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
404         * WebView/WebView.mm:
405
406 2017-06-23  Tim Horton  <timothy_horton@apple.com>
407
408         Remove an unused typedef from WebFrameLoaderClient
409         https://bugs.webkit.org/show_bug.cgi?id=173795
410
411         Reviewed by Simon Fraser.
412
413         * WebCoreSupport/WebFrameLoaderClient.h:
414         This unused typedef in the global namespace conflicts with one in a macOS system header.
415         Also... it's unused.
416         Remove it.
417
418 2017-06-23  Konstantin Tokarev  <annulen@yandex.ru>
419
420         Remove excessive headers from WebCore/{bindings,css,dom}
421         https://bugs.webkit.org/show_bug.cgi?id=173766
422
423         Reviewed by Simon Fraser.
424
425         * DOM/DOMInternal.mm:
426
427 2017-06-22  Daniel Bates  <dabates@apple.com>
428
429         Make FrameLoadRequest a move-only type
430         https://bugs.webkit.org/show_bug.cgi?id=173682
431
432         Reviewed by Alex Christensen and Darin Adler.
433
434         A FrameLoadRequest groups together the information to perform a load into a single object
435         that is more manageable to pass around than its constituent parts. Code that receives a
436         FrameLoadRequest is expected to extract out the information it needs to complete its task.
437         And it does not make sense to re-use the same FrameLoadRequest object for more than one
438         load. Therefore, it is sufficient to make FrameLoadRequest a move-only type.
439
440         * Plugins/WebPluginController.mm:
441         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
442         * WebView/WebPDFView.mm:
443         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
444
445 2017-06-21  Antoine Quint  <graouts@apple.com>
446
447         Ensure DRT always logs rAF suspension debugging code
448         https://bugs.webkit.org/show_bug.cgi?id=173681
449
450         Reviewed by Tim "Mr. T" Horton.
451
452         * WebView/WebPreferenceKeysPrivate.h:
453         * WebView/WebPreferences.mm:
454         (+[WebPreferences initialize]):
455         (-[WebPreferences shouldLogScriptedAnimationControllerSuspensionChange]): Deleted.
456         (-[WebPreferences setShouldLogScriptedAnimationControllerSuspensionChange:]): Deleted.
457         * WebView/WebPreferencesPrivate.h:
458         * WebView/WebView.mm:
459         (-[WebView _preferencesChanged:]):
460
461 2017-06-21  Daniel Bates  <dabates@apple.com>
462
463         Cleanup FrameLoadRequest
464         https://bugs.webkit.org/show_bug.cgi?id=173564
465         <rdar://problem/32903570>
466
467         Reviewed by Brent Fulgham.
468
469         * WebView/WebPDFView.mm:
470         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Move FrameLoadRequest instantiation
471         into a local variable and use C++11 brace initialization syntax to make it easier to identify
472         the arguments passed to FrameLoader::loadFrameRequest().
473
474 2017-06-21  Antoine Quint  <graouts@apple.com>
475
476         Add logging to identify when the Page suspends scripted animations
477         https://bugs.webkit.org/show_bug.cgi?id=173626
478
479         Reviewed by Tim Horton.
480
481         Add a new preference to control the new shouldLogScriptedAnimationControllerSuspensionChange settings
482         through WebKit. This is specific to WK1 since the issue we're trying to pinpoint only occurs on WK1 bots.
483
484         * WebView/WebPreferenceKeysPrivate.h:
485         * WebView/WebPreferences.mm:
486         (+[WebPreferences initialize]):
487         (-[WebPreferences shouldLogScriptedAnimationControllerSuspensionChange]):
488         (-[WebPreferences setShouldLogScriptedAnimationControllerSuspensionChange:]):
489         * WebView/WebPreferencesPrivate.h:
490         * WebView/WebView.mm:
491         (-[WebView _preferencesChanged:]):
492
493 2017-06-20  Myles C. Maxfield  <mmaxfield@apple.com>
494
495         Disable font variations on macOS Sierra and iOS 10
496         https://bugs.webkit.org/show_bug.cgi?id=173618
497         <rdar://problem/32879164>
498
499         Reviewed by Jon Lee.
500
501         * Configurations/FeatureDefines.xcconfig:
502
503 2017-06-20  Daniel Bates  <dabates@apple.com>
504
505         Have FrameLoadRequest takes a Frame& instead of a Frame*
506         https://bugs.webkit.org/show_bug.cgi?id=173614
507         <rdar://problem/32884890>
508
509         Reviewed by Brent Fulgham.
510
511         * Plugins/WebPluginController.mm:
512         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
513         * WebView/WebFrame.mm:
514         (-[WebFrame loadRequest:]):
515         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
516
517 2017-06-19  Frederic Wang  <fwang@igalia.com>
518
519         [Mac] Add an experimental feature setting for async frame scrolling
520         https://bugs.webkit.org/show_bug.cgi?id=173359
521
522         Reviewed by Simon Fraser.
523
524         * WebView/WebPreferenceKeysPrivate.h: Declare key for async frame scrolling preference.
525         * WebView/WebPreferences.mm:
526         (+[WebPreferences initialize]): Initialize async frame scrolling preference to false.
527         (-[WebPreferences asyncFrameScrollingEnabled]): Define getter for async frame scrolling.
528         (-[WebPreferences setAsyncFrameScrollingEnabled:]): Define setter for async frame scrolling.
529         * WebView/WebPreferencesPrivate.h: Declare setter and getter.
530         * WebView/WebView.mm:
531         (-[WebView _preferencesChanged:]): Take into account preference update for async frame
532         scrolling.
533
534 2017-06-19  Chris Dumez  <cdumez@apple.com>
535
536         Use WTF::Function instead of std::function in more places in WebCore/
537         https://bugs.webkit.org/show_bug.cgi?id=173535
538
539         Reviewed by Antti Koivisto.
540
541         Use WTF::Function instead of std::function in more places in WebCore/ to avoid copying.
542
543         * WebCoreSupport/WebFrameLoaderClient.h:
544         * WebCoreSupport/WebFrameLoaderClient.mm:
545         (WebFrameLoaderClient::dispatchDecidePolicyForResponse):
546         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
547         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
548         (WebFrameLoaderClient::dispatchWillSubmitForm):
549         (WebFrameLoaderClient::setUpPolicyListener):
550         (-[WebFramePolicyListener initWithFrame:policyFunction:]):
551         (-[WebFramePolicyListener initWithFrame:policyFunction:appLinkURL:]):
552
553 2017-05-14 Frederic Wang  <fwang@igalia.com>
554
555         Add heuristic to avoid flattening "fullscreen" iframes
556         https://bugs.webkit.org/show_bug.cgi?id=171914
557
558         Reviewed by Simon Fraser.
559
560         This commit adjusts the mac/ios preference interface to treat frame flattening as an enum.
561
562         * WebView/WebPreferenceKeysPrivate.h: Rename the key.
563         * WebView/WebPreferences.mm:
564         (+[WebPreferences initialize]): Handle frame flattening as an enum.
565         (-[WebPreferences isFrameFlatteningEnabled]): Ditto.
566         (-[WebPreferences setFrameFlatteningEnabled:]): Ditto.
567         (-[WebPreferences frameFlattening]): New function to get frame flattening as an enum.
568         (-[WebPreferences setFrameFlattening:]): New function to set frame flattening as an enum.
569         * WebView/WebPreferencesPrivate.h: Ditto.
570         * WebView/WebView.mm:
571         (-[WebView _preferencesChanged:]): Ditto.
572         * WebView/WebPreferencesPrivate.h: Add new enum definition.
573
574 2017-06-17  Chris Dumez  <cdumez@apple.com>
575
576         Use WTF::Function instead of std::function in WebKit2/
577         https://bugs.webkit.org/show_bug.cgi?id=173504
578
579         Reviewed by Darin Adler.
580
581         Use WTF::Function instead of std::function in WebKit2/ to avoid
582         unnecessary copying.
583
584         * Plugins/Hosted/HostedNetscapePluginStream.h:
585         * Plugins/Hosted/HostedNetscapePluginStream.mm:
586         (WebKit::HostedNetscapePluginStream::willSendRequest):
587         * Plugins/WebNetscapePluginStream.h:
588         * Plugins/WebNetscapePluginStream.mm:
589         (WebNetscapePluginStream::willSendRequest):
590         * WebCoreSupport/WebPaymentCoordinatorClient.h:
591         * WebCoreSupport/WebPaymentCoordinatorClient.mm:
592         (WebPaymentCoordinatorClient::canMakePaymentsWithActiveCard):
593         (WebPaymentCoordinatorClient::openPaymentSetup):
594
595 2017-06-16  Sam Weinig  <sam@webkit.org>
596
597         [WebIDL] Remove custom bindings for HTMLDocument
598         https://bugs.webkit.org/show_bug.cgi?id=173444
599
600         Reviewed by Darin Adler.
601
602         * DOM/DOMHTMLDocument.mm:
603         (-[DOMHTMLDocument linkColor]):
604         (-[DOMHTMLDocument setLinkColor:]):
605         (-[DOMHTMLDocument write:]):
606         (-[DOMHTMLDocument writeln:]):
607         Update for new signature of write/writeln and rename of linkColor to linkColorForBindings.
608
609 2017-06-16  Wenson Hsieh  <wenson_hsieh@apple.com>
610
611         [iOS DnD] Upstream iOS drag and drop implementation into OpenSource WebKit
612         https://bugs.webkit.org/show_bug.cgi?id=173366
613         <rdar://problem/32767014>
614
615         Reviewed by Tim Horton.
616
617         Move pieces of iOS WebKit1 drag and drop implementation into OpenSource. No change in behavior.
618
619         * Configurations/FeatureDefines.xcconfig:
620         * WebCoreSupport/WebDragClient.mm:
621         (WebDragClient::useLegacyDragClient):
622         (WebDragClient::willPerformDragDestinationAction):
623         (WebDragClient::dragSourceActionMaskForPoint):
624         (WebDragClient::willPerformDragSourceAction):
625         (WebDragClient::startDrag):
626         (WebDragClient::beginDrag):
627         (WebDragClient::declareAndWriteDragImage):
628         (WebDragClient::declareAndWriteAttachment):
629         (WebDragClient::didConcludeEditDrag):
630         * WebView/WebView.mm:
631         (-[WebView _setDataInteractionData:textIndicator:atClientPosition:anchorPoint:action:]):
632         (-[WebView _getDataInteractionData]):
633         (-[WebView dragDataForSession:client:global:operation:]):
634         (-[WebView _enteredDataInteraction:client:global:operation:]):
635         (-[WebView _updatedDataInteraction:client:global:operation:]):
636         (-[WebView _exitedDataInteraction:client:global:operation:]):
637         (-[WebView _performDataInteraction:client:global:operation:]):
638         (-[WebView _tryToPerformDataInteraction:client:global:operation:]):
639         (-[WebView _endedDataInteraction:global:]):
640         (-[WebView _didConcludeEditDataInteraction]):
641         (floatRectsForCGRectArray): Deleted.
642         (-[WebView _createImageWithPlatterForImage:boundingRect:contentScaleFactor:clippingRects:]): Deleted.
643         * WebView/WebViewData.h:
644         * WebView/WebViewData.mm:
645         (-[WebViewPrivate dealloc]):
646         * WebView/WebViewPrivate.h:
647
648 2017-06-15  Wenson Hsieh  <wenson_hsieh@apple.com>
649
650         [iOS DnD] [WK1] Dropping links onto UIWebViews should not trigger navigation by default
651         https://bugs.webkit.org/show_bug.cgi?id=173454
652         <rdar://problem/31720671>
653
654         Reviewed by Tim Horton.
655
656         Adds -webView:dragDestinationActionMaskForSession: as SPI to WebUIDelegate.
657         If unimplemented, the default UI delegate allows all actions except for URL loading.
658
659         * DefaultDelegates/WebDefaultUIDelegate.mm:
660         (-[WebDefaultUIDelegate webView:dragDestinationActionMaskForSession:]):
661         * WebView/WebUIDelegatePrivate.h:
662         * WebView/WebView.mm:
663         (-[WebView dragDestinationActionMaskForSession:]):
664
665 2017-06-15  Wenson Hsieh  <wenson_hsieh@apple.com>
666
667         Using -[WebItemProviderPasteboard setItemProviders:] to swap out item providers before a drop breaks item provider loading
668         https://bugs.webkit.org/show_bug.cgi?id=173338
669         <rdar://problem/32777720>
670
671         Reviewed by Tim Horton.
672
673         Rename updatePreferredTypeIdentifiers to updateSupportedTypeIdentifiers.
674
675         * WebCoreSupport/WebPlatformStrategies.h:
676         * WebCoreSupport/WebPlatformStrategies.mm:
677         (WebPlatformStrategies::updateSupportedTypeIdentifiers):
678         (WebPlatformStrategies::updatePreferredTypeIdentifiers): Deleted.
679
680 2017-06-13  Daniel Bates  <dabates@apple.com>
681
682         Implement W3C Secure Contexts Draft Specification
683         https://bugs.webkit.org/show_bug.cgi?id=158121
684         <rdar://problem/26012994>
685
686         Reviewed by Brent Fulgham.
687
688         Part 4
689
690         Adds a preference to toggle the runtime enabled feature flag isSecureContextAttributeEnabled.
691
692         * WebView/WebPreferenceKeysPrivate.h:
693         * WebView/WebPreferences.mm:
694         (+[WebPreferences initialize]):
695         (-[WebPreferences isSecureContextAttributeEnabled]):
696         (-[WebPreferences setIsSecureContextAttributeEnabled:]):
697         * WebView/WebPreferencesPrivate.h:
698         * WebView/WebView.mm:
699         (-[WebView _preferencesChanged:]):
700
701 2017-06-13  Sam Weinig  <sam@webkit.org>
702
703         Rename JSDOMWindowShell to JSDOMWindowProxy to match the HTML5 spec.
704         https://bugs.webkit.org/show_bug.cgi?id=80733
705
706         Reviewed by Chris Dumez.
707
708         * DOM/DOMUtility.mm:
709         (createDOMWrapper):
710         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
711         (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
712         * WebView/WebFrame.mm:
713         (-[WebFrame _attachScriptDebugger]):
714         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
715
716 2017-06-12  Jiewen Tan  <jiewen_tan@apple.com>
717
718         [WebCrypto] Remove experimental feature flag of SubtleCrypto
719         https://bugs.webkit.org/show_bug.cgi?id=173197
720         <rdar://problem/32688148>
721
722         Reviewed by Brent Fulgham.
723
724         * WebView/WebPreferences.mm:
725         (+[WebPreferences initialize]):
726         (-[WebPreferences subtleCryptoEnabled]): Deleted.
727         (-[WebPreferences setSubtleCryptoEnabled:]): Deleted.
728         * WebView/WebPreferencesPrivate.h:
729         * WebView/WebView.mm:
730         (-[WebView _preferencesChanged:]):
731
732 2017-06-10  Dan Bernstein  <mitz@apple.com>
733
734         Reverted r218056 because it made the IDE reindex constantly.
735
736         * Configurations/DebugRelease.xcconfig:
737
738 2017-06-10  Dan Bernstein  <mitz@apple.com>
739
740         [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
741         https://bugs.webkit.org/show_bug.cgi?id=173223
742
743         Reviewed by Sam Weinig.
744
745         The rebuilds were happening due to a difference in the compiler options that the IDE and
746         xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
747         xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
748         specify an appropriate path in CLANG_INDEX_STORE_PATH.
749
750         * Configurations/DebugRelease.xcconfig:
751
752 2017-06-09  Wenson Hsieh  <wenson_hsieh@apple.com>
753
754         [iOS DnD] Add a hook to perform two-step drops in editable content
755         https://bugs.webkit.org/show_bug.cgi?id=172992
756         <rdar://problem/32590174>
757
758         Reviewed by Tim Horton.
759
760         Adds a new SPI to WebUIKitDelegate to allow WK1 clients to override default drop behavior. Returning YES from
761         -performTwoStepDrop:atDestination:isMove: will prevent content from being inserted on drop in WebKit; otherwise,
762         returning NO will continue with default WebKit behavior.
763
764         * WebCoreSupport/WebEditorClient.h:
765         * WebCoreSupport/WebEditorClient.mm:
766         (WebEditorClient::performTwoStepDrop):
767
768 2017-06-08  Jer Noble  <jer.noble@apple.com>
769
770         Clients of the WK2 C-API don't have their mediaContentTypesRequiringHardwareSupport setting initialized correctly.
771         https://bugs.webkit.org/show_bug.cgi?id=173091
772
773         Reviewed by Eric Carlson.
774
775         * WebView/WebPreferences.mm:
776         (+[WebPreferences initialize]):
777
778 2017-06-07  Jer Noble  <jer.noble@apple.com>
779
780         Clean-up: RenderElement.h includes headers it doesn't use
781         https://bugs.webkit.org/show_bug.cgi?id=173046
782
783         Reviewed by Andy Estes.
784
785         * WebView/WebImmediateActionController.mm:
786
787 2017-06-07  Zalan Bujtas  <zalan@apple.com>
788
789         [iOS WK1 WebThread] Do not call out to the main thread for device orientation.
790         https://bugs.webkit.org/show_bug.cgi?id=173044
791         <rdar://problem/32449338>
792
793         Reviewed by Tim Horton.
794
795         Cache the current device orientation so that we don't have to lift the WebThread lock
796         to collect it.
797
798         * WebView/WebFrame.mm:
799         (-[WebFrame deviceOrientationChanged]):
800         * WebView/WebView.mm:
801         (-[WebView _commonInitializationWithFrameName:groupName:]):
802         (-[WebView _setDeviceOrientation:]):
803         (-[WebView _deviceOrientation]):
804         * WebView/WebViewData.h:
805         * WebView/WebViewInternal.h:
806
807 2017-06-06  Jer Noble  <jer.noble@apple.com>
808
809         [Cocoa] Set defaults for mediaContentTypesRequiringHardwareSupport setting
810         https://bugs.webkit.org/show_bug.cgi?id=173008
811
812         Reviewed by Eric Carlson.
813
814         Add a private preference (with default) for the mediaContentTypesRequiringHardwareSupport WebCore setting.
815
816         * WebView/WebPreferenceKeysPrivate.h:
817         * WebView/WebPreferences.mm:
818         (+[WebPreferences initialize]):
819         (-[WebPreferences mediaUserGestureInheritsFromDocument]):
820         (-[WebPreferences setMediaUserGestureInheritsFromDocument:]):
821         * WebView/WebPreferencesPrivate.h:
822         * WebView/WebView.mm:
823         (-[WebView _preferencesChanged:]):
824
825 2017-06-06  Youenn Fablet  <youenn@apple.com>
826
827         Add an option to disable getUserMedia prompt in case of mock capture sources
828         https://bugs.webkit.org/show_bug.cgi?id=172981
829         <rdar://problem/32580325>
830
831         Reviewed by Eric Carlson.
832
833         Defining the option, getter and setter.
834
835         * WebView/WebPreferences.mm:
836         (+[WebPreferences initialize]):
837         (-[WebPreferences mockCaptureDevicesPromptEnabled]):
838         (-[WebPreferences setMockCaptureDevicesPromptEnabled:]):
839         * WebView/WebPreferencesPrivate.h:
840
841 2017-06-05  Dan Bernstein  <mitz@apple.com>
842
843         Tried to fix the build when targrting macOS 10.12 using the macOS 10.13 developer beta SDK.
844
845         * WebView/WebView.mm:
846         (-[WebView updateMediaTouchBar]):
847         * WebView/WebViewData.h:
848
849 2017-06-03  Darin Adler  <darin@apple.com>
850
851         Streamline handling of attributes, using references as much as possible
852         https://bugs.webkit.org/show_bug.cgi?id=172899
853
854         Reviewed by Chris Dumez.
855
856         * WebView/WebHTMLRepresentation.mm:
857         (matchLabelsAgainstElement): Added handling of nullptr since nothing guarantees the
858         passed in element can't be null. Removed unnecessary conversion from NSString to String
859         and then back to NSString.
860
861 2017-06-01  Andy Estes  <aestes@apple.com>
862
863         REGRESSION (r217626): ENABLE_APPLE_PAY_SESSION_V3 was disabled by mistake
864         https://bugs.webkit.org/show_bug.cgi?id=172828
865
866         Reviewed by Beth Dakin.
867
868         * Configurations/FeatureDefines.xcconfig:
869
870 2017-05-31  Andy Estes  <aestes@apple.com>
871
872         Rename ENABLE_APPLE_PAY_DELEGATE to ENABLE_APPLE_PAY_SESSION_V3 and bump the supported version number
873         https://bugs.webkit.org/show_bug.cgi?id=172366
874
875         Reviewed by Daniel Bates.
876
877         * Configurations/FeatureDefines.xcconfig:
878
879 2017-05-30  Ryosuke Niwa  <rniwa@webkit.org>
880
881         Only include DataDetectorsUI headers in iOS
882         https://bugs.webkit.org/show_bug.cgi?id=172633
883
884         Reviewed by David Kilzer.
885
886         Enable data detectors only on iOS and not other variants of iOS.
887
888         * WebCoreSupport/WebFrameLoaderClient.mm:
889
890 2017-05-30  Alex Christensen  <achristensen@webkit.org>
891
892         Update libwebrtc configuration
893         https://bugs.webkit.org/show_bug.cgi?id=172727
894
895         Reviewed by Geoffrey Garen.
896
897         * Configurations/FeatureDefines.xcconfig:
898
899 2017-05-28  Dan Bernstein  <mitz@apple.com>
900
901         [Xcode] ALWAYS_SEARCH_USER_PATHS is set to YES
902         https://bugs.webkit.org/show_bug.cgi?id=172691
903
904         Reviewed by Tim Horton.
905
906         * Configurations/Base.xcconfig: Set ALWAYS_SEARCH_USER_PATHS to NO.
907
908 2017-05-26  Brent Fulgham  <bfulgham@apple.com>
909
910         [WK2] Address thread safety issues with ResourceLoadStatistics
911         https://bugs.webkit.org/show_bug.cgi?id=172519
912         <rdar://problem/31707642>
913
914         Reviewed by Chris Dumez.
915
916         Create a new WorkQueue for the ResourceLoadStatistics store to use for processing data.
917
918         * WebView/WebView.mm:
919         (WebKitInitializeApplicationStatisticsStoragePathIfNecessary): Pass WorkQueue to the observer.
920
921 2017-05-25  Myles C. Maxfield  <mmaxfield@apple.com>
922
923         [WK1] iframes in layer-backed NSViews are not cleared between successive draws
924         https://bugs.webkit.org/show_bug.cgi?id=172554
925         <rdar://problem/31247133>
926
927         Reviewed by Simon Fraser.
928
929         Update an overridden internal AppKit function to the new signature.
930
931         * WebView/WebHTMLView.mm:
932         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:shouldChangeFontReferenceColor:_recursive:displayRectIgnoringOpacity:inContext:topView:]):
933         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:shouldChangeFontReferenceColor:_recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]):
934         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inContext:topView:]): Deleted.
935         (-[WebHTMLView _recursive:displayRectIgnoringOpacity:inGraphicsContext:CGContext:topView:shouldChangeFontReferenceColor:]): Deleted.
936
937 2017-05-24  Jer Noble  <jer.noble@apple.com>
938
939         Rename DisplaySleepDisabler -> SleepDisabler
940         https://bugs.webkit.org/show_bug.cgi?id=172478
941
942         Reviewed by Sam Weinig.
943
944         * WebView/WebFullScreenController.h:
945
946 2017-05-23  Simon Fraser  <simon.fraser@apple.com>
947
948         Stop consulting -viewsNeedDisplay when doing layer flushing in WebKit1
949         https://bugs.webkit.org/show_bug.cgi?id=172522
950         rdar://problem/31071812
951
952         Reviewed by Tim Horton.
953
954         There's no need to consult -[NSWindow viewsNeedDisplay] on newer OSes. It was
955         added in r58623, and modified in r61204 for Carbon apps, but with more recent AppKit
956         versions this synchronization is no longer required.
957
958         * WebView/WebView.mm:
959         (LayerFlushController::flushLayers):
960
961 2017-05-22  Simon Fraser  <simon.fraser@apple.com>
962
963         Snapshotting via -renderInContext: should do synchronous image decodes
964         https://bugs.webkit.org/show_bug.cgi?id=172485
965         rdar://problem/32276146
966
967         Reviewed by Tim Horton.
968
969         Remove the _setIncludesFlattenedCompositingLayersWhenDrawingToBitmap: SPI that no longer
970         has any callers.
971
972         * Plugins/WebBaseNetscapePluginView.h:
973         * Plugins/WebBaseNetscapePluginView.mm:
974         (-[WebBaseNetscapePluginView inFlatteningPaint]): Deleted.
975         * WebView/WebFrame.mm:
976         (-[WebFrame _paintBehaviorForDestinationContext:]):
977         (-[WebFrame _drawRect:contentsOnly:]):
978         (-[WebFrame _shouldFlattenCompositingLayers:]): Deleted.
979         * WebView/WebHTMLView.mm:
980         (imageFromRect):
981         * WebView/WebView.mm:
982         (-[WebView _commonInitializationWithFrameName:groupName:]):
983         (-[WebView _setIncludesFlattenedCompositingLayersWhenDrawingToBitmap:]): Deleted.
984         (-[WebView _includesFlattenedCompositingLayersWhenDrawingToBitmap]): Deleted.
985         * WebView/WebViewData.h:
986         * WebView/WebViewPrivate.h:
987
988 2017-05-23  Myles C. Maxfield  <mmaxfield@apple.com>
989
990         Remove dead ENABLE(FONT_LOAD_EVENTS) code
991         https://bugs.webkit.org/show_bug.cgi?id=172517
992
993         Rubber-stamped by Simon Fraser.
994
995         * Configurations/FeatureDefines.xcconfig:
996
997 2017-05-23  Emilio Cobos Álvarez  <ecobos@igalia.com>
998
999         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
1000         https://bugs.webkit.org/show_bug.cgi?id=171984
1001
1002         Reviewed by Antti Koivisto.
1003
1004         * WebView/WebPreferenceKeysPrivate.h:
1005         * WebView/WebPreferences.mm:
1006         (+[WebPreferences initialize]):
1007         (-[WebPreferences displayContentsEnabled]):
1008         (-[WebPreferences setDisplayContentsEnabled:]):
1009         * WebView/WebPreferencesPrivate.h:
1010         * WebView/WebView.mm:
1011         (-[WebView _preferencesChanged:]):
1012
1013 2017-05-22  Youenn Fablet  <youenn@apple.com>
1014
1015         Remove AVAudioCaptureSource
1016         https://bugs.webkit.org/show_bug.cgi?id=172360
1017
1018         Reviewed by Sam Weinig.
1019
1020         Removing the handling of AVAudio/CoreAudio capture source dynamic switch.
1021
1022         * WebView/WebPreferenceKeysPrivate.h:
1023         * WebView/WebPreferences.mm:
1024         (+[WebPreferences initialize]):
1025         (-[WebPreferences useAVFoundationAudioCapture]): Deleted.
1026         (-[WebPreferences setUseAVFoundationAudioCapture:]): Deleted.
1027         * WebView/WebPreferencesPrivate.h:
1028         * WebView/WebView.mm:
1029         (-[WebView _preferencesChanged:]):
1030
1031 2017-05-22  Sam Weinig  <sam@webkit.org>
1032
1033         [WebIDL] Support callbacks with arbitrary return types
1034         https://bugs.webkit.org/show_bug.cgi?id=172407
1035
1036         Reviewed by Chris Dumez.
1037
1038         * DOM/DOM.mm:
1039         (-[DOMNodeFilter acceptNode:]):
1040         Update for CallbackResult adoption in the base class.
1041
1042         * DOM/DOMNodeIterator.mm:
1043         * DOM/DOMTreeWalker.mm:
1044         Update to account for new WebCore implementation return types. We return nil
1045         if there was an exception, since retains the existing behavior if a javascript
1046         NodeFilter had been used (an exception would cause all nodes to be rejected,
1047         thus returning nullptr).
1048
1049         * DOM/ObjCNodeFilterCondition.h:
1050         * DOM/ObjCNodeFilterCondition.mm:
1051         Update to match new interface of NodeFilterCondition.
1052
1053 2017-05-18  Sam Weinig  <sam@webkit.org>
1054
1055         [WebIDL] Remove the need for the generator to know about native type mapping
1056         https://bugs.webkit.org/show_bug.cgi?id=172310
1057
1058         Reviewed by Darin Adler.
1059
1060         * DOM/DOM.mm:
1061         (-[DOMNodeFilter acceptNode:]):
1062         Update to pass Node by reference.
1063
1064 2017-05-19  Yusuke Suzuki  <utatane.tea@gmail.com>
1065
1066         [JSC][DFG][DOMJIT] Extend CheckDOM to CheckSubClass
1067         https://bugs.webkit.org/show_bug.cgi?id=172098
1068
1069         Reviewed by Saam Barati.
1070
1071         * Plugins/Hosted/ProxyInstance.mm:
1072         * Plugins/Hosted/ProxyRuntimeObject.mm:
1073
1074 2017-05-18  Andy Estes  <aestes@apple.com>
1075
1076         ENABLE(APPLE_PAY_DELEGATE) should be NO on macOS Sierra and earlier
1077         https://bugs.webkit.org/show_bug.cgi?id=172305
1078
1079         Reviewed by Anders Carlsson.
1080
1081         * Configurations/FeatureDefines.xcconfig:
1082
1083 2017-05-18  Commit Queue  <commit-queue@webkit.org>
1084
1085         Unreviewed, rolling out r217031, r217032, and r217037.
1086         https://bugs.webkit.org/show_bug.cgi?id=172293
1087
1088         cause linking errors in Windows (Requested by yusukesuzuki on
1089         #webkit).
1090
1091         Reverted changesets:
1092
1093         "[JSC][DFG][DOMJIT] Extend CheckDOM to CheckSubClass"
1094         https://bugs.webkit.org/show_bug.cgi?id=172098
1095         http://trac.webkit.org/changeset/217031
1096
1097         "Unreviewed, rebaseline for newly added ClassInfo"
1098         https://bugs.webkit.org/show_bug.cgi?id=172098
1099         http://trac.webkit.org/changeset/217032
1100
1101         "Unreviewed, fix debug and non-JIT build"
1102         https://bugs.webkit.org/show_bug.cgi?id=172098
1103         http://trac.webkit.org/changeset/217037
1104
1105 2017-05-16  Yusuke Suzuki  <utatane.tea@gmail.com>
1106
1107         [JSC][DFG][DOMJIT] Extend CheckDOM to CheckSubClass
1108         https://bugs.webkit.org/show_bug.cgi?id=172098
1109
1110         Reviewed by Saam Barati.
1111
1112         * Plugins/Hosted/ProxyInstance.mm:
1113         * Plugins/Hosted/ProxyRuntimeObject.mm:
1114
1115 2017-05-17  Matt Lewis  <jlewis3@apple.com>
1116
1117         Unreviewed, rolling out r216974.
1118
1119         Revision caused consistent timeouts on all platforms.
1120
1121         Reverted changeset:
1122
1123         "Add a RuntimeEnabledFeature for display: contents, defaulted
1124         to false."
1125         https://bugs.webkit.org/show_bug.cgi?id=171984
1126         http://trac.webkit.org/changeset/216974
1127
1128 2017-05-17  Emilio Cobos Álvarez  <ecobos@igalia.com>
1129
1130         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
1131         https://bugs.webkit.org/show_bug.cgi?id=171984
1132
1133         Reviewed by Antti Koivisto.
1134
1135         * WebView/WebPreferenceKeysPrivate.h:
1136         * WebView/WebPreferences.mm:
1137         (+[WebPreferences initialize]):
1138         (-[WebPreferences displayContentsEnabled]):
1139         (-[WebPreferences setDisplayContentsEnabled:]):
1140         * WebView/WebPreferencesPrivate.h:
1141         * WebView/WebView.mm:
1142         (-[WebView _preferencesChanged:]):
1143
1144 2017-05-16  Sam Weinig  <sam@webkit.org>
1145
1146         Bring Notification.idl up to spec
1147         https://bugs.webkit.org/show_bug.cgi?id=172156
1148
1149         Reviewed by Chris Dumez.
1150
1151         * WebCoreSupport/WebNotificationClient.h:
1152         * WebCoreSupport/WebNotificationClient.mm:
1153         (generateNotificationID):
1154         (WebNotificationClient::show):
1155         (WebNotificationClient::cancel):
1156         (WebNotificationClient::clearNotifications):
1157         (WebNotificationClient::notificationObjectDestroyed):
1158         (WebNotificationClient::requestPermission):
1159         (WebNotificationClient::hasPendingPermissionRequests):
1160         (WebNotificationClient::checkPermission):
1161         (-[WebNotificationPolicyListener allow]):
1162         (-[WebNotificationPolicyListener deny]):
1163         * WebView/WebNotification.mm:
1164         (-[WebNotification iconURL]):
1165         (-[WebNotification dir]):
1166         Simplify #ifdefs and update for enum vs String usage.
1167
1168 2017-05-15  Said Abou-Hallawa  <sabouhallawa@apple.com>
1169
1170         Do not delete asynchronously decoded frames for large images if their clients are in the viewport
1171         https://bugs.webkit.org/show_bug.cgi?id=170640
1172
1173         Reviewed by Simon Fraser.
1174
1175         Enable the async decoding for large images.
1176
1177         * WebView/WebView.mm:
1178         (-[WebView _preferencesChanged:]):
1179
1180 2017-05-15  Jer Noble  <jer.noble@apple.com>
1181
1182         Add experimental setting to allow document gesture interaction to fulfill media playback gesture requirement
1183         https://bugs.webkit.org/show_bug.cgi?id=172131
1184
1185         Reviewed by Eric Carlson.
1186
1187         * WebView/WebPreferenceKeysPrivate.h:
1188         * WebView/WebPreferences.mm:
1189         (+[WebPreferences initialize]):
1190         (-[WebPreferences mediaUserGestureInheritsFromDocument]):
1191         (-[WebPreferences setMediaUserGestureInheritsFromDocument:]):
1192         * WebView/WebPreferencesPrivate.h:
1193
1194 2017-05-12  Chris Dumez  <cdumez@apple.com>
1195
1196         Drop uses of PassRefPtr in WebKit/mac
1197         https://bugs.webkit.org/show_bug.cgi?id=172066
1198
1199         Reviewed by Sam Weinig.
1200
1201         * History/WebBackForwardListInternal.h:
1202         * History/WebHistoryItem.mm:
1203         (kit):
1204         (-[WebHistoryItem initWithWebCoreHistoryItem:]):
1205         * History/WebHistoryItemInternal.h:
1206         * Plugins/Hosted/HostedNetscapePluginStream.h:
1207         (WebKit::HostedNetscapePluginStream::create):
1208         * Plugins/Hosted/NetscapePluginHostManager.h:
1209         * Plugins/Hosted/NetscapePluginHostManager.mm:
1210         (WebKit::NetscapePluginHostManager::instantiatePlugin):
1211         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
1212         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1213         (WebKit::NetscapePluginInstanceProxy::PluginRequest::create):
1214         (WebKit::NetscapePluginInstanceProxy::create):
1215         (WebKit::NetscapePluginInstanceProxy::setManualStream):
1216         * Plugins/Hosted/ProxyInstance.h:
1217         (WebKit::ProxyInstance::create):
1218         * Plugins/Hosted/ProxyInstance.mm:
1219         (WebKit::ProxyInstance::ProxyInstance):
1220         (WebKit::ProxyInstance::newRuntimeObject):
1221         * Plugins/Hosted/ProxyRuntimeObject.h:
1222         (WebKit::ProxyRuntimeObject::create):
1223         * Plugins/Hosted/ProxyRuntimeObject.mm:
1224         (WebKit::ProxyRuntimeObject::ProxyRuntimeObject):
1225         * Plugins/Hosted/WebHostedNetscapePluginView.h:
1226         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1227         (-[WebHostedNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:]):
1228         * Plugins/WebBaseNetscapePluginView.h:
1229         * Plugins/WebBaseNetscapePluginView.mm:
1230         (-[WebBaseNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:]):
1231         * Plugins/WebNetscapePluginStream.h:
1232         (WebNetscapePluginStream::create):
1233         * Plugins/WebNetscapePluginView.h:
1234         * Plugins/WebNetscapePluginView.mm:
1235         (-[WebNetscapePluginView initWithFrame:pluginPackage:URL:baseURL:MIMEType:attributeKeys:attributeValues:loadManually:element:]):
1236         * WebCoreSupport/WebChromeClient.mm:
1237         * WebCoreSupport/WebEditorClient.mm:
1238         * WebCoreSupport/WebNotificationClient.mm:
1239         (WebNotificationClient::requestPermission):
1240         (-[WebNotificationPolicyListener initWithCallback:]):
1241         * WebCoreSupport/WebOpenPanelResultListener.mm:
1242         * WebCoreSupport/WebUserMediaClient.mm:
1243         (WebUserMediaClient::requestUserMediaAccess):
1244         (WebUserMediaClient::enumerateMediaDevices):
1245         (-[WebUserMediaPolicyListener initWithUserMediaRequest:]):
1246         (-[WebUserMediaPolicyCheckerListener initWithMediaDevicesEnumerationRequest:]):
1247         * WebView/WebArchive.mm:
1248         (-[WebArchivePrivate initWithCoreArchive:]):
1249         (-[WebArchivePrivate setCoreArchive:]):
1250         (-[WebArchive initWithData:]):
1251         (-[WebArchive subframeArchives]):
1252         (-[WebArchive _initWithCoreLegacyWebArchive:]):
1253         * WebView/WebArchiveInternal.h:
1254         * WebView/WebDataSource.mm:
1255         (WebDataSourcePrivate::WebDataSourcePrivate):
1256         (WebDataSourcePrivate::~WebDataSourcePrivate):
1257         (-[WebDataSource _initWithDocumentLoader:]):
1258         * WebView/WebDataSourceInternal.h:
1259         * WebView/WebDeviceOrientation.mm:
1260         (-[WebDeviceOrientation initWithCoreDeviceOrientation:]):
1261         * WebView/WebDeviceOrientationInternal.h:
1262         * WebView/WebFrame.mm:
1263         (-[WebFrame _convertToDOMRange:]):
1264         (-[WebFrame _convertToDOMRange:rangeIsRelativeTo:]):
1265         * WebView/WebFrameInternal.h:
1266         * WebView/WebFullScreenController.h:
1267         * WebView/WebFullScreenController.mm:
1268         (-[WebFullScreenController setElement:]):
1269         * WebView/WebGeolocationPosition.mm:
1270         (-[WebGeolocationPositionInternal initWithCoreGeolocationPosition:]):
1271         (-[WebGeolocationPosition initWithGeolocationPosition:]):
1272         * WebView/WebHTMLView.mm:
1273         (currentKeyboardEvent):
1274         * WebView/WebResource.mm:
1275         * WebView/WebScriptWorld.mm:
1276         (-[WebScriptWorld initWithWorld:]):
1277         (+[WebScriptWorld standardWorld]):
1278         (+[WebScriptWorld findOrCreateWorld:]):
1279         * WebView/WebViewData.h:
1280         (LayerFlushController::create):
1281
1282 2017-05-11  Chris Dumez  <cdumez@apple.com>
1283
1284         Drop remaining uses of PassRefPtr in WebCore
1285         https://bugs.webkit.org/show_bug.cgi?id=172013
1286
1287         Reviewed by Yusuke Suzuki.
1288
1289         * Plugins/Hosted/NetscapePluginInstanceProxy.h:
1290         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1291         (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
1292         (WebKit::NetscapePluginInstanceProxy::createBindingsInstance):
1293         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
1294         (-[WebHostedNetscapePluginView createPluginBindingsInstance:]):
1295
1296 2017-05-11  Tim Horton  <timothy_horton@apple.com>
1297
1298         Mail spins launching spell checker when typing
1299         https://bugs.webkit.org/show_bug.cgi?id=171986
1300         <rdar://problem/26305327>
1301
1302         Reviewed by Beth Dakin.
1303
1304         * WebView/WebView.mm:
1305         (-[WebView setEditable:]):
1306         Asynchronously pre-warm the spell checker when a WebView becomes editable.
1307
1308 2017-05-09  Sam Weinig  <sam@webkit.org>
1309
1310         Remove support for legacy Notifications
1311         https://bugs.webkit.org/show_bug.cgi?id=171487
1312
1313         Reviewed by Jon Lee.
1314
1315         * Configurations/FeatureDefines.xcconfig:
1316         * WebCoreSupport/WebNotificationClient.h:
1317         * WebCoreSupport/WebNotificationClient.mm:
1318         * WebView/WebNotification.mm:
1319         * WebView/WebNotificationInternal.h:
1320         * WebView/WebView.mm:
1321         (-[WebView _commonInitializationWithFrameName:groupName:]):
1322         (-[WebView _notificationIDForTesting:]):
1323         Remove legacy notification specific code.
1324
1325 2017-05-10  Chris Dumez  <cdumez@apple.com>
1326
1327         Simplify relationship between Attr and Element now that Attr is childless
1328         https://bugs.webkit.org/show_bug.cgi?id=171909
1329
1330         Reviewed by Ryosuke Niwa.
1331
1332         Build fix.
1333
1334         * DOM/DOMAttr.mm:
1335         (-[DOMAttr value]):
1336         (-[DOMAttr setValue:]):
1337
1338 2017-05-08  Chris Dumez  <cdumez@apple.com>
1339
1340         Move 'style' from Element to HTMLElement / SVGElement and make it settable
1341         https://bugs.webkit.org/show_bug.cgi?id=171795
1342
1343         Reviewed by Alex Christensen.
1344
1345         Build fix.
1346
1347         * DOM/DOMElement.mm:
1348         (-[DOMElement style]):
1349         * WebCoreSupport/WebEditorClient.mm:
1350         (WebEditorClient::shouldApplyStyle):
1351         * WebView/WebFrame.mm:
1352         (-[WebFrame _typingStyle]):
1353
1354 2017-05-06  Chris Dumez  <cdumez@apple.com>
1355
1356         Align our IDL files with the latest DOM specification
1357         https://bugs.webkit.org/show_bug.cgi?id=171777
1358
1359         Reviewed by Sam Weinig.
1360
1361         Build fix.
1362
1363         * DOM/DOMDocument.mm:
1364         (-[DOMDocument readyState]):
1365
1366 2017-05-05  Jeremy Jones  <jeremyj@apple.com>
1367
1368         REGRESSION (r215951): LayoutTest media/modern-media-controls/placard-support/placard-support-pip.html is a flaky crash
1369         https://bugs.webkit.org/show_bug.cgi?id=171610
1370         <rdar://problem/31976820>
1371
1372         Reviewed by Eric Carlson.
1373
1374         Fullscreen state gets confused because WK1 WebChromeClient doesn't implement exitVideoFullscreenToModeWithoutAnimation.
1375
1376         * WebCoreSupport/WebChromeClient.h:
1377         * WebCoreSupport/WebChromeClient.mm:
1378         (WebChromeClient::exitVideoFullscreenToModeWithoutAnimation):
1379
1380 2017-05-04  Commit Queue  <commit-queue@webkit.org>
1381
1382         Unreviewed, rolling out r216206.
1383         https://bugs.webkit.org/show_bug.cgi?id=171714
1384
1385         Multiple LayoutTests crashing in Document::page() (Requested
1386         by ap on #webkit).
1387
1388         Reverted changeset:
1389
1390         "Remove support for legacy Notifications"
1391         https://bugs.webkit.org/show_bug.cgi?id=171487
1392         http://trac.webkit.org/changeset/216206
1393
1394 2017-05-04  Jeremy Jones  <jeremyj@apple.com>
1395
1396         UIColor +whiteColor and +clearColor are ambiguous and need to be casted when soft linked.
1397         https://bugs.webkit.org/show_bug.cgi?id=171704
1398
1399         Reviewed by Jer Noble.
1400
1401         Fix build by casting result of +whiteColor to UIColor.
1402
1403         * WebView/WebView.mm:
1404         (-[WebView _createImageWithPlatterForImage:boundingRect:contentScaleFactor:clippingRects:]):
1405
1406 2017-05-04  Sam Weinig  <sam@webkit.org>
1407
1408         Remove support for legacy Notifications
1409         https://bugs.webkit.org/show_bug.cgi?id=171487
1410
1411         Reviewed by Jon Lee.
1412
1413         * Configurations/FeatureDefines.xcconfig:
1414         * WebCoreSupport/WebNotificationClient.h:
1415         * WebCoreSupport/WebNotificationClient.mm:
1416         * WebView/WebNotification.mm:
1417         * WebView/WebNotificationInternal.h:
1418         * WebView/WebView.mm:
1419         (-[WebView _commonInitializationWithFrameName:groupName:]):
1420         (-[WebView _notificationIDForTesting:]):
1421         Remove legacy notification specific code.
1422
1423 2017-05-03  Joseph Pecoraro  <pecoraro@apple.com>
1424
1425         [Cocoa] Stop exporting symbols for ivars that were made private
1426         https://bugs.webkit.org/show_bug.cgi?id=171631
1427
1428         Reviewed by Dan Bernstein.
1429
1430         * WebKit.exp:
1431
1432 2017-05-01  Chris Dumez  <cdumez@apple.com>
1433
1434         Remove some usage of PassRefPtr in editing code
1435         https://bugs.webkit.org/show_bug.cgi?id=171490
1436
1437         Reviewed by Darin Adler.
1438
1439         * WebView/WebFrame.mm:
1440         (-[WebFrame dictationResultMetadataForRange:]):
1441         (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
1442
1443 2017-05-01  Beth Dakin  <bdakin@apple.com>
1444
1445         On-screen panel for candidate bar is in the wrong place when the caret is at the 
1446         start of a paragraph
1447         https://bugs.webkit.org/show_bug.cgi?id=171453
1448         -and corresponding-
1449         rdar://problem/29779764
1450
1451         Reviewed by Tim Horton.
1452
1453         This bug only happens when the caret is at the beginning of the paragraph, and it 
1454         is because Range::absoluteTextQuads() returns no quads in this case. I think it 
1455         might be correct that absoluteTextQuads() returns no quads in this case, so this 
1456         patch fixes the bug at the call site by using absoluteCaretBounds() in this case.
1457
1458         * WebCoreSupport/WebEditorClient.mm:
1459         (WebEditorClient::handleRequestedCandidates):
1460
1461 2017-04-30  Dan Bernstein  <mitz@apple.com>
1462
1463         [Cocoa] Replaces uses of [get…() alloc] with alloc…Instance()
1464         https://bugs.webkit.org/show_bug.cgi?id=171485
1465
1466         Reviewed by Geoffrey Garen.
1467
1468         * WebView/WebView.mm:
1469         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
1470         (-[WebUITextIndicatorData initWithImage:scale:]):
1471
1472 2017-04-28  Youenn Fablet  <youenn@apple.com>
1473
1474         Adding a runtime flag specific to MediaDevices
1475         https://bugs.webkit.org/show_bug.cgi?id=171433
1476
1477         Reviewed by Geoffrey Garen.
1478
1479         Adding a preference for MediaDevices.
1480         Setting media devices runtime flag to false by default.
1481         Setting peer connection and media stream flags to true by default.
1482
1483         * WebView/WebPreferenceKeysPrivate.h:
1484         * WebView/WebPreferences.mm:
1485         (+[WebPreferences initialize]):
1486         (-[WebPreferences mediaDevicesEnabled]):
1487         (-[WebPreferences setMediaDevicesEnabled:]):
1488         * WebView/WebPreferencesPrivate.h:
1489         * WebView/WebView.mm:
1490         (-[WebView _preferencesChanged:]):
1491
1492 2017-04-27  Chris Dumez  <cdumez@apple.com>
1493
1494         Align colspan/rowspan limits with the latest HTML specification
1495         https://bugs.webkit.org/show_bug.cgi?id=171322
1496
1497         Reviewed by Darin Adler.
1498
1499         ObjC bindings build fix.
1500
1501         * DOM/DOMHTMLTableCellElement.mm:
1502         (-[DOMHTMLTableCellElement colSpan]):
1503         (-[DOMHTMLTableCellElement setColSpan:]):
1504
1505 2017-04-27  Said Abou-Hallawa  <sabouhallawa@apple.com>
1506
1507         REGRESSION(r213764): Async decoding of animated images is disabled for ImageDocument
1508         https://bugs.webkit.org/show_bug.cgi?id=170333
1509
1510         Reviewed by Simon Fraser.
1511
1512         Disbale the async decoding for large images for now.
1513
1514         * WebView/WebView.mm:
1515         (-[WebView _preferencesChanged:]):
1516
1517 2017-04-27  Alex Christensen  <achristensen@webkit.org>
1518
1519         Modernize Frame.h
1520         https://bugs.webkit.org/show_bug.cgi?id=171357
1521
1522         Reviewed by Andy Estes.
1523
1524         * WebCoreSupport/WebEditorClient.h:
1525         * WebCoreSupport/WebEditorClient.mm:
1526         (WebEditorClient::isSelectTrailingWhitespaceEnabled):
1527
1528 2017-04-27  Wenson Hsieh  <wenson_hsieh@apple.com>
1529
1530         [WK1] Tweak the data interaction SPI to indicate whether or not a data interaction was handled
1531         https://bugs.webkit.org/show_bug.cgi?id=171369
1532         <rdar://problem/31858853>
1533
1534         Reviewed by Dan Bernstein.
1535
1536         Introduce a new SPI hook intended to replace performDataInteraction:client:global:operation: that
1537         returns whether or not the data interaction was handled. Due to the difference only in return type
1538         and some staging constraints, this version is prefixed with "_tryTo".
1539
1540         * WebView/WebView.mm:
1541         (-[WebView _tryToPerformDataInteraction:client:global:operation:]):
1542         * WebView/WebViewPrivate.h:
1543
1544 2017-04-26  Wenson Hsieh  <wenson_hsieh@apple.com>
1545
1546         WebItemProviderPasteboard should not synchronously load provided data
1547         https://bugs.webkit.org/show_bug.cgi?id=171341
1548         <rdar://problem/31614010>
1549
1550         Reviewed by Tim Horton.
1551
1552         Adds client-layer plumbing for updatePreferredTypeIdentifiers. See WebCore ChangeLog for more details.
1553
1554         * WebCoreSupport/WebPlatformStrategies.h:
1555         * WebCoreSupport/WebPlatformStrategies.mm:
1556         (WebPlatformStrategies::updatePreferredTypeIdentifiers):
1557
1558 2017-04-26  Zalan Bujtas  <zalan@apple.com>
1559
1560         RTL: recent searches popover is displayed in incorrect location
1561         https://bugs.webkit.org/show_bug.cgi?id=171338
1562         <rdar://problem/31377807>
1563
1564         Reviewed by Dean Jackson.
1565
1566         Add RTL support for the pop-under branch.
1567
1568         * WebCoreSupport/PopupMenuMac.mm:
1569         (PopupMenuMac::show):
1570
1571 2017-04-25  Brent Fulgham  <bfulgham@apple.com>
1572
1573         Limit allowed size of document.title to avoid locking WebKit clients
1574         https://bugs.webkit.org/show_bug.cgi?id=165113
1575         <rdar://problem/28324389>
1576
1577         Reviewed by Darin Adler.
1578
1579         When a web application attempts to set an extremely long title, truncate the
1580         title to a more reasonable size.
1581
1582         We do this at at the presentation layer, rather than in the DOM, so that we do
1583         not affect script function. Instead, we merely limit display to a level that is
1584         reasonable for normal GUI widgets. Anything else needs to be truncated in the UI
1585         layer, so it is a waste of effort to send across IPC.
1586
1587         * WebCoreSupport/WebFrameLoaderClient.h:
1588         * WebCoreSupport/WebFrameLoaderClient.mm:
1589         (WebFrameLoaderClient::dispatchDidReceiveTitle):
1590
1591 2017-04-25  Daniel Bates  <dabates@apple.com>
1592
1593         [Cocoa][Win] Enable of X-Content-Type-Options: nosniff header
1594         https://bugs.webkit.org/show_bug.cgi?id=136452
1595         <rdar://problem/23412620>
1596
1597         Reviewed by Brent Fulgham.
1598
1599         Enable X-Content-Type-Options: nosniff on Mac, iOS and Windows platforms.
1600
1601         * Configurations/FeatureDefines.xcconfig:
1602
1603 2017-04-25  Wenson Hsieh  <wenson_hsieh@apple.com>
1604
1605         Support reading NSURL titles from the pasteboard when performing data interaction
1606         https://bugs.webkit.org/show_bug.cgi?id=171156
1607         <rdar://problem/31356937>
1608
1609         Reviewed by Tim Horton.
1610
1611         Add a new WK1 SPI property, -[WebFrame hasRichlyEditableDragCaret].
1612
1613         * WebCoreSupport/WebPlatformStrategies.h:
1614         * WebCoreSupport/WebPlatformStrategies.mm:
1615         (WebPlatformStrategies::readURLFromPasteboard):
1616         * WebView/WebFrame.mm:
1617         (-[WebFrame hasRichlyEditableDragCaret]):
1618         * WebView/WebFramePrivate.h:
1619
1620 2017-04-24  Andy VanWagoner  <thetalecrafter@gmail.com>
1621
1622         Clean up ICU headers
1623         https://bugs.webkit.org/show_bug.cgi?id=170997
1624
1625         Reviewed by JF Bastien.
1626
1627         Update all icu headers to 55.1
1628
1629         * icu/README: Explain ICU headers for OS X better
1630         * icu/unicode/localpointer.h:
1631         (LocalPointer::LocalPointer):
1632         (LocalPointer::adoptInsteadAndCheckErrorCode):
1633         * icu/unicode/platform.h:
1634         * icu/unicode/putil.h:
1635         * icu/unicode/uchar.h:
1636         * icu/unicode/uconfig.h:
1637         * icu/unicode/ucurr.h:
1638         * icu/unicode/uidna.h:
1639         * icu/unicode/umachine.h:
1640         * icu/unicode/urename.h:
1641         * icu/unicode/uscript.h:
1642         * icu/unicode/ustring.h:
1643         * icu/unicode/utf8.h:
1644         * icu/unicode/utypes.h:
1645         * icu/unicode/uvernum.h:
1646
1647 2017-04-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1648
1649         Respect fidelity order when reading web content from item providers
1650         https://bugs.webkit.org/show_bug.cgi?id=171155
1651         <rdar://problem/31356937>
1652
1653         Reviewed by Tim Horton.
1654
1655         Adjusts for changes in WebCore (see WebCore/ChangeLog for more details).
1656
1657         * WebCoreSupport/WebPlatformStrategies.h:
1658         * WebCoreSupport/WebPlatformStrategies.mm:
1659         (WebPlatformStrategies::getTypesByFidelityForItemAtIndex):
1660
1661 2017-04-24  Alex Christensen  <achristensen@webkit.org>
1662
1663         Reduce copies and allocations in SharedBuffer::append
1664         https://bugs.webkit.org/show_bug.cgi?id=170956
1665
1666         Reviewed by Andreas Kling.
1667
1668         * WebView/WebArchive.mm:
1669         (-[WebArchive initWithData:]):
1670         * WebView/WebFrame.mm:
1671         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
1672         * WebView/WebResource.mm:
1673         (-[WebResource initWithCoder:]):
1674         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
1675
1676 2017-04-24  Dan Bernstein  <mitz@apple.com>
1677
1678         [Cocoa] Some ivars are needlessly @protected
1679         https://bugs.webkit.org/show_bug.cgi?id=171208
1680
1681         Reviewed by Anders Carlsson
1682
1683         Made ivars @private where possible.
1684
1685         * Misc/WebUserContentURLPattern.h:
1686         * Plugins/WebPluginDatabase.h:
1687         * Storage/WebDatabaseQuotaManager.h:
1688         * WebCoreSupport/WebSecurityOriginPrivate.h:
1689         * WebInspector/WebInspector.h:
1690         * WebView/WebDeviceOrientation.h:
1691         * WebView/WebDeviceOrientationProviderMock.h:
1692         * WebView/WebGeolocationPosition.h:
1693         * WebView/WebHTMLRepresentation.h:
1694         * WebView/WebNotification.h:
1695
1696 2017-04-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1697
1698         Support writing link titles to the pasteboard when beginning data interaction on a link
1699         https://bugs.webkit.org/show_bug.cgi?id=171154
1700         <rdar://problem/31356937>
1701
1702         Reviewed by Andy Estes.
1703
1704         Adjust for some changes in WebCore to introduce a separate codepath for writing PasteboardURLs. See WebCore
1705         and WebKit2 ChangeLogs for more details.
1706
1707         * WebCoreSupport/WebPlatformStrategies.h:
1708         * WebCoreSupport/WebPlatformStrategies.mm:
1709         (WebPlatformStrategies::writeToPasteboard):
1710
1711 2017-04-21  Michael Catanzaro  <mcatanzaro@igalia.com>
1712
1713         Unreviewed, rolling out r215608.
1714
1715         Hundreds of test failures on GTK bot
1716
1717         Reverted changeset:
1718
1719         "Reduce copies and allocations in SharedBuffer::append"
1720         https://bugs.webkit.org/show_bug.cgi?id=170956
1721         http://trac.webkit.org/changeset/215608
1722
1723 2017-04-21  Alex Christensen  <achristensen@webkit.org>
1724
1725         Reduce copies and allocations in SharedBuffer::append
1726         https://bugs.webkit.org/show_bug.cgi?id=170956
1727
1728         Reviewed by Andreas Kling.
1729
1730         * WebView/WebArchive.mm:
1731         (-[WebArchive initWithData:]):
1732         * WebView/WebFrame.mm:
1733         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
1734         * WebView/WebResource.mm:
1735         (-[WebResource initWithCoder:]):
1736         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
1737
1738 2017-04-20  Dewei Zhu  <dewei_zhu@apple.com>
1739
1740         Build fix to start using C++14.
1741         https://bugs.webkit.org/show_bug.cgi?id=171038
1742
1743         Reviewed by Alex Christensen.
1744
1745         Use 'c++14' instead of 'c++11' in order to use 'auto' in lambda.
1746
1747         * Configurations/WebKitLegacy.xcconfig:
1748
1749 2017-04-19  Youenn Fablet  <youenn@apple.com>
1750
1751         [Mac] Allow customizing H264 encoder
1752         https://bugs.webkit.org/show_bug.cgi?id=170829
1753
1754         Reviewed by Alex Christensen.
1755
1756         * Configurations/FeatureDefines.xcconfig:
1757
1758 2017-04-19  Anders Carlsson  <andersca@apple.com>
1759
1760         Stop using deprecated APIs, part 3
1761         https://bugs.webkit.org/show_bug.cgi?id=171003
1762         rdar://problem/31589635
1763
1764         Reviewed by Tim Horton.
1765
1766         * WebCoreSupport/WebPaymentCoordinatorClient.h:
1767         * WebCoreSupport/WebPaymentCoordinatorClient.mm:
1768         (WebPaymentCoordinatorClient::cancelPaymentSession):
1769         Update for WebCore changes.
1770
1771 2017-04-18  Wenson Hsieh  <wenson_hsieh@apple.com>
1772
1773         [WK2] Support DataTransfer::files() when performing a DHTML data interaction
1774         https://bugs.webkit.org/show_bug.cgi?id=170880
1775         <rdar://problem/31314689>
1776
1777         Reviewed by Tim Horton.
1778
1779         Adjust for a change in PasteboardStrategy. See WebCore ChangeLog for more details.
1780
1781         * WebCoreSupport/WebPlatformStrategies.h:
1782         * WebCoreSupport/WebPlatformStrategies.mm:
1783         (WebPlatformStrategies::getFilenamesForDataInteraction):
1784
1785 2017-04-17  Youenn Fablet  <youenn@apple.com>
1786
1787         Disable outdated WritableStream API
1788         https://bugs.webkit.org/show_bug.cgi?id=170749
1789         <rdar://problem/31446233>
1790
1791         Reviewed by Alex Christensen.
1792
1793         Replacing READABLE_STREAM_API, READABLE_BYTE_STREAM_API and WRITABLE_STREAM_API compilation flag by:
1794         - A STREAMS_API compilation flag.
1795         - A ReadableByteStreamAPI and WritableStreamAPI runtime flags, turned off except for RWT and DRT.
1796
1797         * Configurations/FeatureDefines.xcconfig:
1798         * WebView/WebPreferenceKeysPrivate.h:
1799         * WebView/WebPreferences.mm:
1800         (+[WebPreferences initialize]):
1801         (-[WebPreferences readableByteStreamAPIEnabled]):
1802         (-[WebPreferences setReadableByteStreamAPIEnabled:]):
1803         (-[WebPreferences writableStreamAPIEnabled]):
1804         (-[WebPreferences setWritableStreamAPIEnabled:]):
1805         * WebView/WebPreferencesPrivate.h:
1806         * WebView/WebView.mm:
1807         (-[WebView _preferencesChanged:]):
1808
1809 2017-04-15  Wenson Hsieh  <wenson_hsieh@apple.com>
1810
1811         [WK2] Support data interaction of files into file inputs
1812         https://bugs.webkit.org/show_bug.cgi?id=170803
1813         <rdar://problem/31286130>
1814
1815         Reviewed by Tim Horton.
1816
1817         Add boilerplate plumbing for fetching the number of files in the pasteboard.
1818
1819         * WebCoreSupport/WebPlatformStrategies.h:
1820         * WebCoreSupport/WebPlatformStrategies.mm:
1821         (WebPlatformStrategies::getNumberOfFiles):
1822
1823 2017-04-14  Mark Lam  <mark.lam@apple.com>
1824
1825         Update architectures in xcconfig files.
1826         https://bugs.webkit.org/show_bug.cgi?id=170867
1827         <rdar://problem/31628104>
1828
1829         Reviewed by Joseph Pecoraro.
1830
1831         * Configurations/FeatureDefines.xcconfig:
1832
1833 2017-04-14  Wenson Hsieh  <wenson_hsieh@apple.com>
1834
1835         [WK2] Support Icon creation from file URLs on iOS
1836         https://bugs.webkit.org/show_bug.cgi?id=170809
1837         <rdar://problem/31286130>
1838
1839         Reviewed by Tim Horton.
1840
1841         Adjust for changes in the ChromeClient in WebCore.
1842
1843         * WebCoreSupport/WebChromeClient.h:
1844         * WebCoreSupport/WebChromeClient.mm:
1845         (WebChromeClient::loadIconForFiles):
1846         (WebChromeClient::createIconForFiles):
1847
1848 2017-04-12  Dan Bernstein  <mitz@apple.com>
1849
1850         [Mac] Future-proof .xcconfig files
1851         https://bugs.webkit.org/show_bug.cgi?id=170802
1852
1853         Reviewed by Tim Horton.
1854
1855         * Configurations/Base.xcconfig:
1856         * Configurations/DebugRelease.xcconfig:
1857         * Configurations/FeatureDefines.xcconfig:
1858         * Configurations/Version.xcconfig:
1859
1860 2017-04-12  Beth Dakin  <bdakin@apple.com>
1861
1862         Build fix.
1863
1864         * WebView/WebViewData.h:
1865
1866 2017-04-12  Brian Weinstein  <bweinstein@apple.com>
1867
1868         Should always override -[WebStorageManager init].
1869         https://bugs.webkit.org/show_bug.cgi?id=170787
1870         -and corresponding-
1871         rdar://problem/31371835
1872
1873         Reviewed by Anders Carlsson.
1874
1875         * Storage/WebStorageManager.mm:
1876         (-[WebStorageManager init]):
1877
1878 2017-04-12  Beth Dakin  <bdakin@apple.com>
1879
1880         Speculative build fix. 
1881
1882         * WebView/WebViewData.h:
1883
1884 2017-04-12  Beth Dakin  <bdakin@apple.com>
1885
1886         Adopt AVKit name change from AVFunctionBar* to AVTouchBar*
1887         https://bugs.webkit.org/show_bug.cgi?id=170693
1888         -and corresponding-
1889         rdar://problem/31230018
1890
1891         Reviewed by Sam Weinig.
1892
1893         Since the new names only apply to some versions of macOS, this patch uses typedefs 
1894         for the older OS’s. SO:
1895
1896         AVFunctionBarScrubber is now AVTouchBarScrubber
1897
1898         AVFunctionBarPlaybackControlsProvider is now AVTouchBarPlaybackControlsProvider
1899
1900         AVFunctionBarMediaSelectionOption is now AVTouchBarMediaSelectionOption
1901
1902         And the protocol AVFunctionBarPlaybackControlsControlling is now 
1903         AVTouchBarPlaybackControlsControlling
1904
1905         Soft links and allocations cannot use the typedefs.
1906         * WebView/WebView.mm:
1907         (-[WebView updateMediaTouchBar]):
1908         * WebView/WebViewData.h:
1909
1910 2017-04-11  Dean Jackson  <dino@apple.com>
1911
1912         Disable outdated WritableStream API
1913         https://bugs.webkit.org/show_bug.cgi?id=170749
1914         <rdar://problem/31446233>
1915
1916         Reviewed by Tim Horton.
1917
1918         The API we implement is no longer accurate. Disable it until we
1919         are compatible with the new specification
1920
1921         * Configurations/FeatureDefines.xcconfig:
1922
1923 2017-04-11  Dan Bernstein  <mitz@apple.com>
1924
1925         [iOS] Simple HTML documents should allow non-markup JavaScript
1926         https://bugs.webkit.org/show_bug.cgi?id=170734
1927
1928         Reviewed by Sam Weinig.
1929
1930         * WebView/WebView.mm:
1931         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]): Enabled scripting
1932           but disabled scripting markup.
1933
1934 2017-04-10  Alex Christensen  <achristensen@webkit.org>
1935
1936         Revert r215217
1937         https://bugs.webkit.org/show_bug.cgi?id=170703
1938
1939         * Configurations/FeatureDefines.xcconfig:
1940
1941 2017-04-10  Alex Christensen  <achristensen@webkit.org>
1942
1943         Continue enabling WebRTC
1944         https://bugs.webkit.org/show_bug.cgi?id=170703
1945
1946         Reviewed by Youenn Fablet.
1947
1948         * Configurations/FeatureDefines.xcconfig:
1949
1950 2017-04-10  Anders Carlsson  <andersca@apple.com>
1951
1952         Remove call to WKShowKeyAndMain
1953         https://bugs.webkit.org/show_bug.cgi?id=170691
1954         rdar://problem/31050032
1955
1956         Reviewed by Beth Dakin.
1957
1958         * Carbon/CarbonWindowAdapter.mm:
1959         (-[CarbonWindowAdapter makeKeyWindow]):
1960
1961 2017-04-10  Jeremy Jones  <jeremyj@apple.com>
1962
1963         Add CoreAudioCaptureSource.
1964         https://bugs.webkit.org/show_bug.cgi?id=170112
1965         rdar://problem/30293338
1966
1967         Reviewed by Eric Carlson.
1968
1969         Add UseAVFoundationAudioCapture preference to switch back from the new default of CoreAudio.
1970
1971         * WebView/WebPreferenceKeysPrivate.h:
1972         * WebView/WebPreferences.mm:
1973         (+[WebPreferences initialize]):
1974         (-[WebPreferences useAVFoundationAudioCapture]):
1975         (-[WebPreferences setUseAVFoundationAudioCapture:]):
1976         * WebView/WebPreferencesPrivate.h:
1977         * WebView/WebView.mm:
1978         (-[WebView _preferencesChanged:]):
1979
1980 2017-04-10  Chris Dumez  <cdumez@apple.com>
1981
1982         Drop Timer::startOneShot() overload taking a double
1983         https://bugs.webkit.org/show_bug.cgi?id=170659
1984
1985         Reviewed by Yusuke Suzuki.
1986
1987         Drop Timer::startOneShot() overload taking a double as people should use Seconds type now.
1988
1989         * Plugins/WebNetscapePluginView.mm:
1990         (PluginTimer::start):
1991         * Storage/WebStorageManager.mm:
1992         (+[WebStorageManager setStorageDatabaseIdleInterval:]):
1993
1994 2017-04-09  Chris Dumez  <cdumez@apple.com>
1995
1996         Drop Timer::startRepeating() overload taking a double
1997         https://bugs.webkit.org/show_bug.cgi?id=170656
1998
1999         Reviewed by Yusuke Suzuki.
2000
2001         Drop Timer::startRepeating() overload taking a double as people should use Seconds type now.
2002
2003         * Plugins/WebNetscapePluginView.mm:
2004         (PluginTimer::start):
2005
2006 2017-04-09  Chris Dumez  <cdumez@apple.com>
2007
2008         Start dropping Timer API dealing with double
2009         https://bugs.webkit.org/show_bug.cgi?id=170649
2010
2011         Reviewed by Yusuke Suzuki.
2012
2013         Start dropping Timer API dealing with double as people should use Seconds now.
2014
2015         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2016         (WebKit::NetscapePluginInstanceProxy::requestTimerFired):
2017         (WebKit::NetscapePluginInstanceProxy::loadRequest):
2018         * Plugins/WebNetscapePluginStream.mm:
2019         (WebNetscapePluginStream::deliverData):
2020
2021 2017-04-08  Chris Dumez  <cdumez@apple.com>
2022
2023         Drop std::chrono support from Timer class
2024         https://bugs.webkit.org/show_bug.cgi?id=170645
2025
2026         Reviewed by Sam Weinig.
2027
2028         Drop std::chrono support from Timer class now that we prefer using Seconds type.
2029
2030         * WebView/WebView.mm:
2031         (+[WebView _setCacheModel:]):
2032
2033 2017-04-08  Youenn Fablet  <youenn@apple.com>
2034
2035         WebRTC tests gardening
2036         https://bugs.webkit.org/show_bug.cgi?id=170508
2037
2038         Reviewed by Eric Carlson.
2039
2040         * Configurations/FeatureDefines.xcconfig:
2041
2042 2017-04-06  Ryan Haddad  <ryanhaddad@apple.com>
2043
2044         Unreviewed, rolling out r215046.
2045
2046         This change broke internal builds.
2047
2048         Reverted changeset:
2049
2050         "WebRTC tests gardening"
2051         https://bugs.webkit.org/show_bug.cgi?id=170508
2052         http://trac.webkit.org/changeset/215046
2053
2054 2017-04-06  Tim Horton  <timothy_horton@apple.com>
2055
2056         Obj-C bindings build fails with CSS_DEVICE_ADAPTATION turned on
2057         https://bugs.webkit.org/show_bug.cgi?id=170566
2058
2059         Reviewed by Simon Fraser.
2060
2061         * DOM/DOMCSS.mm:
2062         (kitClass):
2063         Use the WebCore-side enum for this, since that's actually what we're switching over.
2064         This allows us to handle values here without adding them to the API header.
2065         All of the other kitClass() functions work the same way.
2066         Also, unindent for style purposes.
2067
2068 2017-04-06  Youenn Fablet  <youenn@apple.com>
2069
2070         WebRTC tests gardening
2071         https://bugs.webkit.org/show_bug.cgi?id=170508
2072
2073         Reviewed by Eric Carlson.
2074
2075         * Configurations/FeatureDefines.xcconfig:
2076
2077 2017-04-04  Megan Gardner  <megan_gardner@apple.com>
2078
2079         Fix leaks in WebUITextIndicatorData
2080         https://bugs.webkit.org/show_bug.cgi?id=170480
2081
2082         Reviewed by Wenson Hsieh.
2083
2084         Removes extraneous retains.
2085
2086         * WebView/WebView.mm:
2087         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
2088
2089 2017-04-04  Tim Horton  <timothy_horton@apple.com>
2090
2091         [Mac] -[WKWebView findMatchesForString:relativeToMatch:findOptions:maxResults:resultCollector:] invokes the resultCollector with didWrap = NO even when it wraps
2092         https://bugs.webkit.org/show_bug.cgi?id=165801
2093         <rdar://problem/29649535>
2094
2095         Reviewed by Wenson Hsieh.
2096
2097         * WebView/WebView.mm:
2098         (incrementFrame):
2099         Adjust to the new CanWrap enum.
2100
2101 2017-03-27  Joseph Pecoraro  <pecoraro@apple.com>
2102
2103         Web Inspector: Saving files should not suggest the top level directory
2104         https://bugs.webkit.org/show_bug.cgi?id=170085
2105         <rdar://problem/30197794>
2106
2107         Reviewed by Matt Baker.
2108
2109         * WebCoreSupport/WebInspectorClient.mm:
2110         (WebInspectorFrontendClient::save):
2111         Don't set panel.directoryURL unless we have a good suggestion.
2112
2113 2017-03-24  Wenson Hsieh  <wenson_hsieh@apple.com>
2114
2115         [WK2] Add a UI delegate SPI hook to enable or disable navigation on drop
2116         https://bugs.webkit.org/show_bug.cgi?id=169168
2117         <rdar://problem/30688374>
2118
2119         Reviewed by Tim Horton.
2120
2121         Refactors WebDragClient::actionMaskForDrag to take platform data only, rather than the entire DragData. See the
2122         WebCore ChangeLog entry for more details. Also renames WebDefaultUIDelegate.m to WebDefaultUIDelegate.mm, since
2123         we need to import a C++ header for linkedOnOrAfter().
2124
2125         The default delegate implementation of webView:dragDestinationActionMaskForDraggingInfo: now checks if the current
2126         application is linking against 10.12 or earlier, and if so, will allow any drag destination action instead of
2127         the new default value of everything but DragDestinationActionLoad.
2128
2129         * DefaultDelegates/WebDefaultUIDelegate.mm: Renamed from Source/WebKit/mac/DefaultDelegates/WebDefaultUIDelegate.m.
2130         (-[WebDefaultUIDelegate webView:dragDestinationActionMaskForDraggingInfo:]):
2131         * Misc/WebKitVersionChecks.h:
2132         * WebCoreSupport/WebDragClient.h:
2133         * WebCoreSupport/WebDragClient.mm:
2134         (WebDragClient::actionMaskForDrag): Deleted.
2135         * WebView/WebView.mm:
2136         (-[WebView draggingEntered:]):
2137         (-[WebView draggingUpdated:]):
2138
2139 2017-03-21  Wenson Hsieh  <wenson_hsieh@apple.com>
2140
2141         Add support for showing the platform data interaction caret
2142         https://bugs.webkit.org/show_bug.cgi?id=169898
2143         <rdar://problem/31146295>
2144
2145         Reviewed by Beth Dakin.
2146
2147         Plumb the dataInteractionCaretRect through WebView SPI to WebKit1 clients.
2148
2149         * WebView/WebView.mm:
2150         (-[WebView _dataInteractionCaretRect]):
2151         * WebView/WebViewPrivate.h:
2152
2153 2017-03-22  Dan Bernstein  <mitz@apple.com>
2154
2155         [iOS] downloadableBinaryFontsEnabled is set to false in -initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:
2156         https://bugs.webkit.org/show_bug.cgi?id=169967
2157         <rdar://problem/30406898>
2158
2159         Reviewed by Anders Carlsson.
2160
2161         * WebView/WebView.mm:
2162         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]): Removed call to
2163           Settings::downloadableBinaryFontsEnabled. The default is true.
2164
2165 2017-03-22  Andy Estes  <aestes@apple.com>
2166
2167         [QuickLook] Rename QuickLookHandle to PreviewLoader
2168         https://bugs.webkit.org/show_bug.cgi?id=169961
2169
2170         Reviewed by Andreas Kling.
2171
2172         * WebCoreSupport/WebFrameLoaderClient.h:
2173         * WebCoreSupport/WebFrameLoaderClient.mm:
2174         (WebFrameLoaderClient::createPreviewLoaderClient):
2175         (WebFrameLoaderClient::createQuickLookHandleClient): Deleted.
2176
2177 2017-03-21  Anders Carlsson  <andersca@apple.com>
2178
2179         Remove bogus availability annotations from DOM SPI headers.
2180         rdar://problem/31015675
2181
2182         Rubber-stamped by Dan Bernstein.
2183
2184         * DOM/DOMHTMLMediaElement.h:
2185         * DOM/DOMHTMLVideoElement.h:
2186         * DOM/DOMMediaError.h:
2187         * DOM/DOMTextEvent.h:
2188         * DOM/DOMTimeRanges.h:
2189         * DOM/DOMTokenList.h:
2190
2191 2017-03-19  Wenson Hsieh  <wenson_hsieh@apple.com>
2192
2193         Teach TextIndicator to estimate the background color of the given Range
2194         https://bugs.webkit.org/show_bug.cgi?id=169869
2195         <rdar://problem/31127272>
2196
2197         Reviewed by Anders Carlsson and Simon Fraser.
2198
2199         Plumb the estimated background color for WebKit1 clients through a new property in WebUITextIndicatorData.
2200
2201         * WebView/WebView.mm:
2202         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
2203         (-[WebUITextIndicatorData dealloc]):
2204         * WebView/WebViewPrivate.h:
2205
2206 2017-03-20  Dan Bernstein  <mitz@apple.com>
2207
2208         [Xcode] Incremental builds of WebKitLegacy are slow because of the Postprocess Headers phase
2209         https://bugs.webkit.org/show_bug.cgi?id=169861
2210
2211         Reviewed by Sam Weinig.
2212
2213         * MigrateHeaders.make: Touch the PrivateHeaders directory when migrating a header into it.
2214         * postprocess-headers.sh: Preserve the timestamp on the headers directories. Write out the
2215           timestamp file used by the Xcode project to determine whether to run the script.
2216
2217 2017-03-19  Alexey Proskuryakov  <ap@apple.com>
2218
2219         WebHTMLView is useless as WebResourceHandler
2220         https://bugs.webkit.org/show_bug.cgi?id=169857
2221
2222         Reviewed by Dan Bernstein.
2223
2224         * WebView/WebHTMLView.mm:
2225         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
2226         WebHTMLView doesnt implement any of WebResourceHandler methods.
2227
2228 2017-03-17  Michael Saboff  <msaboff@apple.com>
2229
2230         Use USE_INTERNAL_SDK to compute ENABLE_FAST_JIT_PERMISSIONS instead of HAVE_INTERNAL_SDK
2231         https://bugs.webkit.org/show_bug.cgi?id=169817
2232
2233         Reviewed by Filip Pizlo.
2234
2235         * Configurations/FeatureDefines.xcconfig:
2236
2237 2017-03-17  Antti Koivisto  <antti@apple.com>
2238
2239         Add a reload policy where only expired subresources are revalidated
2240         https://bugs.webkit.org/show_bug.cgi?id=169756
2241
2242         Reviewed by Andreas Kling.
2243
2244         * WebView/WebFrame.mm:
2245         (toWebFrameLoadType):
2246         (-[WebFrame reload]):
2247         (-[WebFrame reloadFromOrigin]):
2248
2249 2017-03-17  Wenson Hsieh  <wenson_hsieh@apple.com>
2250
2251         [WK1] Support animated transitions when performing a data interaction operation
2252         https://bugs.webkit.org/show_bug.cgi?id=169805
2253         <rdar://problem/31045767>
2254
2255         Reviewed by Beth Dakin and Megan Gardner.
2256
2257         Adds WebKit1 support for animated transitions when performing a data interaction operation. See per-method changes
2258         for more details.
2259
2260         * DOM/DOMElement.h:
2261         * DOM/DOMElement.mm:
2262         (-[DOMElement boundsInRootViewSpace]):
2263
2264         Introduce -[DOMElement boundsInRootViewSpace], which returns the bounds of the element in root view coordinates.
2265
2266         * WebCoreSupport/WebDragClient.h:
2267         (): Deleted.
2268         * WebCoreSupport/WebDragClient.mm:
2269         (WebDragClient::didConcludeEditDrag):
2270
2271         Add boilerplate plumbing.
2272
2273         * WebView/WebView.mm:
2274         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
2275
2276         Add contentImageWithoutSelection and contentImageWithoutSelectionRectInRootViewCoordinates to WebUITextIndicatorData.
2277
2278         (floatRectsForCGRectArray):
2279         (-[WebView _createImageWithPlatterForImage:boundingRect:contentScaleFactor:clippingRects:]):
2280
2281         Introduces a SPI helper method in WebView that clients can use to generate an image of a text platter given an
2282         image of some text, as well as clipping rects to apply to the image.
2283
2284         (-[WebView _dataOperationTextIndicator]):
2285
2286         Add SPI to fetch the text indicator used to drive animations for the current data operation.
2287
2288         (-[WebView _didConcludeEditDataInteraction]):
2289         * WebView/WebViewData.h:
2290         * WebView/WebViewInternal.h:
2291         * WebView/WebViewPrivate.h:
2292
2293 2017-03-16  Simon Fraser  <simon.fraser@apple.com>
2294
2295         Improve the system tracing points
2296         https://bugs.webkit.org/show_bug.cgi?id=169790
2297
2298         Reviewed by Zalan Bujtas.
2299
2300         Use a more cohesive set of system trace points that give a good overview of what
2301         WebKit is doing. Added points for resource loading, render tree building, sync messages
2302         to the web process, async image decode, WASM and fetching cookies.
2303
2304         * WebView/WebHTMLView.mm:
2305         (-[WebHTMLView drawRect:]):
2306
2307 2017-03-16  Youenn Fablet  <youenn@apple.com>
2308
2309         Wrap legacy WebRTC API in runtime flag
2310         https://bugs.webkit.org/show_bug.cgi?id=169646
2311
2312         Reviewed by Alex Christensen.
2313
2314         * WebView/WebPreferenceKeysPrivate.h:
2315         * WebView/WebPreferences.mm:
2316         (+[WebPreferences initialize]):
2317         (-[WebPreferences webRTCLegacyAPIEnabled]):
2318         (-[WebPreferences setWebRTCLegacyAPIEnabled:]):
2319         * WebView/WebPreferencesPrivate.h:
2320         * WebView/WebView.mm:
2321         (-[WebView _preferencesChanged:]):
2322
2323 2017-03-14  Megan Gardner  <megan_gardner@apple.com>
2324
2325         Correctly export WebItemProviderPasteboard
2326         https://bugs.webkit.org/show_bug.cgi?id=169578
2327
2328         Reviewed by Tim Horton.
2329
2330         * MigrateHeaders.make:
2331
2332 2017-03-14  Wenson Hsieh  <wenson_hsieh@apple.com>
2333
2334         [WK2] Data interaction tests occasionally hit assertions in debug builds
2335         https://bugs.webkit.org/show_bug.cgi?id=169002
2336         <rdar://problem/30994806>
2337
2338         Reviewed by Tim Horton.
2339
2340         Renames setIgnoreCompositionSelectionChange to setIgnoreSelectionChanges. See WebCore ChangeLog for more details.
2341
2342         * WebView/WebHTMLView.mm:
2343         (-[WebHTMLView _updateSelectionForInputManager]):
2344         * WebView/WebView.mm:
2345         (-[WebView updateTextTouchBar]):
2346
2347 2017-03-13  Anders Carlsson  <andersca@apple.com>
2348
2349         Fix build warnings.
2350
2351         * WebCoreSupport/WebInspectorClient.mm:
2352         (WebInspectorFrontendClient::save):
2353         (-[WebInspectorWindowController webView:runOpenPanelForFileButtonWithResultListener:allowMultipleFiles:]):
2354
2355 2017-03-11  Brady Eidson  <beidson@apple.com>
2356
2357         Cleanup "addCookie" and its sole user.
2358         https://bugs.webkit.org/show_bug.cgi?id=169486
2359
2360         Reviewed by Brian Burg.
2361
2362         * WebCoreSupport/WebPlatformStrategies.h:
2363         * WebCoreSupport/WebPlatformStrategies.mm:
2364         (WebPlatformStrategies::addCookie): Deleted.
2365
2366 2017-03-10  Alex Christensen  <achristensen@webkit.org>
2367
2368         Fix watch and tv builds after r213294
2369         https://bugs.webkit.org/show_bug.cgi?id=169508
2370
2371         Reviewed by Dan Bernstein.
2372
2373         * Configurations/FeatureDefines.xcconfig:
2374
2375 2017-03-10  Alex Christensen  <achristensen@webkit.org>
2376
2377         Fix CMake build.
2378
2379         * WebView/WebNotification.h:
2380         Don't assume we have already included something that includes NSObject.h.
2381
2382 2017-03-09  Daniel Bates  <dabates@apple.com>
2383
2384         Guard Credential Management implementation behind a runtime enabled feature flag
2385         https://bugs.webkit.org/show_bug.cgi?id=169364
2386         <rdar://problem/30957425>
2387
2388         Reviewed by Brent Fulgham.
2389
2390         Add WebKit preference for Credential Management (disabled by default).
2391
2392         * WebView/WebPreferenceKeysPrivate.h:
2393         * WebView/WebPreferences.mm:
2394         (+[WebPreferences initialize]):
2395         (-[WebPreferences credentialManagementEnabled]): Added.
2396         (-[WebPreferences setCredentialManagementEnabled:]): Added.
2397         * WebView/WebPreferencesPrivate.h:
2398         * WebView/WebView.mm:
2399         (-[WebView _preferencesChanged:]):
2400
2401 2017-03-09  Anders Carlsson  <andersca@apple.com>
2402
2403         Add delegate support to WebCore
2404         https://bugs.webkit.org/show_bug.cgi?id=169427
2405         Part of rdar://problem/28880714.
2406
2407         Reviewed by Geoffrey Garen.
2408
2409         * Configurations/FeatureDefines.xcconfig:
2410         Add feature define.
2411
2412 2017-03-08  Megan Gardner  <megan_gardner@apple.com>
2413
2414         Fix DataInteraction guards
2415         https://bugs.webkit.org/show_bug.cgi?id=169404
2416
2417         Reviewed by Wenson Hsieh.
2418
2419         * WebCoreSupport/WebDragClient.mm:
2420
2421 2017-03-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2422
2423         Add plumbing for WebCore to notify WebKit2 when an edit drag has concluded
2424         https://bugs.webkit.org/show_bug.cgi?id=169392
2425         <rdar://problem/30882974>
2426
2427         Reviewed by Tim Horton.
2428
2429         Add a stub implementation of WebDragClient::didConcludeEditDrag.
2430
2431         * WebCoreSupport/WebDragClient.h:
2432
2433 2017-03-08  Anders Carlsson  <andersca@apple.com>
2434
2435         Simplify the PaymentCoordinator interface
2436         https://bugs.webkit.org/show_bug.cgi?id=169382
2437         Part of rdar://problem/28880714.
2438
2439         Reviewed by Tim Horton.
2440
2441         Update for PaymentCoordinatorClient changes.
2442
2443         * WebCoreSupport/WebPaymentCoordinatorClient.h:
2444         * WebCoreSupport/WebPaymentCoordinatorClient.mm:
2445         (WebPaymentCoordinatorClient::completeShippingMethodSelection):
2446         (WebPaymentCoordinatorClient::completeShippingContactSelection):
2447         (WebPaymentCoordinatorClient::completePaymentMethodSelection):
2448         (WebPaymentCoordinatorClient::completePaymentSession):
2449
2450 2017-03-08  Megan Gardner  <megan_gardner@apple.com>
2451
2452         Fix for dependency fix
2453         https://bugs.webkit.org/show_bug.cgi?id=169369
2454
2455         Reviewed by Beth Dakin.
2456
2457         * WebView/WebViewPrivate.h:
2458
2459 2017-03-07  Megan Gardner  <megan_gardner@apple.com>
2460
2461         Fix Project Dependency
2462         https://bugs.webkit.org/show_bug.cgi?id=169340
2463
2464         Unreviewed Dependency Fix.
2465
2466         * WebView/WebViewPrivate.h:
2467
2468 2017-03-07  Alexey Proskuryakov  <ap@apple.com>
2469
2470         WebKitLegacy should re-export symbols from WebCore on watchos and tvos
2471         https://bugs.webkit.org/show_bug.cgi?id=169341
2472         <rdar://problem/30913788>
2473
2474         Reviewed by Dan Bernstein.
2475
2476         * MigrateHeaders.make:
2477
2478 2017-03-07  Simon Fraser  <simon.fraser@apple.com>
2479
2480         Have fixedPositionCreatesStackingContext be on by default everywhere
2481         https://bugs.webkit.org/show_bug.cgi?id=169334
2482
2483         Reviewed by Zalan Bujtas.
2484
2485         It makes no sense to have web-exposed CSS functionality be different based on setting,
2486         and other browser are now aligned with having position:fixed create stacking context.
2487
2488         So remove the fixedPositionCreatesStackingContext setting and have StyleResolver::adjustRenderStyle()
2489         always force stacking context for position:fixed.
2490
2491         * WebView/WebView.mm:
2492         (-[WebView _preferencesChanged:]):
2493
2494 2017-03-06  Simon Fraser  <simon.fraser@apple.com>
2495
2496         Initialize the subpixelAntialiasedLayerTextEnabled Setting in WebKit1
2497         https://bugs.webkit.org/show_bug.cgi?id=169230
2498
2499         Reviewed by Tim Horton.
2500
2501         * WebView/WebView.mm:
2502         (-[WebView _preferencesChanged:]):
2503
2504 2017-03-07  Simon Fraser  <simon.fraser@apple.com>
2505
2506         Enable SubpixelAntialiasedLayerTextEnabled by default on some versions of macOS
2507         https://bugs.webkit.org/show_bug.cgi?id=169329
2508
2509         Reviewed by Tim Horton.
2510
2511         If the macOS version is > 101300, enable subpixelAntialiasedLayerTextEnabled.
2512
2513         * WebView/WebPreferences.mm:
2514         (+[WebPreferences initialize]):
2515
2516 2017-03-07  Megan Gardner  <megan_gardner@apple.com>
2517
2518         Additional DataInteraction Support
2519         https://bugs.webkit.org/show_bug.cgi?id=169316
2520         <rdar://problem/30884234>
2521
2522         Reviewed by Wenson Hsieh.
2523
2524         Add stub implementations to WebView for methods that handle data interaction
2525
2526         * WebView/WebView.mm:
2527         (-[WebView _enteredDataInteraction:client:global:operation:]):
2528         (-[WebView _updatedDataInteraction:client:global:operation:]):
2529         (-[WebView _exitedDataInteraction:client:global:operation:]):
2530         (-[WebView _performDataInteraction:client:global:operation:]):
2531         (-[WebView _endedDataInteraction:global:]):
2532         * WebView/WebViewPrivate.h:
2533
2534 2017-03-07  Dean Jackson  <dino@apple.com>
2535
2536         Some platforms won't be able to create a GPUDevice
2537         https://bugs.webkit.org/show_bug.cgi?id=169314
2538         <rdar://problems/30907521>
2539
2540         Reviewed by Jon Lee.
2541
2542         Disable WEB_GPU on the iOS Simulator.
2543
2544         * Configurations/FeatureDefines.xcconfig:
2545
2546 2017-03-07  Maureen Daum  <mdaum@apple.com>
2547
2548         Correctly check for an empty database file.
2549         <rdar://problem/30542242> Removing Website Data not working (WebSQL directories being left behind)
2550         https://bugs.webkit.org/show_bug.cgi?id=169256
2551
2552         Reviewed by Brady Eidson.
2553
2554         Check if the folder for an origin's WebSQL databases is empty after trying to delete
2555         all of its files. Currently we check if the deletedDatabaseFileCount matches the number
2556         of files that were in the folder. However, when we delete the actual database file in
2557         DatabaseTracker::deleteDatabaseFileIfEmpty(), the shm and wal files get deleted along with
2558         the database file, but deletedDatabaseFileCount only gets incremented once.
2559
2560         * Storage/WebDatabaseManager.mm:
2561         (+[WebDatabaseManager removeEmptyDatabaseFiles]):
2562         Delete the folder if it is empty.
2563
2564 2017-03-06  Michael Saboff  <msaboff@apple.com>
2565
2566         Unreviewed build fix to add
2567         -isystem $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders
2568         for objective C++ files.
2569
2570         * Configurations/WebKitLegacy.xcconfig:
2571
2572 2017-03-06  Michael Saboff  <msaboff@apple.com>
2573
2574         Take advantage of fast permissions switching of JIT memory for devices that support it
2575         https://bugs.webkit.org/show_bug.cgi?id=169155
2576
2577         Reviewed by Saam Barati.
2578
2579         Updated the Xcode config files to match what is in the JavaScriptCore ones.
2580
2581         * Configurations/FeatureDefines.xcconfig:
2582
2583 2017-03-06  Myles C. Maxfield  <mmaxfield@apple.com>
2584
2585         Expand font-weight and font-stretch to take any number
2586         https://bugs.webkit.org/show_bug.cgi?id=168889
2587
2588         Reviewed by Simon Fraser.
2589
2590         Migrate off old enum types.
2591
2592         * WebCoreSupport/PopupMenuMac.mm:
2593         (PopupMenuMac::populate):
2594         * WebView/WebHTMLView.mm:
2595         (fontNameForDescription):
2596         * WebView/WebView.mm:
2597         (-[WebView updateTextTouchBar]):
2598
2599 2017-03-03  Dean Jackson  <dino@apple.com>
2600
2601         Add WebGPU compile flag and experimental feature flag
2602         https://bugs.webkit.org/show_bug.cgi?id=169161
2603         <rdar://problem/30846689>
2604
2605         Reviewed by Tim Horton.
2606
2607         Add ENABLE_WEBGPU, an experimental feature flag, a RuntimeEnabledFeature,
2608         and an InternalSetting.
2609
2610         * Configurations/FeatureDefines.xcconfig:
2611         * WebView/WebPreferenceKeysPrivate.h:
2612         * WebView/WebPreferences.mm:
2613         (+[WebPreferences initialize]):
2614         (-[WebPreferences webGPUEnabled]):
2615         (-[WebPreferences setWebGPUEnabled:]):
2616         * WebView/WebPreferencesPrivate.h:
2617         * WebView/WebView.mm:
2618         (-[WebView _preferencesChanged:]):
2619
2620 2017-03-03  Alexey Proskuryakov  <ap@apple.com>
2621
2622         Build fix
2623         rdar://problem/30825660
2624
2625         Suggested by Dan Bernstein.
2626
2627         * Configurations/WebKitLegacy.xcconfig:
2628
2629 2017-03-02  Sam Weinig  <sam@webkit.org>
2630
2631         Rename htmlediting.h/cpp to Editing.h/cpp
2632         https://bugs.webkit.org/show_bug.cgi?id=169103
2633
2634         Reviewed by Alex Christensen.
2635
2636         * DOM/DOMUIKitExtensions.mm:
2637         * WebView/WebFrame.mm:
2638         * WebView/WebView.mm:
2639
2640 2017-03-02  Megan Gardner  <megan_gardner@apple.com>
2641
2642         Fix 32-bit
2643         https://bugs.webkit.org/show_bug.cgi?id=169114
2644
2645         Reviewed by Alex Christensen.
2646
2647         * WebView/WebView.mm:
2648
2649 2017-03-02  Megan Gardner  <megan_gardner@apple.com>
2650
2651         More guard fixing
2652         https://bugs.webkit.org/show_bug.cgi?id=169112
2653
2654         Reviewed by Alex Christensen.
2655
2656         Fixed an internal build.
2657
2658         * WebView/WebView.mm:
2659         * WebView/WebViewPrivate.h:
2660
2661 2017-03-02  Megan Gardner  <megan_gardner@apple.com>
2662
2663         Data Interaction build fixes
2664         https://bugs.webkit.org/show_bug.cgi?id=169096
2665
2666         Reviewed by Tim Horton.
2667
2668         Guards weren't all correct, also missed a selector name change.
2669
2670         * WebView/WebView.mm:
2671         (-[WebView _setDataInteractionData:textIndicator:atClientPosition:anchorPoint:action:]):
2672         * WebView/WebViewData.h:
2673         * WebView/WebViewData.mm:
2674         (-[WebViewPrivate dealloc]):
2675
2676 2017-03-02  Alex Christensen  <achristensen@webkit.org>
2677
2678         Continue enabling WebRTC
2679         https://bugs.webkit.org/show_bug.cgi?id=169056
2680
2681         Reviewed by Jon Lee.
2682
2683         * Configurations/FeatureDefines.xcconfig:
2684
2685 2017-03-01  Megan Gardner  <megan_gardner@apple.com>
2686
2687         Data interaction support for WK1
2688         https://bugs.webkit.org/show_bug.cgi?id=169062
2689
2690         Reviewed by Wenson Hsieh.
2691
2692         Support for data interaction in WebKit1
2693
2694         * WebCoreSupport/WebDragClient.mm:
2695         * WebView/WebView.mm:
2696         (-[WebUITextIndicatorData initWithImage:TextIndicatorData:scale:]):
2697         (-[WebUITextIndicatorData initWithImage:scale:]):
2698         (-[WebUITextIndicatorData dealloc]):
2699         (-[WebView _requestStartDataInteraction:globalPosition:]):
2700         (-[WebView _setDataInteractionData:textIndicator:atClientPosition:anchorPoint:action:]):
2701         (-[WebView _getDataInteractionData]):
2702         * WebView/WebViewData.h:
2703         * WebView/WebViewData.mm:
2704         (-[WebViewPrivate dealloc]):
2705         * WebView/WebViewInternal.h:
2706         * WebView/WebViewPrivate.h:
2707
2708 2017-03-02  Youenn Fablet  <youenn@apple.com>
2709
2710         [WebRTC] Activate ICE candidate privacy policy
2711         https://bugs.webkit.org/show_bug.cgi?id=168975
2712
2713         Reviewed by Alex Christensen.
2714
2715         * WebView/WebPreferenceKeysPrivate.h:
2716         * WebView/WebPreferences.mm:
2717         (-[WebPreferences enumeratingAllNetworkInterfacesEnabled]):
2718         (-[WebPreferences setEnumeratingAllNetworkInterfacesEnabled:]):
2719         (-[WebPreferences iceCandidateFilteringEnabled]):
2720         (-[WebPreferences setIceCandidateFilteringEnabled:]):
2721         * WebView/WebPreferencesPrivate.h:
2722
2723 2017-03-01  Alex Christensen  <achristensen@webkit.org>
2724
2725         Unreviewed, rolling out r213259.
2726
2727         Broke an internal build
2728
2729         Reverted changeset:
2730
2731         "Continue enabling WebRTC"
2732         https://bugs.webkit.org/show_bug.cgi?id=169056
2733         http://trac.webkit.org/changeset/213259
2734
2735 2017-03-01  Alex Christensen  <achristensen@webkit.org>
2736
2737         Continue enabling WebRTC
2738         https://bugs.webkit.org/show_bug.cgi?id=169056
2739
2740         Reviewed by Jon Lee.
2741
2742         * Configurations/FeatureDefines.xcconfig:
2743
2744 2017-02-27  Alex Christensen  <achristensen@webkit.org>
2745
2746         Begin enabling WebRTC on 64-bit
2747         https://bugs.webkit.org/show_bug.cgi?id=168915
2748
2749         Reviewed by Eric Carlson.
2750
2751         * Configurations/FeatureDefines.xcconfig:
2752
2753 2017-02-27  Aakash Jain  <aakash_jain@apple.com>
2754
2755         Enable SUPPORTS_TEXT_BASED_API in WebKitLegacy for iOS
2756         https://bugs.webkit.org/show_bug.cgi?id=168919
2757
2758         Reviewed by Tim Horton.
2759
2760         * Configurations/WebKitLegacy.xcconfig: Enable SUPPORTS_TEXT_BASED_API.
2761         * migrate-headers.sh: Run the migrate-headers script for installapi phase.
2762
2763 2017-02-27  Alex Christensen  <achristensen@webkit.org>
2764
2765         [libwebrtc] Enable WebRTC in some Production Builds
2766         https://bugs.webkit.org/show_bug.cgi?id=168858
2767
2768         * Configurations/FeatureDefines.xcconfig:
2769
2770 2017-02-26  Alexey Proskuryakov  <ap@apple.com>
2771
2772         Don't import RetainPtr in WebNotification.h
2773         https://bugs.webkit.org/show_bug.cgi?id=168876
2774
2775         Reviewed by Dan Bernstein.
2776
2777         This is an Objective-C SPI header.
2778
2779         * WebView/WebNotification.h:
2780         * WebView/WebNotification.mm:
2781         (-[WebNotification initWithCoreNotification:notificationID:]):
2782         (-[WebNotification dealloc]):
2783
2784 2017-02-26  Aakash Jain  <aakash_jain@apple.com>
2785
2786         Simplify EXPORTED_SYMBOLS_FILE variables in WebKitLegacy.xcconfig
2787         https://bugs.webkit.org/show_bug.cgi?id=168819
2788
2789         Reviewed by Dan Bernstein.
2790
2791         * Configurations/WebKitLegacy.xcconfig:
2792
2793 2017-02-22  Aakash Jain  <aakash_jain@apple.com>
2794
2795         Export Objective-C symbols for variables in Webkit SPI
2796         https://bugs.webkit.org/show_bug.cgi?id=168758
2797
2798         Reviewed by Alexey Proskuryakov.
2799
2800         * Configurations/WebKitLegacy.xcconfig: using separate .exp file for i386.
2801         * WebKit.exp: Added various Objective-C symbols.
2802
2803 2017-02-22  Aakash Jain  <aakash_jain@apple.com>
2804
2805         Move instance members from WKQuadObject to implementation file
2806         https://bugs.webkit.org/show_bug.cgi?id=168740
2807
2808         Reviewed by Tim Horton.
2809
2810         * DOM/DOM.mm: Moving instance member to implementation file.
2811         * DOM/DOMExtensions.h: Ditto.
2812
2813 2017-02-22  Aakash Jain  <aakash_jain@apple.com>
2814
2815         Move iOS specific symbols to WebKit.ios.exp
2816         https://bugs.webkit.org/show_bug.cgi?id=168726
2817
2818         Reviewed by Alexey Proskuryakov.
2819
2820         * WebKit.exp:
2821
2822 2017-02-21  Youenn Fablet  <youenn@apple.com>
2823
2824         [WebRTC][Mac] Activate libwebrtc
2825         https://bugs.webkit.org/show_bug.cgi?id=167293
2826         <rdar://problem/30401864>
2827
2828         Reviewed by Alex Christensen.
2829
2830         * Configurations/FeatureDefines.xcconfig:
2831
2832 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
2833
2834         Export various NSString symbols from WebFramePrivate.h
2835         https://bugs.webkit.org/show_bug.cgi?id=168702
2836
2837         Reviewed by Alexey Proskuryakov.
2838
2839         * WebKit.exp:
2840
2841 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
2842
2843         Export various NSString symbols from WebPreferencesPrivate.h
2844         https://bugs.webkit.org/show_bug.cgi?id=168701
2845
2846         Reviewed by Alexey Proskuryakov.
2847
2848         * WebKit.exp:
2849
2850 2017-02-21  Joseph Pecoraro  <pecoraro@apple.com>
2851
2852         Add missing WebConsoleMessage string key
2853         https://bugs.webkit.org/show_bug.cgi?id=168690
2854
2855         Reviewed by Alexey Proskuryakov.
2856
2857         * WebKit.exp:
2858         * WebView/WebUIDelegatePrivate.h:
2859         This key has an implementation but was not extern / exported like the others.
2860
2861 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
2862
2863         Export various NSString symbols from WebViewPrivate.h
2864         https://bugs.webkit.org/show_bug.cgi?id=168689
2865
2866         Reviewed by Alexey Proskuryakov.
2867
2868         * WebKit.exp:
2869
2870 2017-02-21  Commit Queue  <commit-queue@webkit.org>
2871
2872         Unreviewed, rolling out r212768.
2873         https://bugs.webkit.org/show_bug.cgi?id=168698
2874
2875         Rolling out since this would break other projects. (Requested
2876         by aakashjain on #webkit).
2877
2878         Reverted changeset:
2879
2880         "[iOS] Remove old WebKit1 MemoryMeasure helper."
2881         https://bugs.webkit.org/show_bug.cgi?id=168675
2882         http://trac.webkit.org/changeset/212768
2883
2884 2017-02-20  Simon Fraser  <simon.fraser@apple.com>
2885
2886         Add support to PlatformCALayer/GraphicsLayerCA for subpixel-antialiased text, with a Setting and a MiniBrowser switch
2887         https://bugs.webkit.org/show_bug.cgi?id=168620
2888         <rdar://problem/30617772>
2889
2890         Reviewed by Tim Horton.
2891
2892         * WebView/WebPreferenceKeysPrivate.h:
2893         * WebView/WebPreferences.mm:
2894         (+[WebPreferences initialize]):
2895         (-[WebPreferences subpixelAntialiasedLayerTextEnabled]):
2896         (-[WebPreferences setSubpixelAntialiasedLayerTextEnabled:]):
2897         * WebView/WebPreferencesPrivate.h:
2898
2899 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
2900
2901         Export various NSString symbols from WebUIDelegatePrivate.h
2902         https://bugs.webkit.org/show_bug.cgi?id=168679
2903
2904         Reviewed by Joseph Pecoraro.
2905
2906         * WebKit.exp:
2907
2908 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
2909
2910         Export symbols for various classes present in webkit SPI
2911         https://bugs.webkit.org/show_bug.cgi?id=168674
2912
2913         Reviewed by Dan Bernstein.
2914
2915         * WebKit.exp:
2916
2917 2017-02-21  Andreas Kling  <akling@apple.com>
2918
2919         [iOS] Remove old WebKit1 MemoryMeasure helper.
2920         <https://webkit.org/b/168675>
2921
2922         Reviewed by Sam Weinig.
2923
2924         * Configurations/WebKitLegacy.xcconfig:
2925         * Misc/WebCache.mm:
2926         (+[WebCache emptyInMemoryResources]):
2927         * WebView/WebView.mm:
2928
2929 2017-02-21  Andreas Kling  <akling@apple.com>
2930
2931         [iOS] WebKit1 should use shared memory pressure handler code.
2932         <https://webkit.org/b/168653>
2933
2934         Reviewed by Antti Koivisto.
2935
2936         Register a WebThread-aware memory callback with the shared MemoryPressureHandler
2937         and get rid of the old iOS WebKit1 specific implementation. Some of it was even
2938         dead code since MobileSafari has been using WebKit2 for quite a while.
2939
2940         * WebView/WebView.h:
2941         * WebView/WebView.mm:
2942         (WebInstallMemoryPressureHandler):
2943         (+[WebView _handleMemoryWarning]): Deleted.
2944         (+[WebView registerForMemoryNotifications]): Deleted.
2945         (+[WebView releaseFastMallocMemoryOnCurrentThread]): Deleted.
2946         (+[WebView garbageCollectNow]): Deleted.
2947         (+[WebView purgeInactiveFontData]): Deleted.
2948         (+[WebView drainLayerPool]): Deleted.
2949         (+[WebView discardAllCompiledCode]): Deleted.
2950         (+[WebView _clearMemoryPressure]): Deleted.
2951         (+[WebView _shouldWaitForMemoryClearMessage]): Deleted.
2952         * WebView/WebViewPrivate.h:
2953
2954 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
2955
2956         Stop exporting interface WebCoreScrollView on iOS
2957         https://bugs.webkit.org/show_bug.cgi?id=168536
2958
2959         Reviewed by Dan Bernstein.
2960
2961         * WebKit.exp: Moved symbol for WebCoreScrollView interface to mac specific file.
2962         * WebKit.mac.exp: Ditto.
2963         * WebView/WebHTMLView.mm: WebCoreScrollView shouldn't be defined for iOS platform.
2964
2965 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
2966
2967         Exclude various mac-specific header files from iOS build
2968         https://bugs.webkit.org/show_bug.cgi?id=168621
2969
2970         Reviewed by Dan Bernstein.
2971
2972         * Configurations/WebKitLegacy.xcconfig:
2973
2974 2017-02-20  Wenson Hsieh  <wenson_hsieh@apple.com>
2975
2976         Add plumbing to the UI process for TextIndicatorData when computing the drag image
2977         https://bugs.webkit.org/show_bug.cgi?id=168583
2978         Work towards <rdar://problem/30313681>
2979
2980         Accounts for changes in WebCore -- see Source/WebCore/ChangeLog for more details.
2981
2982         Reviewed by Tim Horton.
2983
2984         * WebView/WebHTMLView.mm:
2985         (-[WebHTMLView _selectionDraggingImage]):
2986         (-[WebHTMLView selectionImageForcingBlackText:selectionImageForcingBlackText:]):
2987
2988 2017-02-17  Anders Carlsson  <andersca@apple.com>
2989
2990         Add a new drag code path and use it for dragging plain text
2991         https://bugs.webkit.org/show_bug.cgi?id=168534
2992
2993         Reviewed by Geoffrey Garen.
2994
2995         * WebCoreSupport/WebDragClient.h:
2996         Add new members.
2997
2998         * WebCoreSupport/WebDragClient.mm:
2999         (WebDragClient::useLegacyDragClient):
3000         Return false here.
3001
3002         (WebDragClient::beginDrag):
3003         New client member function. Create an NSDraggingItem and use it to begin a dragging session.
3004
3005         * WebView/WebHTMLView.mm:
3006         (-[WebHTMLView draggingSession:sourceOperationMaskForDraggingContext:]):
3007         Get the source operation mask from WebCore.
3008
3009         (-[WebHTMLView draggingSession:endedAtPoint:operation:]):
3010         Send a fake mouse up event.
3011
3012         * WebView/WebHTMLViewInternal.h:
3013         Declare that WebHTMLView conforms to NSDraggingSource.
3014
3015 2017-02-20  Alexey Proskuryakov  <ap@apple.com>
3016
3017         List of WebCore symbols to re-export from WebKitLegacy should be built automatically
3018         https://bugs.webkit.org/show_bug.cgi?id=168342
3019         rdar://problem/26182266
3020
3021         Reviewed by Tim Horton.
3022
3023         * MigrateHeaders.make: On iOS only, process re-exported headers to build a list of
3024         symbols to re-export.
3025
3026 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
3027
3028         Stop exporting DOMTokenList from WebKit
3029         https://bugs.webkit.org/show_bug.cgi?id=168544
3030
3031         Reviewed by Alexey Proskuryakov.
3032
3033         * WebKit.exp:
3034
3035 2017-02-20  Alexey Proskuryakov  <ap@apple.com>
3036
3037         Clean up how WebKit exports _WebCreateFragment
3038         https://bugs.webkit.org/show_bug.cgi?id=168579
3039
3040         Reviewed by Dan Bernstein.
3041
3042         * WebCoreSupport/WebCreateFragmentInternal.h: Added a private header.
3043         * WebCoreSupport/WebEditorClient.mm: Include the new header that declares _WebCreateFragment.
3044
3045 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
3046
3047         Stop exporting DOMNodeFilter
3048         https://bugs.webkit.org/show_bug.cgi?id=168542
3049
3050         Reviewed by Alexey Proskuryakov.
3051
3052         * WebKit.exp:
3053
3054 2017-02-20  Manuel Rego Casasnovas  <rego@igalia.com>
3055
3056         [css-grid] Remove compilation flag ENABLE_CSS_GRID_LAYOUT
3057         https://bugs.webkit.org/show_bug.cgi?id=167693
3058
3059         Reviewed by Sergio Villar Senin.
3060
3061         * Configurations/FeatureDefines.xcconfig:
3062         * WebView/WebPreferences.mm:
3063         (+[WebPreferences initialize]):
3064         * WebView/WebView.mm:
3065         (-[WebView _preferencesChanged:]):
3066
3067 2017-02-15  Brady Eidson  <beidson@apple.com>
3068
3069         Stop backing up localStorage databases to iCloud by default.
3070         <rdar://problem/29045531> and https://bugs.webkit.org/show_bug.cgi?id=168388
3071
3072         Reviewed by Geoffrey Garen.
3073
3074         * Misc/WebKitVersionChecks.h:
3075         * Misc/WebKitVersionChecks.mm: Renamed from Source/WebKit/mac/Misc/WebKitVersionChecks.m.
3076         (WebKitLinkedOnOrAfter):
3077         (setWebKitLinkTimeVersion):
3078         (WebKitLinkTimeVersion):
3079         (linkedOnOrAfter):
3080
3081         * Storage/WebStorageManager.mm:
3082         (WebKitInitializeStorageIfNecessary):
3083
3084 2017-02-16  Daniel Bates  <dabates@apple.com>
3085
3086         Remove Chromium-specific code to call FrameLoaderClient::redirectDataToPlugin(nullptr)
3087         https://bugs.webkit.org/show_bug.cgi?id=168417
3088         <rdar://problem/30541748>
3089
3090         Reviewed by Brent Fulgham.
3091
3092         Update override of FrameLoaderClient::redirectDataToPlugin() to take a Widget& instead of a
3093         Widget* as it is always called with a valid Widget.
3094
3095         * WebCoreSupport/WebFrameLoaderClient.h:
3096         * WebCoreSupport/WebFrameLoaderClient.mm:
3097         (WebFrameLoaderClient::redirectDataToPlugin):
3098         * WebKit.order: Remove symbol for WebFrameLoaderClient::redirectDataToPlugin() that took a Widget*
3099         as it no longer exists. I am unclear if this file is still meaningful as it was last modified in
3100         r180570 (2 years ago) though Xcode still references this ordering file (why?).
3101
3102 2017-02-16  Yusuke Suzuki  <utatane.tea@gmail.com>
3103
3104         [JSC] Drop PassRefPtr in inspector/
3105         https://bugs.webkit.org/show_bug.cgi?id=168420
3106
3107         Reviewed by Alex Christensen.
3108
3109         * WebView/WebScriptDebugger.mm:
3110         (WebScriptDebugger::handlePause):
3111
3112 2017-02-16  Simon Fraser  <simon.fraser@apple.com>
3113
3114         Clean up use of some CALayer-related SPI
3115         https://bugs.webkit.org/show_bug.cgi?id=168401
3116
3117         Reviewed by Tim Horton.
3118
3119         Include CALayer.h not CATiledLayer.h.
3120
3121         * WebInspector/WebNodeHighlight.h:
3122
3123 2017-02-15  Wenson Hsieh  <wenson_hsieh@apple.com>
3124
3125         Fix the build after r212379
3126
3127         Rubber-stamped by Anders Carlsson.
3128
3129         * WebCoreSupport/WebDragClient.mm:
3130         (WebDragClient::startDrag):
3131
3132 2017-02-15  Anders Carlsson  <andersca@apple.com>
3133
3134         Modernize DragClient::startDrag somewhat
3135         https://bugs.webkit.org/show_bug.cgi?id=168379
3136
3137         Reviewed by Tim Horton.
3138
3139         Update for WebCore changes.
3140
3141         * WebCoreSupport/WebDragClient.h:
3142         * WebCoreSupport/WebDragClient.mm:
3143         (WebDragClient::startDrag):
3144
3145 2017-02-14  Dean Jackson  <dino@apple.com>
3146
3147         Rename preferLowPowerWebGLRendering setting to forceWebGLUsesLowPower
3148         https://bugs.webkit.org/show_bug.cgi?id=168339
3149
3150         Reviewed by Simon Fraser.
3151
3152         Use a better name.
3153
3154         * WebView/WebPreferenceKeysPrivate.h:
3155         * WebView/WebPreferences.mm:
3156         (+[WebPreferences initialize]):
3157         (-[WebPreferences forceLowPowerGPUForWebGL]):
3158         (-[WebPreferences setForceLowPowerGPUForWebGL:]):
3159         (-[WebPreferences preferLowPowerWebGLRendering]): Deleted.
3160         (-[WebPreferences setPreferLowPowerWebGLRendering:]): Deleted.
3161         * WebView/WebPreferencesPrivate.h:
3162         * WebView/WebView.mm:
3163         (-[WebView _preferencesChanged:]):
3164
3165 2017-02-14  Chris Dumez  <cdumez@apple.com>
3166
3167         HTML Form Validation bubble should take minimum font size setting into consideration
3168         https://bugs.webkit.org/show_bug.cgi?id=168271
3169         <rdar://problem/29869869>
3170
3171         Reviewed by Simon Fraser.
3172
3173         * WebView/WebView.mm:
3174         (-[WebView _contentsOfUserInterfaceItem:]):
3175         Return font size used in the validation bubble.
3176
3177         (-[WebView showFormValidationMessage:withAnchorRect:]):
3178         Pass minimum font size setting when constructing the validation bubble.
3179
3180 2017-02-14  Anders Carlsson  <andersca@apple.com>
3181
3182         Remove an unused delegate method
3183         https://bugs.webkit.org/show_bug.cgi?id=168328
3184
3185         Reviewed by Wenson Hsieh.
3186
3187         * DefaultDelegates/WebDefaultUIDelegate.m:
3188         (-[WebDefaultUIDelegate webView:shouldBeginDragForElement:dragImage:mouseDownEvent:mouseDraggedEvent:]): Deleted.
3189
3190 2017-02-14  Alexey Proskuryakov  <ap@apple.com>
3191
3192         WebCore shouldn't export SystemMemory.h
3193         https://bugs.webkit.org/show_bug.cgi?id=168285
3194
3195         Reviewed by Alex Christensen.
3196
3197         * MigrateHeaders.make: And WebKit shouldn't re-export it.
3198
3199 2017-02-13  Alexey Proskuryakov  <ap@apple.com>
3200
3201         WebKit shouldn't re-export ScrollTypes.h and WebCoreFrameView.h
3202         https://bugs.webkit.org/show_bug.cgi?id=168282
3203
3204         Reviewed by Dan Bernstein.
3205
3206         * MigrateHeaders.make:
3207
3208 2017-02-12  Dan Bernstein  <mitz@apple.com>
3209
3210         Tried to fix USE(APPLE_INTERNAL_SDK) builds after r212211.
3211
3212         * WebView/WebHTMLView.mm:
3213         (createShareMenuItem): Use non-deprecated method.
3214
3215 2017-02-12  Dan Bernstein  <mitz@apple.com>
3216
3217         [Cocoa] Some -respondsToSelector: checks are unnecessary
3218         https://bugs.webkit.org/show_bug.cgi?id=168183
3219
3220         Reviewed by Tim Horton.
3221
3222         * WebView/WebFullScreenController.mm:
3223         (-[WebFullScreenController applicationDidResignActive:]): Removed check whether NSWindow
3224           responds to -isOnActiveSpace.
3225         (-[WebFullScreenController exitFullScreen]): Ditto.
3226         (-[WebFullScreenController _updateMenuAndDockForFullScreen]): Removed check whether
3227           NSApplication responds to -setPresentationOptions.
3228
3229         * WebView/WebHTMLView.mm:
3230         (createShareMenuItem): Removed unnecessary -respondsToSelector: check.
3231         (-[WebHTMLView otherMouseDown:]): Ditto.
3232
3233         * WebView/WebImmediateActionController.mm:
3234         (-[WebImmediateActionController _clearImmediateActionState]): Ditto.
3235         (-[WebImmediateActionController _animationControllerForDataDetectedText]): Ditto.
3236
3237         * WebView/WebView.mm:
3238         (-[WebView _didStartProvisionalLoadForFrame:]): Removed redundant nil check.
3239         (+[WebView _setCacheModel:]): Removed unnecessary -respondsToSelector: check.
3240
3241 2017-02-10  Daniel Bates  <dabates@apple.com>
3242
3243         Detach frame from document when entering page cache
3244         https://bugs.webkit.org/show_bug.cgi?id=166774
3245         <rdar://problem/29904368>
3246
3247         Reviewed by Chris Dumez.
3248
3249         * WebView/WebPreferenceKeysPrivate.h:
3250         * WebView/WebPreferences.mm:
3251         (+[WebPreferences initialize]):
3252         (-[WebPreferences allowsPageCacheWithWindowOpener]): Deleted.
3253         (-[WebPreferences setAllowsPageCacheWithWindowOpener:]): Deleted.
3254         * WebView/WebPreferencesPrivate.h:
3255         * WebView/WebView.mm:
3256         (-[WebView _preferencesChanged:]):
3257
3258 2017-02-10  Joseph Pecoraro  <pecoraro@apple.com>
3259
3260         [Resource Timing] Enable Resource Timing by default in Tests
3261         https://bugs.webkit.org/show_bug.cgi?id=168145
3262
3263         Reviewed by Ryosuke Niwa.
3264
3265         * WebView/WebPreferenceKeysPrivate.h:
3266         * WebView/WebPreferences.mm:
3267         (+[WebPreferences initialize]):
3268         (-[WebPreferences resourceTimingEnabled]):
3269         (-[WebPreferences setResourceTimingEnabled:]):
3270         * WebView/WebPreferencesPrivate.h:
3271         * WebView/WebView.mm:
3272         (-[WebView _preferencesChanged:]):
3273
3274 2017-02-10  Aakash Jain  <aakash_jain@apple.com>
3275
3276         cleanup WebLocalizableStrings.
3277         https://bugs.webkit.org/show_bug.cgi?id=168078
3278
3279         Reviewed by Alexey Proskuryakov.
3280
3281         * Misc/WebLocalizableStrings.h: Make visibility hidden for WebLocalizableStringsBundle 
3282         as it's for each framework's own consumption, and never needs to be exported.
3283
3284 2017-02-10  Aakash Jain  <aakash_jain@apple.com>
3285
3286         WebResourceLoadDelegatePrivate.h cannot be imported standalone
3287         https://bugs.webkit.org/show_bug.cgi?id=168096
3288
3289         Reviewed by Alexey Proskuryakov.
3290
3291         * WebView/WebResourceLoadDelegatePrivate.h: Change WebNSInteger to NSInteger. 
3292
3293 2017-02-09  Antti Koivisto  <antti@apple.com>
3294
3295         Remove most cases of #if ENABLE(CACHE_PARTITIONING)
3296         https://bugs.webkit.org/show_bug.cgi?id=167990
3297
3298         Reviewed by Sam Weinig.
3299
3300         * Misc/WebCache.mm:
3301         (+[WebCache addImageToCache:forURL:forFrame:]):
3302         (+[WebCache removeImageFromCacheForURL:forFrame:]):
3303         * WebCoreSupport/WebSystemInterface.mm:
3304         (InitWebCoreSystemInterface):
3305
3306 2017-02-07  Alexey Proskuryakov  <ap@apple.com>
3307
3308         Don't migrate WebKit DOM headers in MigrateHeaders.make
3309         https://bugs.webkit.org/show_bug.cgi?id=167608
3310
3311         Reviewed by Darin Adler.
3312
3313         Stop migrating DOM headers that are now in WebKit.
3314
3315         * DOM/DOMDOMImplementation.h: Removed.
3316         * DOM/DOMDOMImplementation.mm: Removed.
3317         * DOM/DOMDOMImplementationInternal.h: Removed.
3318         * DOM/DOMDOMTokenList.h: Removed.
3319         * DOM/DOMDOMTokenList.mm: Removed.
3320         * DOM/DOMDOMTokenListInternal.h: Removed.
3321         * DOM/DOMImplementation.h: Copied from Source/WebKit/mac/DOM/DOMDOMImplementation.h.
3322         * DOM/DOMImplementation.mm: Copied from Source/WebKit/mac/DOM/DOMDOMImplementation.mm.
3323         * DOM/DOMImplementationInternal.h: Copied from Source/WebKit/mac/DOM/DOMDOMImplementationInternal.h.
3324         * DOM/DOMTokenList.h: Copied from Source/WebKit/mac/DOM/DOMDOMTokenList.h.
3325         * DOM/DOMTokenList.mm: Copied from Source/WebKit/mac/DOM/DOMDOMTokenList.mm.
3326         * DOM/DOMTokenListInternal.h: Copied from Source/WebKit/mac/DOM/DOMDOMTokenListInternal.h.
3327         As the files are not in WebCore any more, there is no need to differentiate from
3328         WebCore internal headers with the same name. This makes it possible to make these
3329         headers private using Xcode mechanisms, as opposed to copying with a shell script.
3330
3331         * DOM/DOMElement.mm: Removed "using namespace WebCore". Other DOM implementation
3332         files don't have it.
3333
3334         * DOM/DOMCore.h:
3335         * DOM/DOMDocument.mm:
3336         * DOM/DOMHTMLAnchorElement.mm:
3337         * DOM/DOMHTMLAreaElement.mm:
3338         * DOM/DOMHTMLLinkElement.mm:
3339         * DOM/DOMUtility.mm:
3340         No more "DOMDOM".
3341
3342         * WebKit.exp:
3343         No more "DOMDOM". DOMDOMTokenList was not directly exposed via an SPI header, so
3344         renaming it is likely to be safe.
3345
3346         * MigrateHeaders.make: Don't migrate WebKit headers.
3347
3348         * Configurations/WebKitLegacy.xcconfig: Don't include two iOS specific SPI headers
3349         on macOS.
3350
3351 2017-02-08  Aakash Jain  <aakash_jain@apple.com>
3352
3353         Don't re-export PluginData.h from WebKit
3354         https://bugs.webkit.org/show_bug.cgi?id=168020
3355
3356         Reviewed by Alexey Proskuryakov.
3357
3358         * MigrateHeaders.make: Removed PluginData.h
3359
3360 2017-02-08  Aakash Jain  <aakash_jain@apple.com>
3361
3362         Don't re-export WKUtilities.h from WebKit
3363         https://bugs.webkit.org/show_bug.cgi?id=167977
3364
3365         Reviewed by Alexey Proskuryakov.
3366
3367         * MigrateHeaders.make: Removed WKUtilities.h
3368
3369 2017-02-06  Alex Christensen  <achristensen@webkit.org>
3370
3371         credentials should be partitioned by main document domain
3372         https://bugs.webkit.org/show_bug.cgi?id=166998
3373         rdar://problem/22901123
3374
3375         Reviewed by Brady Eidson.
3376
3377         * Misc/WebDownload.mm:
3378         * Plugins/WebBaseNetscapePluginView.mm:
3379         (WebKit::getAuthenticationInfo):
3380         Don't use partitioned credentials for WebKit1 plugins or downloads.
3381         Downloads should be authenticated before becoming a download anyways.
3382
3383 2017-02-06  Said Abou-Hallawa  <sabouhallawa@apple.com>
3384
3385         Rename AnimationController to CSSAnimationController
3386         https://bugs.webkit.org/show_bug.cgi?id=167829
3387
3388         Reviewed by Simon Fraser.
3389
3390         * WebView/WebFrame.mm:
3391         * WebView/WebView.mm:
3392
3393 2017-02-03  Chris Dumez  <cdumez@apple.com>
3394
3395         Dismiss HTML form validation popover when pressing Escape key
3396         https://bugs.webkit.org/show_bug.cgi?id=167716
3397         <rdar://problem/29872943>
3398
3399         Reviewed by Simon Fraser.
3400
3401         Override ValidationMessageClient::hideAnyValidationMessage().
3402
3403         * WebCoreSupport/WebValidationMessageClient.h:
3404         * WebCoreSupport/WebValidationMessageClient.mm:
3405         (WebValidationMessageClient::hideAnyValidationMessage):
3406
3407 2017-02-02  Wenson Hsieh  <wenson_hsieh@apple.com>
3408
3409         Drag images should be anchored to the mouse location
3410         https://bugs.webkit.org/show_bug.cgi?id=167690
3411         <rdar://problem/30295261>
3412
3413         Reviewed by Enrica Casucci.
3414
3415         Adds some plumbing for the anchor point in the WK1 client layer.
3416
3417         * WebCoreSupport/WebDragClient.h:
3418         * WebCoreSupport/WebDragClient.mm:
3419         (WebDragClient::startDrag):
3420
3421 2017-02-02  Chris Dumez  <cdumez@apple.com>
3422
3423         Rename Node::inDocument() to isConnected()
3424         https://bugs.webkit.org/show_bug.cgi?id=167743
3425
3426         Reviewed by Sam Weinig.
3427
3428         Rename Node::inDocument() to isConnected() to match the DOM specification more closely:
3429         - https://dom.spec.whatwg.org/#connected
3430
3431         * DOM/DOMNode.mm:
3432         (-[DOMNode isConnected]):
3433         * WebView/WebFrame.mm:
3434         (-[WebFrame selectNSRange:onElement:]):
3435
3436 2017-02-02  Chris Dumez  <cdumez@apple.com>
3437
3438         [Crash] com.apple.WebKit.WebContent at WebKit: WebKit::WebPage::fromCorePage()
3439         https://bugs.webkit.org/show_bug.cgi?id=167738
3440         <rdar://problem/30229990>
3441
3442         Reviewed by Andreas Kling.
3443
3444         The BackForwardClient no longer needs to worry about removing HistoryItems
3445         from the PageCache now that WebCore takes care of it.
3446
3447         * History/BackForwardList.mm:
3448         (BackForwardList::close):
3449
3450 2017-02-02  Yongjun Zhang  <yongjun_zhang@apple.com>
3451
3452         In iOS, we should take background assertion when accessing localstorage databases.
3453         https://bugs.webkit.org/show_bug.cgi?id=165478
3454
3455         Move database transaction background task handling code from WebDatabaseManager to
3456         WebCore's WebSQLiteDatabaseTrackerClient.
3457
3458         Reviewed by Brady Eidson.
3459
3460         * Storage/WebDatabaseManager.mm:
3461         * Storage/WebDatabaseManagerInternal.h: Remove a category for background task handling.
3462         * WebCoreSupport/WebApplicationCache.mm:
3463         (+[WebApplicationCache initializeWithBundleIdentifier:]): Use WebCore::WebSQLiteDatabaseTrackerClient.
3464         * WebView/WebView.mm:
3465         (-[WebView _commonInitializationWithFrameName:groupName:]): Ditto.
3466
3467 2017-02-01  Wenson Hsieh  <wenson_hsieh@apple.com>
3468
3469         [WK1] Allow the drag client to be initialized on platforms that do not support drag and drop
3470         https://bugs.webkit.org/show_bug.cgi?id=167695
3471         <rdar://problem/30305390>
3472
3473         Reviewed by Sam Weinig.
3474
3475         Due to the common codepath for destroying the drag client, we need to ensure that the drag client actually
3476         exists, even on platforms that do not support drag and drop, in order to avoid crashing when the DragController
3477         is destroyed.
3478
3479         * WebView/WebView.mm:
3480         (-[WebView _commonInitializationWithFrameName:groupName:]):
3481
3482 2017-01-31  Joseph Pecoraro  <pecoraro@apple.com>
3483
3484         ld: warning: instance method '_setAutofilled:' in category conflicts with same method from another category
3485         https://bugs.webkit.org/show_bug.cgi?id=167684
3486
3487         Reviewed by Dan Bernstein.
3488
3489         * DOM/DOMHTML.mm:
3490         (-[DOMHTMLInputElement _isAutofilled]): Deleted.
3491         (-[DOMHTMLInputElement _setAutofilled:]): Deleted.
3492         Consolidate in the WebDOMOperationsPrivate category.
3493
3494         * DOM/DOMPrivate.h:
3495         Include WebDOMOperationsPrivate header to get other DOM Private categories.
3496
3497         * DOM/WebDOMOperations.mm:
3498         (-[DOMHTMLInputElement _isAutofilled]):
3499         * DOM/WebDOMOperationsPrivate.h:
3500         Include getter alongside the setter.
3501
3502 2017-01-31  Jessie Berlin  <jberlin@webkit.org>
3503
3504         Build fix.
3505
3506         * Misc/WebNSPasteboardExtras.mm:
3507         (+[NSPasteboard _web_setFindPasteboardString:withOwner:]):
3508         (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):
3509         * WebView/WebHTMLView.mm:
3510         (-[WebHTMLView _fontAttributesFromFontPasteboard]):
3511         (-[WebHTMLView copyFont:]):
3512
3513 2017-01-30  Andy Estes  <aestes@apple.com>
3514
3515         [QuickLook] FrameLoaderClient should return the new QuickLookHandleClient it creates
3516         https://bugs.webkit.org/show_bug.cgi?id=167625
3517
3518         Reviewed by Andreas Kling.
3519
3520         * WebCoreSupport/WebFrameLoaderClient.h: Declared createQuickLookHandleClient().
3521         * WebCoreSupport/WebFrameLoaderClient.mm:
3522         (WebFrameLoaderClient::createQuickLookHandleClient): Renamed from didCreateQuickLookHandle().
3523         (WebFrameLoaderClient::didCreateQuickLookHandle): Renamed to createQuickLookHandleClient().
3524
3525 2017-01-30  Chris Dumez  <cdumez@apple.com>
3526
3527         Drop legacy Attributes.isId attribute
3528         https://bugs.webkit.org/show_bug.cgi?id=167603
3529
3530         Reviewed by Ryosuke Niwa.
3531
3532         Keep Attr.isId in ObjC bindings.
3533
3534         * DOM/DOMAttr.mm:
3535         (-[DOMAttr isId]):
3536
3537 2017-01-30  Andreas Kling  <akling@apple.com>
3538
3539         [macOS] WebHTMLView has an internal retain cycle with its flagsChangedEventMonitor.
3540         <https://webkit.org/b/167580>
3541
3542         Reviewed by Antti Koivisto.
3543
3544         Avoid the implicit strong capture of self by keeping it in a __block variable.
3545         Also add code to dealloc to unregister the event monitor, since it will otherwise leak.
3546         This fixes huge WebHTMLView leaks seen on the leaks bot.
3547
3548         * WebView/WebHTMLView.mm:
3549         (-[WebHTMLViewPrivate dealloc]):
3550         (-[WebHTMLView viewDidMoveToWindow]):
3551
3552 2017-01-29  Andy Estes  <aestes@apple.com>
3553
3554         [QuickLook] Add a WebPreference to enable saving QuickLook documents in WebKitLegacy
3555         https://bugs.webkit.org/show_bug.cgi?id=167563
3556         <rdar://problem/30253207>
3557
3558         Reviewed by Andreas Kling.
3559
3560         Instead of only saving QuickLook documents to a temporary file when the client is
3561         MobileSafari, base this decision on a WebPreference that clients can choose to enable.
3562
3563         This also changes the SPI for accessing the temporary file path and UTI. Instead of
3564         -[WebView quickLookContentForURL:], which requires the client to pass the response URL of
3565         the frame that saved the QuickLook document, the content dictionary is now stored as a
3566         property of WebDataSource.
3567
3568         This also removes the manual lifetime management of the QLPreviewConverter from
3569         QuickLookDocumentWriter. The QLPreviewConverter is kept alive by DocumentLoader these days,
3570         which ensures it lives long enough to respond to subresource requests.
3571
3572         New API test: QuickLook.LegacyQuickLookContent
3573
3574         * WebCoreSupport/WebFrameLoaderClient.mm:
3575         (WebFrameLoaderClient::didCreateQuickLookHandle): Moved the logic of deciding whether to
3576         write a temporary file to here from the QuickLookDocumentWriter constructor.
3577         * WebView/WebDataSource.mm: Declared _quickLookContent.
3578         (-[WebDataSource _quickLookContent]):
3579         (-[WebDataSource _setQuickLookContent:]):
3580         * WebView/WebDataSourceInternal.h: Overrode _quickLookContent as a read/write property.
3581         * WebView/WebDataSourcePrivate.h: Declared _quickLookContent as a readonly property.
3582         * WebView/WebPreferenceKeysPrivate.h: Defined WebKitQuickLookDocumentSavingPreferenceKey.
3583         * WebView/WebPreferences.mm:
3584         (-[WebPreferences quickLookDocumentSavingEnabled]):
3585         (-[WebPreferences setQuickLookDocumentSavingEnabled:]):
3586         * WebView/WebPreferencesPrivate.h: Declared property quickLookDocumentSavingEnabled.
3587         * WebView/WebView.mm:
3588         (-[WebView quickLookContentForURL:]): Changed to always return nil.
3589         * WebView/WebViewPrivate.h: Added a comment stating that clients should use
3590         -[WebDataSource _quickLookContent] instead.
3591
3592 2017-01-28  Yoav Weiss  <yoav@yoav.ws>
3593
3594         Add Link Preload as an off-by-default experimental feature menu item.
3595         https://bugs.webkit.org/show_bug.cgi?id=167201
3596
3597         Reviewed by Ryosuke Niwa.
3598
3599         * WebView/WebPreferenceKeysPrivate.h:
3600         * WebView/WebPreferences.mm:
3601         (-[WebPreferences linkPreloadEnabled]):
3602         (-[WebPreferences setLinkPreloadEnabled:]):
3603         * WebView/WebPreferencesPrivate.h: