WebRTC tests gardening
[WebKit-https.git] / Source / WebKit / mac / ChangeLog
1 2017-04-06  Youenn Fablet  <youenn@apple.com>
2
3         WebRTC tests gardening
4         https://bugs.webkit.org/show_bug.cgi?id=170508
5
6         Reviewed by Eric Carlson.
7
8         * Configurations/FeatureDefines.xcconfig:
9
10 2017-04-04  Megan Gardner  <megan_gardner@apple.com>
11
12         Fix leaks in WebUITextIndicatorData
13         https://bugs.webkit.org/show_bug.cgi?id=170480
14
15         Reviewed by Wenson Hsieh.
16
17         Removes extraneous retains.
18
19         * WebView/WebView.mm:
20         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
21
22 2017-04-04  Tim Horton  <timothy_horton@apple.com>
23
24         [Mac] -[WKWebView findMatchesForString:relativeToMatch:findOptions:maxResults:resultCollector:] invokes the resultCollector with didWrap = NO even when it wraps
25         https://bugs.webkit.org/show_bug.cgi?id=165801
26         <rdar://problem/29649535>
27
28         Reviewed by Wenson Hsieh.
29
30         * WebView/WebView.mm:
31         (incrementFrame):
32         Adjust to the new CanWrap enum.
33
34 2017-03-27  Joseph Pecoraro  <pecoraro@apple.com>
35
36         Web Inspector: Saving files should not suggest the top level directory
37         https://bugs.webkit.org/show_bug.cgi?id=170085
38         <rdar://problem/30197794>
39
40         Reviewed by Matt Baker.
41
42         * WebCoreSupport/WebInspectorClient.mm:
43         (WebInspectorFrontendClient::save):
44         Don't set panel.directoryURL unless we have a good suggestion.
45
46 2017-03-24  Wenson Hsieh  <wenson_hsieh@apple.com>
47
48         [WK2] Add a UI delegate SPI hook to enable or disable navigation on drop
49         https://bugs.webkit.org/show_bug.cgi?id=169168
50         <rdar://problem/30688374>
51
52         Reviewed by Tim Horton.
53
54         Refactors WebDragClient::actionMaskForDrag to take platform data only, rather than the entire DragData. See the
55         WebCore ChangeLog entry for more details. Also renames WebDefaultUIDelegate.m to WebDefaultUIDelegate.mm, since
56         we need to import a C++ header for linkedOnOrAfter().
57
58         The default delegate implementation of webView:dragDestinationActionMaskForDraggingInfo: now checks if the current
59         application is linking against 10.12 or earlier, and if so, will allow any drag destination action instead of
60         the new default value of everything but DragDestinationActionLoad.
61
62         * DefaultDelegates/WebDefaultUIDelegate.mm: Renamed from Source/WebKit/mac/DefaultDelegates/WebDefaultUIDelegate.m.
63         (-[WebDefaultUIDelegate webView:dragDestinationActionMaskForDraggingInfo:]):
64         * Misc/WebKitVersionChecks.h:
65         * WebCoreSupport/WebDragClient.h:
66         * WebCoreSupport/WebDragClient.mm:
67         (WebDragClient::actionMaskForDrag): Deleted.
68         * WebView/WebView.mm:
69         (-[WebView draggingEntered:]):
70         (-[WebView draggingUpdated:]):
71
72 2017-03-21  Wenson Hsieh  <wenson_hsieh@apple.com>
73
74         Add support for showing the platform data interaction caret
75         https://bugs.webkit.org/show_bug.cgi?id=169898
76         <rdar://problem/31146295>
77
78         Reviewed by Beth Dakin.
79
80         Plumb the dataInteractionCaretRect through WebView SPI to WebKit1 clients.
81
82         * WebView/WebView.mm:
83         (-[WebView _dataInteractionCaretRect]):
84         * WebView/WebViewPrivate.h:
85
86 2017-03-22  Dan Bernstein  <mitz@apple.com>
87
88         [iOS] downloadableBinaryFontsEnabled is set to false in -initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:
89         https://bugs.webkit.org/show_bug.cgi?id=169967
90         <rdar://problem/30406898>
91
92         Reviewed by Anders Carlsson.
93
94         * WebView/WebView.mm:
95         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]): Removed call to
96           Settings::downloadableBinaryFontsEnabled. The default is true.
97
98 2017-03-22  Andy Estes  <aestes@apple.com>
99
100         [QuickLook] Rename QuickLookHandle to PreviewLoader
101         https://bugs.webkit.org/show_bug.cgi?id=169961
102
103         Reviewed by Andreas Kling.
104
105         * WebCoreSupport/WebFrameLoaderClient.h:
106         * WebCoreSupport/WebFrameLoaderClient.mm:
107         (WebFrameLoaderClient::createPreviewLoaderClient):
108         (WebFrameLoaderClient::createQuickLookHandleClient): Deleted.
109
110 2017-03-21  Anders Carlsson  <andersca@apple.com>
111
112         Remove bogus availability annotations from DOM SPI headers.
113         rdar://problem/31015675
114
115         Rubber-stamped by Dan Bernstein.
116
117         * DOM/DOMHTMLMediaElement.h:
118         * DOM/DOMHTMLVideoElement.h:
119         * DOM/DOMMediaError.h:
120         * DOM/DOMTextEvent.h:
121         * DOM/DOMTimeRanges.h:
122         * DOM/DOMTokenList.h:
123
124 2017-03-19  Wenson Hsieh  <wenson_hsieh@apple.com>
125
126         Teach TextIndicator to estimate the background color of the given Range
127         https://bugs.webkit.org/show_bug.cgi?id=169869
128         <rdar://problem/31127272>
129
130         Reviewed by Anders Carlsson and Simon Fraser.
131
132         Plumb the estimated background color for WebKit1 clients through a new property in WebUITextIndicatorData.
133
134         * WebView/WebView.mm:
135         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
136         (-[WebUITextIndicatorData dealloc]):
137         * WebView/WebViewPrivate.h:
138
139 2017-03-20  Dan Bernstein  <mitz@apple.com>
140
141         [Xcode] Incremental builds of WebKitLegacy are slow because of the Postprocess Headers phase
142         https://bugs.webkit.org/show_bug.cgi?id=169861
143
144         Reviewed by Sam Weinig.
145
146         * MigrateHeaders.make: Touch the PrivateHeaders directory when migrating a header into it.
147         * postprocess-headers.sh: Preserve the timestamp on the headers directories. Write out the
148           timestamp file used by the Xcode project to determine whether to run the script.
149
150 2017-03-19  Alexey Proskuryakov  <ap@apple.com>
151
152         WebHTMLView is useless as WebResourceHandler
153         https://bugs.webkit.org/show_bug.cgi?id=169857
154
155         Reviewed by Dan Bernstein.
156
157         * WebView/WebHTMLView.mm:
158         (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
159         WebHTMLView doesnt implement any of WebResourceHandler methods.
160
161 2017-03-17  Michael Saboff  <msaboff@apple.com>
162
163         Use USE_INTERNAL_SDK to compute ENABLE_FAST_JIT_PERMISSIONS instead of HAVE_INTERNAL_SDK
164         https://bugs.webkit.org/show_bug.cgi?id=169817
165
166         Reviewed by Filip Pizlo.
167
168         * Configurations/FeatureDefines.xcconfig:
169
170 2017-03-17  Antti Koivisto  <antti@apple.com>
171
172         Add a reload policy where only expired subresources are revalidated
173         https://bugs.webkit.org/show_bug.cgi?id=169756
174
175         Reviewed by Andreas Kling.
176
177         * WebView/WebFrame.mm:
178         (toWebFrameLoadType):
179         (-[WebFrame reload]):
180         (-[WebFrame reloadFromOrigin]):
181
182 2017-03-17  Wenson Hsieh  <wenson_hsieh@apple.com>
183
184         [WK1] Support animated transitions when performing a data interaction operation
185         https://bugs.webkit.org/show_bug.cgi?id=169805
186         <rdar://problem/31045767>
187
188         Reviewed by Beth Dakin and Megan Gardner.
189
190         Adds WebKit1 support for animated transitions when performing a data interaction operation. See per-method changes
191         for more details.
192
193         * DOM/DOMElement.h:
194         * DOM/DOMElement.mm:
195         (-[DOMElement boundsInRootViewSpace]):
196
197         Introduce -[DOMElement boundsInRootViewSpace], which returns the bounds of the element in root view coordinates.
198
199         * WebCoreSupport/WebDragClient.h:
200         (): Deleted.
201         * WebCoreSupport/WebDragClient.mm:
202         (WebDragClient::didConcludeEditDrag):
203
204         Add boilerplate plumbing.
205
206         * WebView/WebView.mm:
207         (-[WebUITextIndicatorData initWithImage:textIndicatorData:scale:]):
208
209         Add contentImageWithoutSelection and contentImageWithoutSelectionRectInRootViewCoordinates to WebUITextIndicatorData.
210
211         (floatRectsForCGRectArray):
212         (-[WebView _createImageWithPlatterForImage:boundingRect:contentScaleFactor:clippingRects:]):
213
214         Introduces a SPI helper method in WebView that clients can use to generate an image of a text platter given an
215         image of some text, as well as clipping rects to apply to the image.
216
217         (-[WebView _dataOperationTextIndicator]):
218
219         Add SPI to fetch the text indicator used to drive animations for the current data operation.
220
221         (-[WebView _didConcludeEditDataInteraction]):
222         * WebView/WebViewData.h:
223         * WebView/WebViewInternal.h:
224         * WebView/WebViewPrivate.h:
225
226 2017-03-16  Simon Fraser  <simon.fraser@apple.com>
227
228         Improve the system tracing points
229         https://bugs.webkit.org/show_bug.cgi?id=169790
230
231         Reviewed by Zalan Bujtas.
232
233         Use a more cohesive set of system trace points that give a good overview of what
234         WebKit is doing. Added points for resource loading, render tree building, sync messages
235         to the web process, async image decode, WASM and fetching cookies.
236
237         * WebView/WebHTMLView.mm:
238         (-[WebHTMLView drawRect:]):
239
240 2017-03-16  Youenn Fablet  <youenn@apple.com>
241
242         Wrap legacy WebRTC API in runtime flag
243         https://bugs.webkit.org/show_bug.cgi?id=169646
244
245         Reviewed by Alex Christensen.
246
247         * WebView/WebPreferenceKeysPrivate.h:
248         * WebView/WebPreferences.mm:
249         (+[WebPreferences initialize]):
250         (-[WebPreferences webRTCLegacyAPIEnabled]):
251         (-[WebPreferences setWebRTCLegacyAPIEnabled:]):
252         * WebView/WebPreferencesPrivate.h:
253         * WebView/WebView.mm:
254         (-[WebView _preferencesChanged:]):
255
256 2017-03-14  Megan Gardner  <megan_gardner@apple.com>
257
258         Correctly export WebItemProviderPasteboard
259         https://bugs.webkit.org/show_bug.cgi?id=169578
260
261         Reviewed by Tim Horton.
262
263         * MigrateHeaders.make:
264
265 2017-03-14  Wenson Hsieh  <wenson_hsieh@apple.com>
266
267         [WK2] Data interaction tests occasionally hit assertions in debug builds
268         https://bugs.webkit.org/show_bug.cgi?id=169002
269         <rdar://problem/30994806>
270
271         Reviewed by Tim Horton.
272
273         Renames setIgnoreCompositionSelectionChange to setIgnoreSelectionChanges. See WebCore ChangeLog for more details.
274
275         * WebView/WebHTMLView.mm:
276         (-[WebHTMLView _updateSelectionForInputManager]):
277         * WebView/WebView.mm:
278         (-[WebView updateTextTouchBar]):
279
280 2017-03-13  Anders Carlsson  <andersca@apple.com>
281
282         Fix build warnings.
283
284         * WebCoreSupport/WebInspectorClient.mm:
285         (WebInspectorFrontendClient::save):
286         (-[WebInspectorWindowController webView:runOpenPanelForFileButtonWithResultListener:allowMultipleFiles:]):
287
288 2017-03-11  Brady Eidson  <beidson@apple.com>
289
290         Cleanup "addCookie" and its sole user.
291         https://bugs.webkit.org/show_bug.cgi?id=169486
292
293         Reviewed by Brian Burg.
294
295         * WebCoreSupport/WebPlatformStrategies.h:
296         * WebCoreSupport/WebPlatformStrategies.mm:
297         (WebPlatformStrategies::addCookie): Deleted.
298
299 2017-03-10  Alex Christensen  <achristensen@webkit.org>
300
301         Fix watch and tv builds after r213294
302         https://bugs.webkit.org/show_bug.cgi?id=169508
303
304         Reviewed by Dan Bernstein.
305
306         * Configurations/FeatureDefines.xcconfig:
307
308 2017-03-10  Alex Christensen  <achristensen@webkit.org>
309
310         Fix CMake build.
311
312         * WebView/WebNotification.h:
313         Don't assume we have already included something that includes NSObject.h.
314
315 2017-03-09  Daniel Bates  <dabates@apple.com>
316
317         Guard Credential Management implementation behind a runtime enabled feature flag
318         https://bugs.webkit.org/show_bug.cgi?id=169364
319         <rdar://problem/30957425>
320
321         Reviewed by Brent Fulgham.
322
323         Add WebKit preference for Credential Management (disabled by default).
324
325         * WebView/WebPreferenceKeysPrivate.h:
326         * WebView/WebPreferences.mm:
327         (+[WebPreferences initialize]):
328         (-[WebPreferences credentialManagementEnabled]): Added.
329         (-[WebPreferences setCredentialManagementEnabled:]): Added.
330         * WebView/WebPreferencesPrivate.h:
331         * WebView/WebView.mm:
332         (-[WebView _preferencesChanged:]):
333
334 2017-03-09  Anders Carlsson  <andersca@apple.com>
335
336         Add delegate support to WebCore
337         https://bugs.webkit.org/show_bug.cgi?id=169427
338         Part of rdar://problem/28880714.
339
340         Reviewed by Geoffrey Garen.
341
342         * Configurations/FeatureDefines.xcconfig:
343         Add feature define.
344
345 2017-03-08  Megan Gardner  <megan_gardner@apple.com>
346
347         Fix DataInteraction guards
348         https://bugs.webkit.org/show_bug.cgi?id=169404
349
350         Reviewed by Wenson Hsieh.
351
352         * WebCoreSupport/WebDragClient.mm:
353
354 2017-03-08  Wenson Hsieh  <wenson_hsieh@apple.com>
355
356         Add plumbing for WebCore to notify WebKit2 when an edit drag has concluded
357         https://bugs.webkit.org/show_bug.cgi?id=169392
358         <rdar://problem/30882974>
359
360         Reviewed by Tim Horton.
361
362         Add a stub implementation of WebDragClient::didConcludeEditDrag.
363
364         * WebCoreSupport/WebDragClient.h:
365
366 2017-03-08  Anders Carlsson  <andersca@apple.com>
367
368         Simplify the PaymentCoordinator interface
369         https://bugs.webkit.org/show_bug.cgi?id=169382
370         Part of rdar://problem/28880714.
371
372         Reviewed by Tim Horton.
373
374         Update for PaymentCoordinatorClient changes.
375
376         * WebCoreSupport/WebPaymentCoordinatorClient.h:
377         * WebCoreSupport/WebPaymentCoordinatorClient.mm:
378         (WebPaymentCoordinatorClient::completeShippingMethodSelection):
379         (WebPaymentCoordinatorClient::completeShippingContactSelection):
380         (WebPaymentCoordinatorClient::completePaymentMethodSelection):
381         (WebPaymentCoordinatorClient::completePaymentSession):
382
383 2017-03-08  Megan Gardner  <megan_gardner@apple.com>
384
385         Fix for dependency fix
386         https://bugs.webkit.org/show_bug.cgi?id=169369
387
388         Reviewed by Beth Dakin.
389
390         * WebView/WebViewPrivate.h:
391
392 2017-03-07  Megan Gardner  <megan_gardner@apple.com>
393
394         Fix Project Dependency
395         https://bugs.webkit.org/show_bug.cgi?id=169340
396
397         Unreviewed Dependency Fix.
398
399         * WebView/WebViewPrivate.h:
400
401 2017-03-07  Alexey Proskuryakov  <ap@apple.com>
402
403         WebKitLegacy should re-export symbols from WebCore on watchos and tvos
404         https://bugs.webkit.org/show_bug.cgi?id=169341
405         <rdar://problem/30913788>
406
407         Reviewed by Dan Bernstein.
408
409         * MigrateHeaders.make:
410
411 2017-03-07  Simon Fraser  <simon.fraser@apple.com>
412
413         Have fixedPositionCreatesStackingContext be on by default everywhere
414         https://bugs.webkit.org/show_bug.cgi?id=169334
415
416         Reviewed by Zalan Bujtas.
417
418         It makes no sense to have web-exposed CSS functionality be different based on setting,
419         and other browser are now aligned with having position:fixed create stacking context.
420
421         So remove the fixedPositionCreatesStackingContext setting and have StyleResolver::adjustRenderStyle()
422         always force stacking context for position:fixed.
423
424         * WebView/WebView.mm:
425         (-[WebView _preferencesChanged:]):
426
427 2017-03-06  Simon Fraser  <simon.fraser@apple.com>
428
429         Initialize the subpixelAntialiasedLayerTextEnabled Setting in WebKit1
430         https://bugs.webkit.org/show_bug.cgi?id=169230
431
432         Reviewed by Tim Horton.
433
434         * WebView/WebView.mm:
435         (-[WebView _preferencesChanged:]):
436
437 2017-03-07  Simon Fraser  <simon.fraser@apple.com>
438
439         Enable SubpixelAntialiasedLayerTextEnabled by default on some versions of macOS
440         https://bugs.webkit.org/show_bug.cgi?id=169329
441
442         Reviewed by Tim Horton.
443
444         If the macOS version is > 101300, enable subpixelAntialiasedLayerTextEnabled.
445
446         * WebView/WebPreferences.mm:
447         (+[WebPreferences initialize]):
448
449 2017-03-07  Megan Gardner  <megan_gardner@apple.com>
450
451         Additional DataInteraction Support
452         https://bugs.webkit.org/show_bug.cgi?id=169316
453         <rdar://problem/30884234>
454
455         Reviewed by Wenson Hsieh.
456
457         Add stub implementations to WebView for methods that handle data interaction
458
459         * WebView/WebView.mm:
460         (-[WebView _enteredDataInteraction:client:global:operation:]):
461         (-[WebView _updatedDataInteraction:client:global:operation:]):
462         (-[WebView _exitedDataInteraction:client:global:operation:]):
463         (-[WebView _performDataInteraction:client:global:operation:]):
464         (-[WebView _endedDataInteraction:global:]):
465         * WebView/WebViewPrivate.h:
466
467 2017-03-07  Dean Jackson  <dino@apple.com>
468
469         Some platforms won't be able to create a GPUDevice
470         https://bugs.webkit.org/show_bug.cgi?id=169314
471         <rdar://problems/30907521>
472
473         Reviewed by Jon Lee.
474
475         Disable WEB_GPU on the iOS Simulator.
476
477         * Configurations/FeatureDefines.xcconfig:
478
479 2017-03-07  Maureen Daum  <mdaum@apple.com>
480
481         Correctly check for an empty database file.
482         <rdar://problem/30542242> Removing Website Data not working (WebSQL directories being left behind)
483         https://bugs.webkit.org/show_bug.cgi?id=169256
484
485         Reviewed by Brady Eidson.
486
487         Check if the folder for an origin's WebSQL databases is empty after trying to delete
488         all of its files. Currently we check if the deletedDatabaseFileCount matches the number
489         of files that were in the folder. However, when we delete the actual database file in
490         DatabaseTracker::deleteDatabaseFileIfEmpty(), the shm and wal files get deleted along with
491         the database file, but deletedDatabaseFileCount only gets incremented once.
492
493         * Storage/WebDatabaseManager.mm:
494         (+[WebDatabaseManager removeEmptyDatabaseFiles]):
495         Delete the folder if it is empty.
496
497 2017-03-06  Michael Saboff  <msaboff@apple.com>
498
499         Unreviewed build fix to add
500         -isystem $(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders
501         for objective C++ files.
502
503         * Configurations/WebKitLegacy.xcconfig:
504
505 2017-03-06  Michael Saboff  <msaboff@apple.com>
506
507         Take advantage of fast permissions switching of JIT memory for devices that support it
508         https://bugs.webkit.org/show_bug.cgi?id=169155
509
510         Reviewed by Saam Barati.
511
512         Updated the Xcode config files to match what is in the JavaScriptCore ones.
513
514         * Configurations/FeatureDefines.xcconfig:
515
516 2017-03-06  Myles C. Maxfield  <mmaxfield@apple.com>
517
518         Expand font-weight and font-stretch to take any number
519         https://bugs.webkit.org/show_bug.cgi?id=168889
520
521         Reviewed by Simon Fraser.
522
523         Migrate off old enum types.
524
525         * WebCoreSupport/PopupMenuMac.mm:
526         (PopupMenuMac::populate):
527         * WebView/WebHTMLView.mm:
528         (fontNameForDescription):
529         * WebView/WebView.mm:
530         (-[WebView updateTextTouchBar]):
531
532 2017-03-03  Dean Jackson  <dino@apple.com>
533
534         Add WebGPU compile flag and experimental feature flag
535         https://bugs.webkit.org/show_bug.cgi?id=169161
536         <rdar://problem/30846689>
537
538         Reviewed by Tim Horton.
539
540         Add ENABLE_WEBGPU, an experimental feature flag, a RuntimeEnabledFeature,
541         and an InternalSetting.
542
543         * Configurations/FeatureDefines.xcconfig:
544         * WebView/WebPreferenceKeysPrivate.h:
545         * WebView/WebPreferences.mm:
546         (+[WebPreferences initialize]):
547         (-[WebPreferences webGPUEnabled]):
548         (-[WebPreferences setWebGPUEnabled:]):
549         * WebView/WebPreferencesPrivate.h:
550         * WebView/WebView.mm:
551         (-[WebView _preferencesChanged:]):
552
553 2017-03-03  Alexey Proskuryakov  <ap@apple.com>
554
555         Build fix
556         rdar://problem/30825660
557
558         Suggested by Dan Bernstein.
559
560         * Configurations/WebKitLegacy.xcconfig:
561
562 2017-03-02  Sam Weinig  <sam@webkit.org>
563
564         Rename htmlediting.h/cpp to Editing.h/cpp
565         https://bugs.webkit.org/show_bug.cgi?id=169103
566
567         Reviewed by Alex Christensen.
568
569         * DOM/DOMUIKitExtensions.mm:
570         * WebView/WebFrame.mm:
571         * WebView/WebView.mm:
572
573 2017-03-02  Megan Gardner  <megan_gardner@apple.com>
574
575         Fix 32-bit
576         https://bugs.webkit.org/show_bug.cgi?id=169114
577
578         Reviewed by Alex Christensen.
579
580         * WebView/WebView.mm:
581
582 2017-03-02  Megan Gardner  <megan_gardner@apple.com>
583
584         More guard fixing
585         https://bugs.webkit.org/show_bug.cgi?id=169112
586
587         Reviewed by Alex Christensen.
588
589         Fixed an internal build.
590
591         * WebView/WebView.mm:
592         * WebView/WebViewPrivate.h:
593
594 2017-03-02  Megan Gardner  <megan_gardner@apple.com>
595
596         Data Interaction build fixes
597         https://bugs.webkit.org/show_bug.cgi?id=169096
598
599         Reviewed by Tim Horton.
600
601         Guards weren't all correct, also missed a selector name change.
602
603         * WebView/WebView.mm:
604         (-[WebView _setDataInteractionData:textIndicator:atClientPosition:anchorPoint:action:]):
605         * WebView/WebViewData.h:
606         * WebView/WebViewData.mm:
607         (-[WebViewPrivate dealloc]):
608
609 2017-03-02  Alex Christensen  <achristensen@webkit.org>
610
611         Continue enabling WebRTC
612         https://bugs.webkit.org/show_bug.cgi?id=169056
613
614         Reviewed by Jon Lee.
615
616         * Configurations/FeatureDefines.xcconfig:
617
618 2017-03-01  Megan Gardner  <megan_gardner@apple.com>
619
620         Data interaction support for WK1
621         https://bugs.webkit.org/show_bug.cgi?id=169062
622
623         Reviewed by Wenson Hsieh.
624
625         Support for data interaction in WebKit1
626
627         * WebCoreSupport/WebDragClient.mm:
628         * WebView/WebView.mm:
629         (-[WebUITextIndicatorData initWithImage:TextIndicatorData:scale:]):
630         (-[WebUITextIndicatorData initWithImage:scale:]):
631         (-[WebUITextIndicatorData dealloc]):
632         (-[WebView _requestStartDataInteraction:globalPosition:]):
633         (-[WebView _setDataInteractionData:textIndicator:atClientPosition:anchorPoint:action:]):
634         (-[WebView _getDataInteractionData]):
635         * WebView/WebViewData.h:
636         * WebView/WebViewData.mm:
637         (-[WebViewPrivate dealloc]):
638         * WebView/WebViewInternal.h:
639         * WebView/WebViewPrivate.h:
640
641 2017-03-02  Youenn Fablet  <youenn@apple.com>
642
643         [WebRTC] Activate ICE candidate privacy policy
644         https://bugs.webkit.org/show_bug.cgi?id=168975
645
646         Reviewed by Alex Christensen.
647
648         * WebView/WebPreferenceKeysPrivate.h:
649         * WebView/WebPreferences.mm:
650         (-[WebPreferences enumeratingAllNetworkInterfacesEnabled]):
651         (-[WebPreferences setEnumeratingAllNetworkInterfacesEnabled:]):
652         (-[WebPreferences iceCandidateFilteringEnabled]):
653         (-[WebPreferences setIceCandidateFilteringEnabled:]):
654         * WebView/WebPreferencesPrivate.h:
655
656 2017-03-01  Alex Christensen  <achristensen@webkit.org>
657
658         Unreviewed, rolling out r213259.
659
660         Broke an internal build
661
662         Reverted changeset:
663
664         "Continue enabling WebRTC"
665         https://bugs.webkit.org/show_bug.cgi?id=169056
666         http://trac.webkit.org/changeset/213259
667
668 2017-03-01  Alex Christensen  <achristensen@webkit.org>
669
670         Continue enabling WebRTC
671         https://bugs.webkit.org/show_bug.cgi?id=169056
672
673         Reviewed by Jon Lee.
674
675         * Configurations/FeatureDefines.xcconfig:
676
677 2017-02-27  Alex Christensen  <achristensen@webkit.org>
678
679         Begin enabling WebRTC on 64-bit
680         https://bugs.webkit.org/show_bug.cgi?id=168915
681
682         Reviewed by Eric Carlson.
683
684         * Configurations/FeatureDefines.xcconfig:
685
686 2017-02-27  Aakash Jain  <aakash_jain@apple.com>
687
688         Enable SUPPORTS_TEXT_BASED_API in WebKitLegacy for iOS
689         https://bugs.webkit.org/show_bug.cgi?id=168919
690
691         Reviewed by Tim Horton.
692
693         * Configurations/WebKitLegacy.xcconfig: Enable SUPPORTS_TEXT_BASED_API.
694         * migrate-headers.sh: Run the migrate-headers script for installapi phase.
695
696 2017-02-27  Alex Christensen  <achristensen@webkit.org>
697
698         [libwebrtc] Enable WebRTC in some Production Builds
699         https://bugs.webkit.org/show_bug.cgi?id=168858
700
701         * Configurations/FeatureDefines.xcconfig:
702
703 2017-02-26  Alexey Proskuryakov  <ap@apple.com>
704
705         Don't import RetainPtr in WebNotification.h
706         https://bugs.webkit.org/show_bug.cgi?id=168876
707
708         Reviewed by Dan Bernstein.
709
710         This is an Objective-C SPI header.
711
712         * WebView/WebNotification.h:
713         * WebView/WebNotification.mm:
714         (-[WebNotification initWithCoreNotification:notificationID:]):
715         (-[WebNotification dealloc]):
716
717 2017-02-26  Aakash Jain  <aakash_jain@apple.com>
718
719         Simplify EXPORTED_SYMBOLS_FILE variables in WebKitLegacy.xcconfig
720         https://bugs.webkit.org/show_bug.cgi?id=168819
721
722         Reviewed by Dan Bernstein.
723
724         * Configurations/WebKitLegacy.xcconfig:
725
726 2017-02-22  Aakash Jain  <aakash_jain@apple.com>
727
728         Export Objective-C symbols for variables in Webkit SPI
729         https://bugs.webkit.org/show_bug.cgi?id=168758
730
731         Reviewed by Alexey Proskuryakov.
732
733         * Configurations/WebKitLegacy.xcconfig: using separate .exp file for i386.
734         * WebKit.exp: Added various Objective-C symbols.
735
736 2017-02-22  Aakash Jain  <aakash_jain@apple.com>
737
738         Move instance members from WKQuadObject to implementation file
739         https://bugs.webkit.org/show_bug.cgi?id=168740
740
741         Reviewed by Tim Horton.
742
743         * DOM/DOM.mm: Moving instance member to implementation file.
744         * DOM/DOMExtensions.h: Ditto.
745
746 2017-02-22  Aakash Jain  <aakash_jain@apple.com>
747
748         Move iOS specific symbols to WebKit.ios.exp
749         https://bugs.webkit.org/show_bug.cgi?id=168726
750
751         Reviewed by Alexey Proskuryakov.
752
753         * WebKit.exp:
754
755 2017-02-21  Youenn Fablet  <youenn@apple.com>
756
757         [WebRTC][Mac] Activate libwebrtc
758         https://bugs.webkit.org/show_bug.cgi?id=167293
759         <rdar://problem/30401864>
760
761         Reviewed by Alex Christensen.
762
763         * Configurations/FeatureDefines.xcconfig:
764
765 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
766
767         Export various NSString symbols from WebFramePrivate.h
768         https://bugs.webkit.org/show_bug.cgi?id=168702
769
770         Reviewed by Alexey Proskuryakov.
771
772         * WebKit.exp:
773
774 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
775
776         Export various NSString symbols from WebPreferencesPrivate.h
777         https://bugs.webkit.org/show_bug.cgi?id=168701
778
779         Reviewed by Alexey Proskuryakov.
780
781         * WebKit.exp:
782
783 2017-02-21  Joseph Pecoraro  <pecoraro@apple.com>
784
785         Add missing WebConsoleMessage string key
786         https://bugs.webkit.org/show_bug.cgi?id=168690
787
788         Reviewed by Alexey Proskuryakov.
789
790         * WebKit.exp:
791         * WebView/WebUIDelegatePrivate.h:
792         This key has an implementation but was not extern / exported like the others.
793
794 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
795
796         Export various NSString symbols from WebViewPrivate.h
797         https://bugs.webkit.org/show_bug.cgi?id=168689
798
799         Reviewed by Alexey Proskuryakov.
800
801         * WebKit.exp:
802
803 2017-02-21  Commit Queue  <commit-queue@webkit.org>
804
805         Unreviewed, rolling out r212768.
806         https://bugs.webkit.org/show_bug.cgi?id=168698
807
808         Rolling out since this would break other projects. (Requested
809         by aakashjain on #webkit).
810
811         Reverted changeset:
812
813         "[iOS] Remove old WebKit1 MemoryMeasure helper."
814         https://bugs.webkit.org/show_bug.cgi?id=168675
815         http://trac.webkit.org/changeset/212768
816
817 2017-02-20  Simon Fraser  <simon.fraser@apple.com>
818
819         Add support to PlatformCALayer/GraphicsLayerCA for subpixel-antialiased text, with a Setting and a MiniBrowser switch
820         https://bugs.webkit.org/show_bug.cgi?id=168620
821         <rdar://problem/30617772>
822
823         Reviewed by Tim Horton.
824
825         * WebView/WebPreferenceKeysPrivate.h:
826         * WebView/WebPreferences.mm:
827         (+[WebPreferences initialize]):
828         (-[WebPreferences subpixelAntialiasedLayerTextEnabled]):
829         (-[WebPreferences setSubpixelAntialiasedLayerTextEnabled:]):
830         * WebView/WebPreferencesPrivate.h:
831
832 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
833
834         Export various NSString symbols from WebUIDelegatePrivate.h
835         https://bugs.webkit.org/show_bug.cgi?id=168679
836
837         Reviewed by Joseph Pecoraro.
838
839         * WebKit.exp:
840
841 2017-02-21  Aakash Jain  <aakash_jain@apple.com>
842
843         Export symbols for various classes present in webkit SPI
844         https://bugs.webkit.org/show_bug.cgi?id=168674
845
846         Reviewed by Dan Bernstein.
847
848         * WebKit.exp:
849
850 2017-02-21  Andreas Kling  <akling@apple.com>
851
852         [iOS] Remove old WebKit1 MemoryMeasure helper.
853         <https://webkit.org/b/168675>
854
855         Reviewed by Sam Weinig.
856
857         * Configurations/WebKitLegacy.xcconfig:
858         * Misc/WebCache.mm:
859         (+[WebCache emptyInMemoryResources]):
860         * WebView/WebView.mm:
861
862 2017-02-21  Andreas Kling  <akling@apple.com>
863
864         [iOS] WebKit1 should use shared memory pressure handler code.
865         <https://webkit.org/b/168653>
866
867         Reviewed by Antti Koivisto.
868
869         Register a WebThread-aware memory callback with the shared MemoryPressureHandler
870         and get rid of the old iOS WebKit1 specific implementation. Some of it was even
871         dead code since MobileSafari has been using WebKit2 for quite a while.
872
873         * WebView/WebView.h:
874         * WebView/WebView.mm:
875         (WebInstallMemoryPressureHandler):
876         (+[WebView _handleMemoryWarning]): Deleted.
877         (+[WebView registerForMemoryNotifications]): Deleted.
878         (+[WebView releaseFastMallocMemoryOnCurrentThread]): Deleted.
879         (+[WebView garbageCollectNow]): Deleted.
880         (+[WebView purgeInactiveFontData]): Deleted.
881         (+[WebView drainLayerPool]): Deleted.
882         (+[WebView discardAllCompiledCode]): Deleted.
883         (+[WebView _clearMemoryPressure]): Deleted.
884         (+[WebView _shouldWaitForMemoryClearMessage]): Deleted.
885         * WebView/WebViewPrivate.h:
886
887 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
888
889         Stop exporting interface WebCoreScrollView on iOS
890         https://bugs.webkit.org/show_bug.cgi?id=168536
891
892         Reviewed by Dan Bernstein.
893
894         * WebKit.exp: Moved symbol for WebCoreScrollView interface to mac specific file.
895         * WebKit.mac.exp: Ditto.
896         * WebView/WebHTMLView.mm: WebCoreScrollView shouldn't be defined for iOS platform.
897
898 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
899
900         Exclude various mac-specific header files from iOS build
901         https://bugs.webkit.org/show_bug.cgi?id=168621
902
903         Reviewed by Dan Bernstein.
904
905         * Configurations/WebKitLegacy.xcconfig:
906
907 2017-02-20  Wenson Hsieh  <wenson_hsieh@apple.com>
908
909         Add plumbing to the UI process for TextIndicatorData when computing the drag image
910         https://bugs.webkit.org/show_bug.cgi?id=168583
911         Work towards <rdar://problem/30313681>
912
913         Accounts for changes in WebCore -- see Source/WebCore/ChangeLog for more details.
914
915         Reviewed by Tim Horton.
916
917         * WebView/WebHTMLView.mm:
918         (-[WebHTMLView _selectionDraggingImage]):
919         (-[WebHTMLView selectionImageForcingBlackText:selectionImageForcingBlackText:]):
920
921 2017-02-17  Anders Carlsson  <andersca@apple.com>
922
923         Add a new drag code path and use it for dragging plain text
924         https://bugs.webkit.org/show_bug.cgi?id=168534
925
926         Reviewed by Geoffrey Garen.
927
928         * WebCoreSupport/WebDragClient.h:
929         Add new members.
930
931         * WebCoreSupport/WebDragClient.mm:
932         (WebDragClient::useLegacyDragClient):
933         Return false here.
934
935         (WebDragClient::beginDrag):
936         New client member function. Create an NSDraggingItem and use it to begin a dragging session.
937
938         * WebView/WebHTMLView.mm:
939         (-[WebHTMLView draggingSession:sourceOperationMaskForDraggingContext:]):
940         Get the source operation mask from WebCore.
941
942         (-[WebHTMLView draggingSession:endedAtPoint:operation:]):
943         Send a fake mouse up event.
944
945         * WebView/WebHTMLViewInternal.h:
946         Declare that WebHTMLView conforms to NSDraggingSource.
947
948 2017-02-20  Alexey Proskuryakov  <ap@apple.com>
949
950         List of WebCore symbols to re-export from WebKitLegacy should be built automatically
951         https://bugs.webkit.org/show_bug.cgi?id=168342
952         rdar://problem/26182266
953
954         Reviewed by Tim Horton.
955
956         * MigrateHeaders.make: On iOS only, process re-exported headers to build a list of
957         symbols to re-export.
958
959 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
960
961         Stop exporting DOMTokenList from WebKit
962         https://bugs.webkit.org/show_bug.cgi?id=168544
963
964         Reviewed by Alexey Proskuryakov.
965
966         * WebKit.exp:
967
968 2017-02-20  Alexey Proskuryakov  <ap@apple.com>
969
970         Clean up how WebKit exports _WebCreateFragment
971         https://bugs.webkit.org/show_bug.cgi?id=168579
972
973         Reviewed by Dan Bernstein.
974
975         * WebCoreSupport/WebCreateFragmentInternal.h: Added a private header.
976         * WebCoreSupport/WebEditorClient.mm: Include the new header that declares _WebCreateFragment.
977
978 2017-02-20  Aakash Jain  <aakash_jain@apple.com>
979
980         Stop exporting DOMNodeFilter
981         https://bugs.webkit.org/show_bug.cgi?id=168542
982
983         Reviewed by Alexey Proskuryakov.
984
985         * WebKit.exp:
986
987 2017-02-20  Manuel Rego Casasnovas  <rego@igalia.com>
988
989         [css-grid] Remove compilation flag ENABLE_CSS_GRID_LAYOUT
990         https://bugs.webkit.org/show_bug.cgi?id=167693
991
992         Reviewed by Sergio Villar Senin.
993
994         * Configurations/FeatureDefines.xcconfig:
995         * WebView/WebPreferences.mm:
996         (+[WebPreferences initialize]):
997         * WebView/WebView.mm:
998         (-[WebView _preferencesChanged:]):
999
1000 2017-02-15  Brady Eidson  <beidson@apple.com>
1001
1002         Stop backing up localStorage databases to iCloud by default.
1003         <rdar://problem/29045531> and https://bugs.webkit.org/show_bug.cgi?id=168388
1004
1005         Reviewed by Geoffrey Garen.
1006
1007         * Misc/WebKitVersionChecks.h:
1008         * Misc/WebKitVersionChecks.mm: Renamed from Source/WebKit/mac/Misc/WebKitVersionChecks.m.
1009         (WebKitLinkedOnOrAfter):
1010         (setWebKitLinkTimeVersion):
1011         (WebKitLinkTimeVersion):
1012         (linkedOnOrAfter):
1013
1014         * Storage/WebStorageManager.mm:
1015         (WebKitInitializeStorageIfNecessary):
1016
1017 2017-02-16  Daniel Bates  <dabates@apple.com>
1018
1019         Remove Chromium-specific code to call FrameLoaderClient::redirectDataToPlugin(nullptr)
1020         https://bugs.webkit.org/show_bug.cgi?id=168417
1021         <rdar://problem/30541748>
1022
1023         Reviewed by Brent Fulgham.
1024
1025         Update override of FrameLoaderClient::redirectDataToPlugin() to take a Widget& instead of a
1026         Widget* as it is always called with a valid Widget.
1027
1028         * WebCoreSupport/WebFrameLoaderClient.h:
1029         * WebCoreSupport/WebFrameLoaderClient.mm:
1030         (WebFrameLoaderClient::redirectDataToPlugin):
1031         * WebKit.order: Remove symbol for WebFrameLoaderClient::redirectDataToPlugin() that took a Widget*
1032         as it no longer exists. I am unclear if this file is still meaningful as it was last modified in
1033         r180570 (2 years ago) though Xcode still references this ordering file (why?).
1034
1035 2017-02-16  Yusuke Suzuki  <utatane.tea@gmail.com>
1036
1037         [JSC] Drop PassRefPtr in inspector/
1038         https://bugs.webkit.org/show_bug.cgi?id=168420
1039
1040         Reviewed by Alex Christensen.
1041
1042         * WebView/WebScriptDebugger.mm:
1043         (WebScriptDebugger::handlePause):
1044
1045 2017-02-16  Simon Fraser  <simon.fraser@apple.com>
1046
1047         Clean up use of some CALayer-related SPI
1048         https://bugs.webkit.org/show_bug.cgi?id=168401
1049
1050         Reviewed by Tim Horton.
1051
1052         Include CALayer.h not CATiledLayer.h.
1053
1054         * WebInspector/WebNodeHighlight.h:
1055
1056 2017-02-15  Wenson Hsieh  <wenson_hsieh@apple.com>
1057
1058         Fix the build after r212379
1059
1060         Rubber-stamped by Anders Carlsson.
1061
1062         * WebCoreSupport/WebDragClient.mm:
1063         (WebDragClient::startDrag):
1064
1065 2017-02-15  Anders Carlsson  <andersca@apple.com>
1066
1067         Modernize DragClient::startDrag somewhat
1068         https://bugs.webkit.org/show_bug.cgi?id=168379
1069
1070         Reviewed by Tim Horton.
1071
1072         Update for WebCore changes.
1073
1074         * WebCoreSupport/WebDragClient.h:
1075         * WebCoreSupport/WebDragClient.mm:
1076         (WebDragClient::startDrag):
1077
1078 2017-02-14  Dean Jackson  <dino@apple.com>
1079
1080         Rename preferLowPowerWebGLRendering setting to forceWebGLUsesLowPower
1081         https://bugs.webkit.org/show_bug.cgi?id=168339
1082
1083         Reviewed by Simon Fraser.
1084
1085         Use a better name.
1086
1087         * WebView/WebPreferenceKeysPrivate.h:
1088         * WebView/WebPreferences.mm:
1089         (+[WebPreferences initialize]):
1090         (-[WebPreferences forceLowPowerGPUForWebGL]):
1091         (-[WebPreferences setForceLowPowerGPUForWebGL:]):
1092         (-[WebPreferences preferLowPowerWebGLRendering]): Deleted.
1093         (-[WebPreferences setPreferLowPowerWebGLRendering:]): Deleted.
1094         * WebView/WebPreferencesPrivate.h:
1095         * WebView/WebView.mm:
1096         (-[WebView _preferencesChanged:]):
1097
1098 2017-02-14  Chris Dumez  <cdumez@apple.com>
1099
1100         HTML Form Validation bubble should take minimum font size setting into consideration
1101         https://bugs.webkit.org/show_bug.cgi?id=168271
1102         <rdar://problem/29869869>
1103
1104         Reviewed by Simon Fraser.
1105
1106         * WebView/WebView.mm:
1107         (-[WebView _contentsOfUserInterfaceItem:]):
1108         Return font size used in the validation bubble.
1109
1110         (-[WebView showFormValidationMessage:withAnchorRect:]):
1111         Pass minimum font size setting when constructing the validation bubble.
1112
1113 2017-02-14  Anders Carlsson  <andersca@apple.com>
1114
1115         Remove an unused delegate method
1116         https://bugs.webkit.org/show_bug.cgi?id=168328
1117
1118         Reviewed by Wenson Hsieh.
1119
1120         * DefaultDelegates/WebDefaultUIDelegate.m:
1121         (-[WebDefaultUIDelegate webView:shouldBeginDragForElement:dragImage:mouseDownEvent:mouseDraggedEvent:]): Deleted.
1122
1123 2017-02-14  Alexey Proskuryakov  <ap@apple.com>
1124
1125         WebCore shouldn't export SystemMemory.h
1126         https://bugs.webkit.org/show_bug.cgi?id=168285
1127
1128         Reviewed by Alex Christensen.
1129
1130         * MigrateHeaders.make: And WebKit shouldn't re-export it.
1131
1132 2017-02-13  Alexey Proskuryakov  <ap@apple.com>
1133
1134         WebKit shouldn't re-export ScrollTypes.h and WebCoreFrameView.h
1135         https://bugs.webkit.org/show_bug.cgi?id=168282
1136
1137         Reviewed by Dan Bernstein.
1138
1139         * MigrateHeaders.make:
1140
1141 2017-02-12  Dan Bernstein  <mitz@apple.com>
1142
1143         Tried to fix USE(APPLE_INTERNAL_SDK) builds after r212211.
1144
1145         * WebView/WebHTMLView.mm:
1146         (createShareMenuItem): Use non-deprecated method.
1147
1148 2017-02-12  Dan Bernstein  <mitz@apple.com>
1149
1150         [Cocoa] Some -respondsToSelector: checks are unnecessary
1151         https://bugs.webkit.org/show_bug.cgi?id=168183
1152
1153         Reviewed by Tim Horton.
1154
1155         * WebView/WebFullScreenController.mm:
1156         (-[WebFullScreenController applicationDidResignActive:]): Removed check whether NSWindow
1157           responds to -isOnActiveSpace.
1158         (-[WebFullScreenController exitFullScreen]): Ditto.
1159         (-[WebFullScreenController _updateMenuAndDockForFullScreen]): Removed check whether
1160           NSApplication responds to -setPresentationOptions.
1161
1162         * WebView/WebHTMLView.mm:
1163         (createShareMenuItem): Removed unnecessary -respondsToSelector: check.
1164         (-[WebHTMLView otherMouseDown:]): Ditto.
1165
1166         * WebView/WebImmediateActionController.mm:
1167         (-[WebImmediateActionController _clearImmediateActionState]): Ditto.
1168         (-[WebImmediateActionController _animationControllerForDataDetectedText]): Ditto.
1169
1170         * WebView/WebView.mm:
1171         (-[WebView _didStartProvisionalLoadForFrame:]): Removed redundant nil check.
1172         (+[WebView _setCacheModel:]): Removed unnecessary -respondsToSelector: check.
1173
1174 2017-02-10  Daniel Bates  <dabates@apple.com>
1175
1176         Detach frame from document when entering page cache
1177         https://bugs.webkit.org/show_bug.cgi?id=166774
1178         <rdar://problem/29904368>
1179
1180         Reviewed by Chris Dumez.
1181
1182         * WebView/WebPreferenceKeysPrivate.h:
1183         * WebView/WebPreferences.mm:
1184         (+[WebPreferences initialize]):
1185         (-[WebPreferences allowsPageCacheWithWindowOpener]): Deleted.
1186         (-[WebPreferences setAllowsPageCacheWithWindowOpener:]): Deleted.
1187         * WebView/WebPreferencesPrivate.h:
1188         * WebView/WebView.mm:
1189         (-[WebView _preferencesChanged:]):
1190
1191 2017-02-10  Joseph Pecoraro  <pecoraro@apple.com>
1192
1193         [Resource Timing] Enable Resource Timing by default in Tests
1194         https://bugs.webkit.org/show_bug.cgi?id=168145
1195
1196         Reviewed by Ryosuke Niwa.
1197
1198         * WebView/WebPreferenceKeysPrivate.h:
1199         * WebView/WebPreferences.mm:
1200         (+[WebPreferences initialize]):
1201         (-[WebPreferences resourceTimingEnabled]):
1202         (-[WebPreferences setResourceTimingEnabled:]):
1203         * WebView/WebPreferencesPrivate.h:
1204         * WebView/WebView.mm:
1205         (-[WebView _preferencesChanged:]):
1206
1207 2017-02-10  Aakash Jain  <aakash_jain@apple.com>
1208
1209         cleanup WebLocalizableStrings.
1210         https://bugs.webkit.org/show_bug.cgi?id=168078
1211
1212         Reviewed by Alexey Proskuryakov.
1213
1214         * Misc/WebLocalizableStrings.h: Make visibility hidden for WebLocalizableStringsBundle 
1215         as it's for each framework's own consumption, and never needs to be exported.
1216
1217 2017-02-10  Aakash Jain  <aakash_jain@apple.com>
1218
1219         WebResourceLoadDelegatePrivate.h cannot be imported standalone
1220         https://bugs.webkit.org/show_bug.cgi?id=168096
1221
1222         Reviewed by Alexey Proskuryakov.
1223
1224         * WebView/WebResourceLoadDelegatePrivate.h: Change WebNSInteger to NSInteger. 
1225
1226 2017-02-09  Antti Koivisto  <antti@apple.com>
1227
1228         Remove most cases of #if ENABLE(CACHE_PARTITIONING)
1229         https://bugs.webkit.org/show_bug.cgi?id=167990
1230
1231         Reviewed by Sam Weinig.
1232
1233         * Misc/WebCache.mm:
1234         (+[WebCache addImageToCache:forURL:forFrame:]):
1235         (+[WebCache removeImageFromCacheForURL:forFrame:]):
1236         * WebCoreSupport/WebSystemInterface.mm:
1237         (InitWebCoreSystemInterface):
1238
1239 2017-02-07  Alexey Proskuryakov  <ap@apple.com>
1240
1241         Don't migrate WebKit DOM headers in MigrateHeaders.make
1242         https://bugs.webkit.org/show_bug.cgi?id=167608
1243
1244         Reviewed by Darin Adler.
1245
1246         Stop migrating DOM headers that are now in WebKit.
1247
1248         * DOM/DOMDOMImplementation.h: Removed.
1249         * DOM/DOMDOMImplementation.mm: Removed.
1250         * DOM/DOMDOMImplementationInternal.h: Removed.
1251         * DOM/DOMDOMTokenList.h: Removed.
1252         * DOM/DOMDOMTokenList.mm: Removed.
1253         * DOM/DOMDOMTokenListInternal.h: Removed.
1254         * DOM/DOMImplementation.h: Copied from Source/WebKit/mac/DOM/DOMDOMImplementation.h.
1255         * DOM/DOMImplementation.mm: Copied from Source/WebKit/mac/DOM/DOMDOMImplementation.mm.
1256         * DOM/DOMImplementationInternal.h: Copied from Source/WebKit/mac/DOM/DOMDOMImplementationInternal.h.
1257         * DOM/DOMTokenList.h: Copied from Source/WebKit/mac/DOM/DOMDOMTokenList.h.
1258         * DOM/DOMTokenList.mm: Copied from Source/WebKit/mac/DOM/DOMDOMTokenList.mm.
1259         * DOM/DOMTokenListInternal.h: Copied from Source/WebKit/mac/DOM/DOMDOMTokenListInternal.h.
1260         As the files are not in WebCore any more, there is no need to differentiate from
1261         WebCore internal headers with the same name. This makes it possible to make these
1262         headers private using Xcode mechanisms, as opposed to copying with a shell script.
1263
1264         * DOM/DOMElement.mm: Removed "using namespace WebCore". Other DOM implementation
1265         files don't have it.
1266
1267         * DOM/DOMCore.h:
1268         * DOM/DOMDocument.mm:
1269         * DOM/DOMHTMLAnchorElement.mm:
1270         * DOM/DOMHTMLAreaElement.mm:
1271         * DOM/DOMHTMLLinkElement.mm:
1272         * DOM/DOMUtility.mm:
1273         No more "DOMDOM".
1274
1275         * WebKit.exp:
1276         No more "DOMDOM". DOMDOMTokenList was not directly exposed via an SPI header, so
1277         renaming it is likely to be safe.
1278
1279         * MigrateHeaders.make: Don't migrate WebKit headers.
1280
1281         * Configurations/WebKitLegacy.xcconfig: Don't include two iOS specific SPI headers
1282         on macOS.
1283
1284 2017-02-08  Aakash Jain  <aakash_jain@apple.com>
1285
1286         Don't re-export PluginData.h from WebKit
1287         https://bugs.webkit.org/show_bug.cgi?id=168020
1288
1289         Reviewed by Alexey Proskuryakov.
1290
1291         * MigrateHeaders.make: Removed PluginData.h
1292
1293 2017-02-08  Aakash Jain  <aakash_jain@apple.com>
1294
1295         Don't re-export WKUtilities.h from WebKit
1296         https://bugs.webkit.org/show_bug.cgi?id=167977
1297
1298         Reviewed by Alexey Proskuryakov.
1299
1300         * MigrateHeaders.make: Removed WKUtilities.h
1301
1302 2017-02-06  Alex Christensen  <achristensen@webkit.org>
1303
1304         credentials should be partitioned by main document domain
1305         https://bugs.webkit.org/show_bug.cgi?id=166998
1306         rdar://problem/22901123
1307
1308         Reviewed by Brady Eidson.
1309
1310         * Misc/WebDownload.mm:
1311         * Plugins/WebBaseNetscapePluginView.mm:
1312         (WebKit::getAuthenticationInfo):
1313         Don't use partitioned credentials for WebKit1 plugins or downloads.
1314         Downloads should be authenticated before becoming a download anyways.
1315
1316 2017-02-06  Said Abou-Hallawa  <sabouhallawa@apple.com>
1317
1318         Rename AnimationController to CSSAnimationController
1319         https://bugs.webkit.org/show_bug.cgi?id=167829
1320
1321         Reviewed by Simon Fraser.
1322
1323         * WebView/WebFrame.mm:
1324         * WebView/WebView.mm:
1325
1326 2017-02-03  Chris Dumez  <cdumez@apple.com>
1327
1328         Dismiss HTML form validation popover when pressing Escape key
1329         https://bugs.webkit.org/show_bug.cgi?id=167716
1330         <rdar://problem/29872943>
1331
1332         Reviewed by Simon Fraser.
1333
1334         Override ValidationMessageClient::hideAnyValidationMessage().
1335
1336         * WebCoreSupport/WebValidationMessageClient.h:
1337         * WebCoreSupport/WebValidationMessageClient.mm:
1338         (WebValidationMessageClient::hideAnyValidationMessage):
1339
1340 2017-02-02  Wenson Hsieh  <wenson_hsieh@apple.com>
1341
1342         Drag images should be anchored to the mouse location
1343         https://bugs.webkit.org/show_bug.cgi?id=167690
1344         <rdar://problem/30295261>
1345
1346         Reviewed by Enrica Casucci.
1347
1348         Adds some plumbing for the anchor point in the WK1 client layer.
1349
1350         * WebCoreSupport/WebDragClient.h:
1351         * WebCoreSupport/WebDragClient.mm:
1352         (WebDragClient::startDrag):
1353
1354 2017-02-02  Chris Dumez  <cdumez@apple.com>
1355
1356         Rename Node::inDocument() to isConnected()
1357         https://bugs.webkit.org/show_bug.cgi?id=167743
1358
1359         Reviewed by Sam Weinig.
1360
1361         Rename Node::inDocument() to isConnected() to match the DOM specification more closely:
1362         - https://dom.spec.whatwg.org/#connected
1363
1364         * DOM/DOMNode.mm:
1365         (-[DOMNode isConnected]):
1366         * WebView/WebFrame.mm:
1367         (-[WebFrame selectNSRange:onElement:]):
1368
1369 2017-02-02  Chris Dumez  <cdumez@apple.com>
1370
1371         [Crash] com.apple.WebKit.WebContent at WebKit: WebKit::WebPage::fromCorePage()
1372         https://bugs.webkit.org/show_bug.cgi?id=167738
1373         <rdar://problem/30229990>
1374
1375         Reviewed by Andreas Kling.
1376
1377         The BackForwardClient no longer needs to worry about removing HistoryItems
1378         from the PageCache now that WebCore takes care of it.
1379
1380         * History/BackForwardList.mm:
1381         (BackForwardList::close):
1382
1383 2017-02-02  Yongjun Zhang  <yongjun_zhang@apple.com>
1384
1385         In iOS, we should take background assertion when accessing localstorage databases.
1386         https://bugs.webkit.org/show_bug.cgi?id=165478
1387
1388         Move database transaction background task handling code from WebDatabaseManager to
1389         WebCore's WebSQLiteDatabaseTrackerClient.
1390
1391         Reviewed by Brady Eidson.
1392
1393         * Storage/WebDatabaseManager.mm:
1394         * Storage/WebDatabaseManagerInternal.h: Remove a category for background task handling.
1395         * WebCoreSupport/WebApplicationCache.mm:
1396         (+[WebApplicationCache initializeWithBundleIdentifier:]): Use WebCore::WebSQLiteDatabaseTrackerClient.
1397         * WebView/WebView.mm:
1398         (-[WebView _commonInitializationWithFrameName:groupName:]): Ditto.
1399
1400 2017-02-01  Wenson Hsieh  <wenson_hsieh@apple.com>
1401
1402         [WK1] Allow the drag client to be initialized on platforms that do not support drag and drop
1403         https://bugs.webkit.org/show_bug.cgi?id=167695
1404         <rdar://problem/30305390>
1405
1406         Reviewed by Sam Weinig.
1407
1408         Due to the common codepath for destroying the drag client, we need to ensure that the drag client actually
1409         exists, even on platforms that do not support drag and drop, in order to avoid crashing when the DragController
1410         is destroyed.
1411
1412         * WebView/WebView.mm:
1413         (-[WebView _commonInitializationWithFrameName:groupName:]):
1414
1415 2017-01-31  Joseph Pecoraro  <pecoraro@apple.com>
1416
1417         ld: warning: instance method '_setAutofilled:' in category conflicts with same method from another category
1418         https://bugs.webkit.org/show_bug.cgi?id=167684
1419
1420         Reviewed by Dan Bernstein.
1421
1422         * DOM/DOMHTML.mm:
1423         (-[DOMHTMLInputElement _isAutofilled]): Deleted.
1424         (-[DOMHTMLInputElement _setAutofilled:]): Deleted.
1425         Consolidate in the WebDOMOperationsPrivate category.
1426
1427         * DOM/DOMPrivate.h:
1428         Include WebDOMOperationsPrivate header to get other DOM Private categories.
1429
1430         * DOM/WebDOMOperations.mm:
1431         (-[DOMHTMLInputElement _isAutofilled]):
1432         * DOM/WebDOMOperationsPrivate.h:
1433         Include getter alongside the setter.
1434
1435 2017-01-31  Jessie Berlin  <jberlin@webkit.org>
1436
1437         Build fix.
1438
1439         * Misc/WebNSPasteboardExtras.mm:
1440         (+[NSPasteboard _web_setFindPasteboardString:withOwner:]):
1441         (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):
1442         * WebView/WebHTMLView.mm:
1443         (-[WebHTMLView _fontAttributesFromFontPasteboard]):
1444         (-[WebHTMLView copyFont:]):
1445
1446 2017-01-30  Andy Estes  <aestes@apple.com>
1447
1448         [QuickLook] FrameLoaderClient should return the new QuickLookHandleClient it creates
1449         https://bugs.webkit.org/show_bug.cgi?id=167625
1450
1451         Reviewed by Andreas Kling.
1452
1453         * WebCoreSupport/WebFrameLoaderClient.h: Declared createQuickLookHandleClient().
1454         * WebCoreSupport/WebFrameLoaderClient.mm:
1455         (WebFrameLoaderClient::createQuickLookHandleClient): Renamed from didCreateQuickLookHandle().
1456         (WebFrameLoaderClient::didCreateQuickLookHandle): Renamed to createQuickLookHandleClient().
1457
1458 2017-01-30  Chris Dumez  <cdumez@apple.com>
1459
1460         Drop legacy Attributes.isId attribute
1461         https://bugs.webkit.org/show_bug.cgi?id=167603
1462
1463         Reviewed by Ryosuke Niwa.
1464
1465         Keep Attr.isId in ObjC bindings.
1466
1467         * DOM/DOMAttr.mm:
1468         (-[DOMAttr isId]):
1469
1470 2017-01-30  Andreas Kling  <akling@apple.com>
1471
1472         [macOS] WebHTMLView has an internal retain cycle with its flagsChangedEventMonitor.
1473         <https://webkit.org/b/167580>
1474
1475         Reviewed by Antti Koivisto.
1476
1477         Avoid the implicit strong capture of self by keeping it in a __block variable.
1478         Also add code to dealloc to unregister the event monitor, since it will otherwise leak.
1479         This fixes huge WebHTMLView leaks seen on the leaks bot.
1480
1481         * WebView/WebHTMLView.mm:
1482         (-[WebHTMLViewPrivate dealloc]):
1483         (-[WebHTMLView viewDidMoveToWindow]):
1484
1485 2017-01-29  Andy Estes  <aestes@apple.com>
1486
1487         [QuickLook] Add a WebPreference to enable saving QuickLook documents in WebKitLegacy
1488         https://bugs.webkit.org/show_bug.cgi?id=167563
1489         <rdar://problem/30253207>
1490
1491         Reviewed by Andreas Kling.
1492
1493         Instead of only saving QuickLook documents to a temporary file when the client is
1494         MobileSafari, base this decision on a WebPreference that clients can choose to enable.
1495
1496         This also changes the SPI for accessing the temporary file path and UTI. Instead of
1497         -[WebView quickLookContentForURL:], which requires the client to pass the response URL of
1498         the frame that saved the QuickLook document, the content dictionary is now stored as a
1499         property of WebDataSource.
1500
1501         This also removes the manual lifetime management of the QLPreviewConverter from
1502         QuickLookDocumentWriter. The QLPreviewConverter is kept alive by DocumentLoader these days,
1503         which ensures it lives long enough to respond to subresource requests.
1504
1505         New API test: QuickLook.LegacyQuickLookContent
1506
1507         * WebCoreSupport/WebFrameLoaderClient.mm:
1508         (WebFrameLoaderClient::didCreateQuickLookHandle): Moved the logic of deciding whether to
1509         write a temporary file to here from the QuickLookDocumentWriter constructor.
1510         * WebView/WebDataSource.mm: Declared _quickLookContent.
1511         (-[WebDataSource _quickLookContent]):
1512         (-[WebDataSource _setQuickLookContent:]):
1513         * WebView/WebDataSourceInternal.h: Overrode _quickLookContent as a read/write property.
1514         * WebView/WebDataSourcePrivate.h: Declared _quickLookContent as a readonly property.
1515         * WebView/WebPreferenceKeysPrivate.h: Defined WebKitQuickLookDocumentSavingPreferenceKey.
1516         * WebView/WebPreferences.mm:
1517         (-[WebPreferences quickLookDocumentSavingEnabled]):
1518         (-[WebPreferences setQuickLookDocumentSavingEnabled:]):
1519         * WebView/WebPreferencesPrivate.h: Declared property quickLookDocumentSavingEnabled.
1520         * WebView/WebView.mm:
1521         (-[WebView quickLookContentForURL:]): Changed to always return nil.
1522         * WebView/WebViewPrivate.h: Added a comment stating that clients should use
1523         -[WebDataSource _quickLookContent] instead.
1524
1525 2017-01-28  Yoav Weiss  <yoav@yoav.ws>
1526
1527         Add Link Preload as an off-by-default experimental feature menu item.
1528         https://bugs.webkit.org/show_bug.cgi?id=167201
1529
1530         Reviewed by Ryosuke Niwa.
1531
1532         * WebView/WebPreferenceKeysPrivate.h:
1533         * WebView/WebPreferences.mm:
1534         (-[WebPreferences linkPreloadEnabled]):
1535         (-[WebPreferences setLinkPreloadEnabled:]):
1536         * WebView/WebPreferencesPrivate.h:
1537         * WebView/WebView.mm:
1538         (-[WebView _preferencesChanged:]):
1539
1540 2017-01-28  Joseph Pecoraro  <pecoraro@apple.com>
1541
1542         Add User Timing Experimental Feature
1543         https://bugs.webkit.org/show_bug.cgi?id=167542
1544         <rdar://problem/22746307>
1545
1546         Reviewed by Ryosuke Niwa.
1547
1548         * WebView/WebPreferenceKeysPrivate.h:
1549         * WebView/WebPreferences.mm:
1550         (+[WebPreferences initialize]):
1551         (-[WebPreferences userTimingEnabled]):
1552         (-[WebPreferences setUserTimingEnabled:]):
1553         * WebView/WebPreferencesPrivate.h:
1554         * WebView/WebView.mm:
1555         (-[WebView _preferencesChanged:]):
1556         Add setting for User Timing runtime enabled feature.
1557
1558 2017-01-27  Wenson Hsieh  <wenson_hsieh@apple.com>
1559
1560         [WK1] Do not prevent the drag client from initializing on Mac
1561         https://bugs.webkit.org/show_bug.cgi?id=167541
1562
1563         Reviewed by Dan Bernstein.
1564
1565         Fixes fallout from r211192. To ensure compability with WebKit clients, we need to ensure that WebDragClient is
1566         initialized everywhere when creating a WebView. Stub out method implementations as no-ops for non-Mac platforms.
1567         This caused certain clients, such as Mail, to crash when a webView closes due to  null dereference.
1568
1569         * WebCoreSupport/WebDragClient.mm:
1570         (WebDragClient::WebDragClient):
1571         (WebDragClient::actionMaskForDrag):
1572         (WebDragClient::willPerformDragDestinationAction):
1573         (WebDragClient::dragSourceActionMaskForPoint):
1574         (WebDragClient::willPerformDragSourceAction):
1575         (WebDragClient::startDrag):
1576         (WebDragClient::declareAndWriteDragImage):
1577         (WebDragClient::declareAndWriteAttachment):
1578         * WebView/WebView.mm:
1579         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
1580
1581 2017-01-26  Chris Dumez  <cdumez@apple.com>
1582
1583         Crash when navigating back to a page in PacheCache when one of its frames has been removed
1584         https://bugs.webkit.org/show_bug.cgi?id=167421
1585         <rdar://problem/30188490>
1586
1587         Reviewed by Darin Adler.
1588
1589         Add a new setting allowing layout tests to enable PageCache in a window
1590         that has an opener, for convenience.
1591
1592         * WebView/WebPreferenceKeysPrivate.h:
1593         * WebView/WebPreferences.mm:
1594         (+[WebPreferences initialize]):
1595         (-[WebPreferences allowsPageCacheWithWindowOpener]):
1596         (-[WebPreferences setAllowsPageCacheWithWindowOpener:]):
1597         * WebView/WebPreferencesPrivate.h:
1598         * WebView/WebView.mm:
1599         (-[WebView _preferencesChanged:]):
1600
1601 2017-01-26  Keith Miller  <keith_miller@apple.com>
1602
1603         classInfo should take a VM so it is not materialized from the object on each call
1604         https://bugs.webkit.org/show_bug.cgi?id=167424
1605
1606         Rubber Stamped by Michael Saboff.
1607
1608         Previously, classInfo() would get the VM from the target's
1609         MarkedBlock.  Most callers already have a VM on hand, so it is
1610         wasteful to compute the VM from the marked block every time. This
1611         patch refactors some of the most common callers of classInfo(),
1612         jsDynamicCast and inherits to take a VM as well.
1613
1614         * DOM/DOM.mm:
1615         (+[DOMNode _nodeFromJSWrapper:]):
1616         * DOM/DOMUtility.mm:
1617         (createDOMWrapper):
1618         * DOM/WebDOMOperations.mm:
1619         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1620         (WebKit::getObjectID):
1621         (WebKit::NetscapePluginInstanceProxy::retainLocalObject):
1622         (WebKit::NetscapePluginInstanceProxy::releaseLocalObject):
1623         * Plugins/Hosted/ProxyInstance.mm:
1624         (WebKit::ProxyRuntimeMethod::finishCreation):
1625         (WebKit::ProxyInstance::invokeMethod):
1626         * Plugins/Hosted/ProxyRuntimeObject.mm:
1627         (WebKit::ProxyRuntimeObject::finishCreation):
1628         * WebView/WebFrame.mm:
1629         (-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):
1630         * WebView/WebView.mm:
1631         (+[WebView _reportException:inContext:]):
1632         (aeDescFromJSValue):
1633         (-[WebView _notificationIDForTesting:]):
1634
1635 2017-01-26  Wenson Hsieh  <wenson_hsieh@apple.com>
1636
1637         REGRESSION (r207483): Touch Bar: Lists and BIU Buttons Missing from Touch Bar in HTML Notes
1638         https://bugs.webkit.org/show_bug.cgi?id=167472
1639         <rdar://problem/30149809>
1640
1641         Reviewed by Beth Dakin.
1642
1643         Revision 207483 caused the touch bar to stop showing up in HTML Notes due to -updateTextTouchBar not
1644         initializing the text touch bar and causing -makeTouchBar to return nil while processing a mouse click. The
1645         purpose of bailing out of the update was to prevent the text touch bar from thrashing during a selection drag.
1646         If the text touch bar doesn't exist yet, we don't have to worry about its appearance flickering from a different
1647         previous state, so we should just allow the touch bar to update instead.
1648
1649         * WebView/WebView.mm:
1650         (-[WebView updateTextTouchBar]):
1651
1652 2017-01-26  Per Arne Vollan  <pvollan@apple.com>
1653
1654         Crash when setting custom scale factor.
1655         https://bugs.webkit.org/show_bug.cgi?id=167369
1656
1657         Reviewed by Sam Weinig.
1658
1659         Add null pointer check.
1660
1661         * WebView/WebView.mm:
1662         (-[WebView _setCustomBackingScaleFactor:]):
1663
1664 2017-01-25  Wenson Hsieh  <wenson_hsieh@apple.com>
1665
1666         Refactor drag and drop implementation on Mac
1667         https://bugs.webkit.org/show_bug.cgi?id=167427
1668
1669         Reviewed by Enrica Casucci.
1670
1671         Refactor some WebKit1 code on the Mac pertaining to drag and drop. See WebCore ChangeLog for more details.
1672
1673         * Misc/WebNSPasteboardExtras.h:
1674         * WebCoreSupport/WebDragClient.mm:
1675         * WebView/WebFrame.mm:
1676         * WebView/WebFrameInternal.h:
1677         * WebView/WebHTMLView.mm:
1678         * WebView/WebView.mm:
1679         (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
1680
1681 2017-01-24  Youenn Fablet  <youennf@gmail.com>
1682
1683         [WebRTC] Introduce libwebrtc abstraction for WK1/WK2 implementations
1684         https://bugs.webkit.org/show_bug.cgi?id=167294
1685
1686         Reviewed by Alex Christensen.
1687
1688         * WebView/WebView.mm:
1689         (-[WebView _commonInitializationWithFrameName:groupName:]):
1690
1691 2017-01-25  Wenson Hsieh  <wenson_hsieh@apple.com>
1692
1693         Add support for named pasteboards, pasteboard strategies and platform pasteboards
1694         https://bugs.webkit.org/show_bug.cgi?id=167404
1695
1696         Reviewed by Enrica Casucci.
1697
1698         Adds pasteboard name as an argument to pasteboard-related WebPlatformStrategy methods.
1699
1700         * WebCoreSupport/WebPlatformStrategies.h:
1701         * WebCoreSupport/WebPlatformStrategies.mm:
1702         (WebPlatformStrategies::writeToPasteboard):
1703         (WebPlatformStrategies::getPasteboardItemsCount):
1704         (WebPlatformStrategies::readBufferFromPasteboard):
1705         (WebPlatformStrategies::readURLFromPasteboard):
1706         (WebPlatformStrategies::readStringFromPasteboard):
1707
1708 2017-01-25  Aakash Jain  <aakash_jain@apple.com>
1709
1710         LoadWebLocalizedStrings method should be moved in correct file
1711         https://bugs.webkit.org/show_bug.cgi?id=167393
1712
1713         Reviewed by Alexey Proskuryakov.
1714
1715         * Misc/WebLocalizableStrings.h: Deleted LoadWebLocalizedStrings method.
1716         * Misc/WebLocalizableStrings.mm:
1717         (LoadWebLocalizedStringsTimerCallback): Deleted, moved to WebUIKitSupport.mm
1718         (LoadWebLocalizedStrings): Deleted, moved to WebUIKitSupport.mm
1719
1720 2017-01-24  Zalan Bujtas  <zalan@apple.com>
1721
1722         Add simple line layout toggle to MiniBrowser
1723         https://bugs.webkit.org/show_bug.cgi?id=167405
1724
1725         Reviewed by Andreas Kling.
1726
1727         * WebView/WebPreferenceKeysPrivate.h:
1728         * WebView/WebPreferences.mm:
1729         (+[WebPreferences initialize]):
1730         (-[WebPreferences simpleLineLayoutEnabled]):
1731         (-[WebPreferences setSimpleLineLayoutEnabled:]):
1732         * WebView/WebPreferencesPrivate.h:
1733         * WebView/WebView.mm:
1734         (-[WebView _preferencesChanged:]):
1735
1736 2017-01-24  Joseph Pecoraro  <pecoraro@apple.com>
1737
1738         Fold USER_TIMING into WEB_TIMING and make it a RuntimeEnabledFeature
1739         https://bugs.webkit.org/show_bug.cgi?id=167394
1740
1741         Reviewed by Ryosuke Niwa.
1742
1743         * Configurations/FeatureDefines.xcconfig:
1744
1745 2017-01-23  Chris Dumez  <cdumez@apple.com>
1746
1747         REGRESSION (r211033): ASSERTION FAILED: m_ptr in com.apple.WebCore: WTF::RefPtr<WebCore::Element>::operator* const + 70
1748         https://bugs.webkit.org/show_bug.cgi?id=167308
1749         <rdar://problem/30144964>
1750
1751         Unreviewed, do a partial revert of r211033 to fix assertion.
1752
1753         * WebCoreSupport/WebChromeClient.h:
1754         * WebCoreSupport/WebChromeClient.mm:
1755         (WebChromeClient::exitFullScreenForElement):
1756
1757 2017-01-23  Joseph Pecoraro  <pecoraro@apple.com>
1758
1759         Remove allowWindowOpenWithoutUserGesture setting
1760         https://bugs.webkit.org/show_bug.cgi?id=167301
1761
1762         Reviewed by Darin Adler.
1763
1764         * WebView/WebView.mm:
1765         (-[WebView _preferencesChanged:]):
1766         Use the equivalent existing setting.
1767
1768 2017-01-20  Darin Adler  <darin@apple.com>
1769
1770         Remove PassRefPtr from "page" directory of WebCore, also deploy references
1771         https://bugs.webkit.org/show_bug.cgi?id=167224
1772
1773         Reviewed by Chris Dumez.
1774
1775         * WebCoreSupport/WebApplicationCacheQuotaManager.mm:
1776         (-[WebApplicationCacheQuotaManager quota]): Pass reference.
1777
1778         * WebCoreSupport/WebChromeClient.h: Updated for changes to ChromeClient.
1779         * WebCoreSupport/WebChromeClient.mm:
1780         (WebChromeClient::focusedElementChanged): Ditto.
1781         (WebChromeClient::createWindow): Ditto.
1782         (WebChromeClient::runBeforeUnloadConfirmPanel): Ditto.
1783         (WebChromeClient::runJavaScriptAlert): Ditto.
1784         (WebChromeClient::runJavaScriptConfirm): Ditto.
1785         (WebChromeClient::runJavaScriptPrompt): Ditto.
1786         (WebChromeClient::contentsSizeChanged): Ditto.
1787         (WebChromeClient::unavailablePluginButtonClicked): Ditto.
1788         (WebChromeClient::print): Ditto.
1789         (WebChromeClient::exceededDatabaseQuota): Ditto.
1790         (WebChromeClient::reachedApplicationCacheOriginQuota): Ditto.
1791         (WebChromeClient::createColorChooser): Ditto.
1792         (WebChromeClient::elementDidFocus): Ditto.
1793         (WebChromeClient::elementDidBlur): Ditto.
1794         (WebChromeClient::createPopupMenu): Ditto.
1795         (WebChromeClient::createSearchPopupMenu): Ditto.
1796         (WebChromeClient::attachRootGraphicsLayer): Ditto.
1797         (WebChromeClient::attachViewOverlayGraphicsLayer): Ditto.
1798         (WebChromeClient::supportsFullScreenForElement): Ditto.
1799         (WebChromeClient::enterFullScreenForElement): Ditto.
1800         (WebChromeClient::exitFullScreenForElement): Ditto.
1801
1802         * WebView/WebFrame.mm:
1803         (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):
1804         Updated for change to the appendChild function.
1805
1806 2017-01-21  Simon Fraser  <simon.fraser@apple.com>
1807
1808         Remove -[WebFrame sendOrientationChangeEvent:] which is unused
1809         https://bugs.webkit.org/show_bug.cgi?id=167276
1810
1811         Reviewed by Alex Christensen.
1812         
1813         It was usurped by -deviceOrientationChanged in 2014.
1814
1815         * WebView/WebFrame.mm:
1816         (-[WebFrame sendOrientationChangeEvent:]): Deleted.
1817         * WebView/WebFramePrivate.h:
1818
1819 2017-01-21  Simon Fraser  <simon.fraser@apple.com>
1820
1821         Remove -[WebView _contentsSizeRespectingOverflow] which is no longer needed
1822         https://bugs.webkit.org/show_bug.cgi?id=167271
1823
1824         Reviewed by Alex Christensen.
1825         
1826         -_contentsSizeRespectingOverflow was added to try to make viewport sizing on iOS respect
1827         overflow:hidden on the body (webkit.org/b/146924) but that was reverted (webkit.org/b/152803),
1828
1829         * WebView/WebView.mm:
1830         (-[WebView _contentsSizeRespectingOverflow]): Deleted.
1831         * WebView/WebViewPrivate.h:
1832
1833 2017-01-20  Joseph Pecoraro  <pecoraro@apple.com>
1834
1835         Remove never changing IndexedDB RuntimeEnabledFeature
1836         https://bugs.webkit.org/show_bug.cgi?id=167278
1837
1838         Reviewed by Darin Adler.
1839
1840         * WebView/WebView.mm:
1841         (-[WebView _preferencesChanged:]):
1842
1843 2017-01-20  Joseph Pecoraro  <pecoraro@apple.com>
1844
1845         Cleanup RuntimeEnabledFeatures
1846         https://bugs.webkit.org/show_bug.cgi?id=167228
1847
1848         Reviewed by Simon Fraser.
1849
1850         * WebView/WebView.mm:
1851         (-[WebView _preferencesChanged:]):
1852
1853 2017-01-20  Joseph Pecoraro  <pecoraro@apple.com>
1854
1855         Remove outdated ENABLE(CSP_NEXT) build flag
1856         https://bugs.webkit.org/show_bug.cgi?id=167252
1857
1858         Reviewed by Brent Fulgham.
1859
1860         * Configurations/FeatureDefines.xcconfig:
1861
1862 2017-01-20  Antoine Quint  <graouts@apple.com>
1863
1864         [Modern Media Controls] Turn modern media controls on by default
1865         https://bugs.webkit.org/show_bug.cgi?id=165668
1866
1867         Reviewed by Dean Jackson.
1868
1869         Enabled modern media controls by default in WK1.
1870
1871         * WebView/WebPreferences.mm:
1872         (+[WebPreferences initialize]):
1873
1874 2017-01-19  Chris Dumez  <cdumez@apple.com>
1875
1876         iterable<> should be enabled on WK1
1877         https://bugs.webkit.org/show_bug.cgi?id=167221
1878         <rdar://problem/30108531>
1879
1880         Reviewed by Youenn Fablet.
1881
1882         * WebView/WebPreferenceKeysPrivate.h:
1883         * WebView/WebPreferences.mm:
1884         (-[WebPreferences setCustomElementsEnabled:]):
1885         (-[WebPreferences DOMIteratorEnabled]): Deleted.
1886         (-[WebPreferences setDOMIteratorEnabled:]): Deleted.
1887         * WebView/WebPreferencesPrivate.h:
1888         * WebView/WebView.mm:
1889         (-[WebView _preferencesChanged:]):
1890
1891 2017-01-19  Chris Dumez  <cdumez@apple.com>
1892
1893         Make sure HTML validation bubble gets dismissed when its associated element's frame gets detached
1894         https://bugs.webkit.org/show_bug.cgi?id=167215
1895         <rdar://problem/29885052>
1896
1897         Reviewed by Andreas Kling.
1898
1899         Make sure HTML validation bubble gets dismissed when its associated
1900         element's frame gets detached and that we do not crash.
1901
1902         * WebCoreSupport/WebValidationMessageClient.h:
1903         * WebCoreSupport/WebValidationMessageClient.mm:
1904         (WebValidationMessageClient::documentDetached):
1905
1906 2017-01-19  Myles C. Maxfield  <mmaxfield@apple.com>
1907
1908         [Cocoa] Variation fonts are erroneously disabled on iOS
1909         https://bugs.webkit.org/show_bug.cgi?id=167172
1910
1911         Reviewed by Simon Fraser.
1912
1913         OpenSource builders don't seem to understand sdk=embedded*.
1914
1915         * Configurations/FeatureDefines.xcconfig:
1916
1917 2017-01-19  Andreas Kling  <akling@apple.com>
1918
1919         ScriptExecutionContext::topOrigin() should return a reference.
1920         <https://webkit.org/b/167190>
1921
1922         Reviewed by Sam Weinig.
1923
1924         * Misc/WebCache.mm:
1925         (+[WebCache addImageToCache:forURL:forFrame:]):
1926         (+[WebCache removeImageFromCacheForURL:forFrame:]):
1927
1928 2017-01-18  Ryan Haddad  <ryanhaddad@apple.com>
1929
1930         Unreviewed fix for the macOS build.
1931
1932         * Carbon/CarbonWindowAdapter.mm:
1933         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
1934
1935 2017-01-18  Ryan Haddad  <ryanhaddad@apple.com>
1936
1937         Unreviewed, rolling out r210848.
1938
1939         This change introduced media-related LayoutTest failures and
1940         crashes on macOS.
1941
1942         Reverted changeset:
1943
1944         "[Modern Media Controls] Turn modern media controls on by
1945         default"
1946         https://bugs.webkit.org/show_bug.cgi?id=165668
1947         http://trac.webkit.org/changeset/210848
1948
1949 2017-01-18  Andreas Kling  <akling@apple.com>
1950
1951         Document::securityOrigin() should return a reference.
1952         <https://webkit.org/b/167124>
1953
1954         Reviewed by Sam Weinig.
1955
1956         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
1957         (WebKit::NetscapePluginInstanceProxy::loadRequest):
1958         * Plugins/WebNetscapePluginStream.mm:
1959         (WebNetscapePluginStream::WebNetscapePluginStream):
1960         * Plugins/WebNetscapePluginView.mm:
1961         (-[WebNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
1962         * Plugins/WebPluginContainerCheck.mm:
1963         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
1964         * WebCoreSupport/WebChromeClient.mm:
1965         (WebChromeClient::exceededDatabaseQuota):
1966         * WebCoreSupport/WebFrameLoaderClient.h:
1967         * WebCoreSupport/WebFrameLoaderClient.mm:
1968         (WebFrameLoaderClient::didRunInsecureContent):
1969         * WebCoreSupport/WebGeolocationClient.mm:
1970         (WebGeolocationClient::requestPermission):
1971         (-[WebGeolocationProviderInitializationListener initializationAllowedWebView:]):
1972         * WebView/WebFrame.mm:
1973         (-[WebFrame _allowsFollowingLink:]):
1974
1975 2017-01-18  Antoine Quint  <graouts@apple.com>
1976
1977         [Modern Media Controls] Turn modern media controls on by default
1978         https://bugs.webkit.org/show_bug.cgi?id=165668
1979
1980         Reviewed by Dean Jackson.
1981
1982         Enabled modern media controls by default in WK1. 
1983
1984         * WebView/WebPreferences.mm:
1985         (+[WebPreferences initialize]):
1986
1987 2017-01-15  Darin Adler  <darin@apple.com>
1988
1989         Remove PassRefPtr from "loader" directory of WebCore
1990         https://bugs.webkit.org/show_bug.cgi?id=167055
1991
1992         Reviewed by Alex Christensen.
1993
1994         * WebCoreSupport/WebChromeClient.h: Updated for changes to ChromeClient.
1995         Also made class final and most functions private and final.
1996         * WebCoreSupport/WebChromeClient.mm:
1997         (WebChromeClient::runOpenPanel): Updated to take references.
1998
1999         * WebCoreSupport/WebEditorClient.h: Updated for changes to EditorClient.
2000         * WebCoreSupport/WebEditorClient.mm:
2001         (-[WebUndoStep initWithUndoStep:]): Take reference instead of PassRefPtr.
2002         (+[WebUndoStep stepWithUndoStep:]): Ditto.
2003         (-[WebUndoStep step]): Return reference instead of pointer.
2004         (-[WebEditorUndoTarget undoEditing:]): Updated for the above.
2005         (-[WebEditorUndoTarget redoEditing:]): Ditto.
2006         (WebEditorClient::registerUndoOrRedoStep): Take reference instead of
2007         PassRefPtr.
2008         (WebEditorClient::registerUndoStep): Ditto.
2009         (WebEditorClient::registerRedoStep): Ditto.
2010
2011         * WebCoreSupport/WebFrameLoaderClient.h: Updated for changes to
2012         FrameLoaderClient, marked functions final instead of override.
2013         * WebCoreSupport/WebFrameLoaderClient.mm:
2014         (WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction): Take
2015         pointer instead of PassRefPtr.
2016         (WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction): Ditto.
2017         (makeFormFieldValuesDictionary): Take a reference.
2018         (WebFrameLoaderClient::dispatchWillSendSubmitEvent): Take Ref&& instead
2019         of PassRefPtr.
2020         (WebFrameLoaderClient::dispatchWillSubmitForm): Take a reference instead
2021         of PassRefPtr.
2022         (WebFrameLoaderClient::actionDictionary): Take a pointer instead of PassRePtr.
2023         (WebFrameLoaderClient::createFrame): Take a reference instead of a pointer.
2024         (WebFrameLoaderClient::createPlugin): Ditto.
2025         (WebFrameLoaderClient::createJavaAppletWidget): Ditto.
2026         (WebFrameLoaderClient::createNetworkingContext): Ditto.
2027         (WebFrameLoaderClient::didCreateQuickLookHandle): Pass a reference.
2028
2029         * WebCoreSupport/WebFrameNetworkingContext.h: Use Ref instead of PassRefPtr.
2030         * WebCoreSupport/WebFrameNetworkingContext.mm: Tweak style a bit.
2031
2032         * WebCoreSupport/WebOpenPanelResultListener.h: Take a reference instead of
2033         PassRefPtr. Use RefPtr for class field.
2034         * WebCoreSupport/WebOpenPanelResultListener.mm:
2035         (-[WebOpenPanelResultListener dealloc]): Deleted. Compiler will now do it
2036         correctly without us declaring anything explicitly.
2037         (-[WebOpenPanelResultListener cancel]): Get rid of hand-written deref code,
2038         and let RefPtr do the work.
2039         (-[WebOpenPanelResultListener chooseFilename:]): Ditto.
2040         (-[WebOpenPanelResultListener chooseFilenames:]): Ditto.
2041         (-[WebOpenPanelResultListener chooseFilenames:displayString:iconImage:]):
2042         Rewrote to use a modern Objective-C for loop, reserveInitialCapacity,
2043         and uncheckedAppend.
2044
2045         * WebView/WebArchive.mm:
2046         (-[WebArchive initWithMainResource:subresources:subframeArchives:]):
2047         Updated for changes to LegacyWebArchive.
2048         (-[WebArchive mainResource]): Ditto.
2049         (-[WebArchive subresources]): Ditto.
2050         (-[WebArchive subframeArchives]): Ditto.
2051
2052         * WebView/WebDataSource.mm:
2053         (-[WebDataSource _addSubframeArchives:]): Use a modern Objective-C for loop
2054         instead of NSEnumerator.
2055         (-[WebDataSource _fileWrapperForURL:]): Use auto.
2056         (-[WebDataSource _documentFragmentWithArchive:]): Pass a reference.
2057         (-[WebDataSource mainResource]): Ditto.
2058         (-[WebDataSource subresources]): Ditto.
2059         (-[WebDataSource subresourceForURL:]): Ditto.
2060         (-[WebDataSource addSubresource:]): Ditto.
2061
2062         * WebView/WebResource.mm:
2063         (-[WebResourcePrivate initWithCoreResource:]): Take Ref&& instead of PassRefPtr.
2064         (-[WebResourcePrivate dealloc]): Remove explicit deref since RefPtr will now take
2065         care of it
2066         (-[WebResource initWithCoder:]): Pass a reference.
2067         (-[WebResource encodeWithCoder:]): Updated since coreResource is now RefPtr.
2068         (-[WebResource _initWithCoreResource:]): Take Ref&& instead of PassRefPtr.
2069         (-[WebResource _coreResource]): Return reference rather than pointer.
2070         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]):
2071         Added code to handle the null case and pass a reference rather than a pointer.
2072         * WebView/WebResourceInternal.h: Updated for the above.
2073
2074 2017-01-17  Michael Catanzaro  <mcatanzaro@igalia.com>
2075
2076         Unreviewed, rolling out r210834
2077         https://bugs.webkit.org/show_bug.cgi?id=165668
2078
2079         It introduced dozens of test timeouts.
2080
2081         Reverted changeset:
2082         "[Modern Media Controls] Turn modern media controls on by default"
2083         https://bugs.webkit.org/show_bug.cgi?id=165668
2084         http://trac.webkit.org/changeset/210834
2085
2086 2017-01-17  Antoine Quint  <graouts@apple.com>
2087
2088         [Modern Media Controls] Turn modern media controls on by default
2089         https://bugs.webkit.org/show_bug.cgi?id=165668
2090
2091         Reviewed by Dean Jackson.
2092
2093         Enabled modern media controls by default in WK1. 
2094
2095         * WebView/WebPreferences.mm:
2096         (+[WebPreferences initialize]):
2097
2098 2017-01-17  Joseph Pecoraro  <pecoraro@apple.com>
2099
2100         ENABLE(USER_TIMING) Not Defined for Apple Windows or OS X Ports
2101         https://bugs.webkit.org/show_bug.cgi?id=116551
2102         <rdar://problem/13949830>
2103
2104         Reviewed by Alex Christensen.
2105
2106         * Configurations/FeatureDefines.xcconfig:
2107
2108 2017-01-17  Joseph Pecoraro  <pecoraro@apple.com>
2109
2110         Crash when closing tab with debugger paused
2111         https://bugs.webkit.org/show_bug.cgi?id=161746
2112         <rdar://problem/15607819>
2113
2114         Reviewed by Brian Burg and Brent Fulgham.
2115
2116         * WebView/WebView.mm:
2117         (WebKit::DeferredPageDestructor::createDeferredPageDestructor):
2118         (WebKit::DeferredPageDestructor::DeferredPageDestructor):
2119         (WebKit::DeferredPageDestructor::tryDestruction):
2120         (-[WebView _close]):
2121         Defer destruction of the Page if we are in a nested runloop.
2122
2123 2017-01-16  Joseph Pecoraro  <pecoraro@apple.com>
2124
2125         Remove the REQUEST_ANIMATION_FRAME flag
2126         https://bugs.webkit.org/show_bug.cgi?id=156980
2127         <rdar://problem/25906849>
2128
2129         Reviewed by Simon Fraser.
2130
2131         * Configurations/FeatureDefines.xcconfig:
2132
2133 2017-01-16  Andy Estes  <aestes@apple.com>
2134
2135         [QuickLook] Do some cleanup in QuickLookHandle
2136         https://bugs.webkit.org/show_bug.cgi?id=166864
2137
2138         Reviewed by Darin Adler.
2139
2140         * WebCoreSupport/WebFrameLoaderClient.mm:
2141         (WebFrameLoaderClient::didCreateQuickLookHandle): Changed to pass a
2142         Ref<QuickLookHandleClient>&& to QuickLookHandle::setClient().
2143
2144 2017-01-15  Tim Horton  <timothy_horton@apple.com>
2145
2146         De-duplicate more (nearly) identical code in Editor(Mac|IOS).mm
2147         https://bugs.webkit.org/show_bug.cgi?id=167063
2148
2149         Reviewed by Dan Bernstein.
2150
2151         * WebView/WebHTMLView.mm:
2152         (-[WebHTMLView _selectionStartFontAttributesAsRTF]):
2153         (-[WebHTMLView _updateFontPanel]):
2154         * WebView/WebView.mm:
2155         (-[WebView typingAttributes]):
2156         Adjust to fontAttributesForSelectionStart returning a RetainPtr.
2157
2158 2017-01-13  Joseph Pecoraro  <pecoraro@apple.com>
2159
2160         Remove ENABLE(DETAILS_ELEMENT) guards
2161         https://bugs.webkit.org/show_bug.cgi?id=167042
2162
2163         Reviewed by Alex Christensen.
2164
2165         * Configurations/FeatureDefines.xcconfig:
2166
2167 2017-01-11  Darin Adler  <darin@apple.com>
2168
2169         Remove PassRefPtr from more of "platform"
2170         https://bugs.webkit.org/show_bug.cgi?id=166809
2171
2172         Reviewed by Sam Weinig.
2173
2174         * WebCoreSupport/WebFrameLoaderClient.mm:
2175         (NetscapePluginWidget::handleEvent): Pass a reference.
2176         * WebView/WebView.mm:
2177         (-[WebView _addScrollerDashboardRegionsForFrameView:dashboardRegions:]):
2178         Updated since the children set now contains Ref instead of RefPtr.
2179
2180 2017-01-13  Sam Weinig  <sam@webkit.org>
2181
2182         [WebIDL] Remove custom bindings for DeviceMotionEvent and DeviceOrientationEvent
2183         https://bugs.webkit.org/show_bug.cgi?id=167006
2184
2185         Reviewed by Geoffrey Garen.
2186
2187         * WebView/WebDeviceOrientation.mm:
2188         (convert):
2189         (-[WebDeviceOrientation initWithCanProvideAlpha:alpha:canProvideBeta:beta:canProvideGamma:gamma:]):
2190         Update for new use of std::optional.
2191
2192 2017-01-12  Joseph Pecoraro  <pecoraro@apple.com>
2193
2194         Remove unnecessary includes of Page.h
2195         https://bugs.webkit.org/show_bug.cgi?id=166996
2196
2197         Reviewed by Yusuke Suzuki.
2198
2199         * DOM/DOMHTML.mm:
2200         * History/WebBackForwardList.mm:
2201         * Plugins/WebPluginController.mm:
2202         * WebCoreSupport/WebNotificationClient.mm:
2203         * WebCoreSupport/WebPlatformStrategies.mm:
2204         * WebCoreSupport/WebUserMediaClient.mm:
2205         * WebView/WebFullScreenController.mm:
2206
2207 2017-01-12  Chris Dumez  <cdumez@apple.com>
2208
2209         Add KEYBOARD_KEY_ATTRIBUTE / KEYBOARD_CODE_ATTRIBUTE to FeatureDefines.xcconfig
2210         https://bugs.webkit.org/show_bug.cgi?id=166995
2211
2212         Reviewed by Jer Noble.
2213
2214         Add KEYBOARD_KEY_ATTRIBUTE / KEYBOARD_CODE_ATTRIBUTE to FeatureDefines.xcconfig
2215         as some people are having trouble building without it.
2216
2217         * Configurations/FeatureDefines.xcconfig:
2218
2219 2017-01-12  Chris Dumez  <cdumez@apple.com>
2220
2221         HTML form validation popover sometimes does not go away
2222         https://bugs.webkit.org/show_bug.cgi?id=166990
2223         <rdar://problem/29985957>
2224
2225         Reviewed by Tim Horton.
2226
2227         Update code using ValidationBubble now that it is RefCounted.
2228
2229         * WebView/WebView.mm:
2230         (-[WebView showFormValidationMessage:withAnchorRect:]):
2231
2232 2017-01-10  Ryosuke Niwa  <rniwa@webkit.org>
2233
2234         Remove pointerLockElement from DOMDocumentPrivate.h
2235         https://bugs.webkit.org/show_bug.cgi?id=166882
2236
2237         Reviewed by Simon Fraser.
2238
2239         Removed pointerLockElement declaration that was supposed to be removed in r209637.
2240
2241         * DOM/DOMDocumentPrivate.h:
2242
2243 2017-01-06  Darin Adler  <darin@apple.com>
2244
2245         Remove PassRefPtr use from "inspector", "platform/sql", and "platform/text"
2246         https://bugs.webkit.org/show_bug.cgi?id=166797
2247
2248         Reviewed by Alex Christensen.
2249
2250         * WebCoreSupport/WebEditorClient.h: Updated to take a reference.
2251         * WebCoreSupport/WebEditorClient.mm:
2252         (WebEditorClient::requestCheckingOfString): Take a reference
2253         instead of a PassRefPtr.
2254
2255 2017-01-05  Chris Dumez  <cdumez@apple.com>
2256
2257         Turn preferLowPowerWebGLRendering setting on by default
2258         https://bugs.webkit.org/show_bug.cgi?id=166737
2259         <rdar://problem/29870033>
2260
2261         Reviewed by Dean Jackson.
2262
2263         Temporarily turn preferLowPowerWebGLRendering setting on by default until
2264         we deal better with WebGL content in background tabs.
2265
2266         * WebView/WebPreferences.mm:
2267         (+[WebPreferences initialize]):
2268
2269 2017-01-05  Enrica Casucci  <enrica@apple.com>
2270
2271         Support File Promise during drag for macOS.
2272         https://bugs.webkit.org/show_bug.cgi?id=165204
2273         rdar://problem/19595567
2274
2275         Reviewed by Tim Horton.
2276
2277         Adds support for dropping a File Promise in a WebView.
2278         The implementation uses new File Promise API available in Sierra.
2279
2280         * Misc/WebNSPasteboardExtras.mm:
2281         (+[NSPasteboard _web_dragTypesForURL]):
2282         * WebView/WebView.mm:
2283         (-[WebView performDragOperation:]):
2284
2285 2017-01-05  Andreas Kling  <akling@apple.com>
2286
2287         Remove ChromeClient::needTouchEvents().
2288         <https://webkit.org/b/166723>
2289
2290         Rubber-stamped by Antti Koivisto.
2291
2292         * WebCoreSupport/WebChromeClient.h:
2293
2294 2017-01-04  Darin Adler  <darin@apple.com>
2295
2296         Remove PassRefPtr use from the "html" directory, other improvements
2297         https://bugs.webkit.org/show_bug.cgi?id=166635
2298
2299         Reviewed by Alex Christensen.
2300
2301         * WebCoreSupport/WebChromeClient.h:
2302         * WebCoreSupport/WebChromeClient.mm:
2303         (WebChromeClient::loadIconForFiles): Take a reference instead of a pointer.
2304
2305 2017-01-04  Ryan Haddad  <ryanhaddad@apple.com>
2306
2307         Unreviewed, rolling out r210287.
2308
2309         This change caused editing test failures on macOS.
2310
2311         Reverted changeset:
2312
2313         "Support File Promise during drag for macOS."
2314         https://bugs.webkit.org/show_bug.cgi?id=165204
2315         http://trac.webkit.org/changeset/210287
2316
2317 2017-01-04  Enrica Casucci  <enrica@apple.com>
2318
2319         Support File Promise during drag for macOS.
2320         https://bugs.webkit.org/show_bug.cgi?id=165204
2321         rdar://problem/19595567
2322
2323         Reviewed by Tim Horton.
2324
2325         Adds support for dropping a File Promise in a WebView.
2326         The implementation uses new File Promise API available in Sierra.
2327
2328         * Misc/WebNSPasteboardExtras.mm:
2329         (+[NSPasteboard _web_dragTypesForURL]):
2330         * WebView/WebView.mm:
2331         (-[WebView performDragOperation:]):
2332
2333 2017-01-04  Tim Horton  <timothy_horton@apple.com>
2334
2335         Provide a setting for clients to always prefer low-power WebGL
2336         https://bugs.webkit.org/show_bug.cgi?id=166675
2337         <rdar://problem/29834093>
2338
2339         Reviewed by Dan Bernstein.
2340
2341         * WebView/WebPreferenceKeysPrivate.h:
2342         * WebView/WebPreferences.mm:
2343         (+[WebPreferences initialize]):
2344         (-[WebPreferences preferLowPowerWebGLRendering]):
2345         (-[WebPreferences setPreferLowPowerWebGLRendering:]):
2346         * WebView/WebPreferencesPrivate.h:
2347         * WebView/WebView.mm:
2348         (-[WebView _preferencesChanged:]):
2349         Expose a new private preferLowPowerWebGLRendering WebKit1 preference.
2350
2351 2017-01-03  Tim Horton  <timothy_horton@apple.com>
2352
2353         NSSpellChecker's recordResponse isn't called for unseen automatic corrections
2354         https://bugs.webkit.org/show_bug.cgi?id=166450
2355         <rdar://problem/29447824>
2356
2357         Reviewed by Darin Adler.
2358
2359         * WebCoreSupport/CorrectionPanel.h:
2360         * WebCoreSupport/CorrectionPanel.mm:
2361         (CorrectionPanel::recordAutocorrectionResponse):
2362         (CorrectionPanel::handleAcceptedReplacement):
2363         * WebCoreSupport/WebAlternativeTextClient.mm:
2364         (toCorrectionResponse):
2365         (WebAlternativeTextClient::recordAutocorrectionResponse):
2366         Funnel all calls to recordResponse:toCorrection:forWord:language:inSpellDocumentWithTag:
2367         through recordAutocorrectionResponse, for debugging's sake.
2368         Drop the NSView parameter because we don't need it, just the tag.
2369         Convert the new AutocorrectionResponseType value to its corresponding
2370         NSCorrectionResponse value.
2371
2372 2017-01-01  Jeff Miller  <jeffm@apple.com>
2373
2374         Update user-visible copyright strings to include 2017
2375         https://bugs.webkit.org/show_bug.cgi?id=166278
2376
2377         Reviewed by Dan Bernstein.
2378
2379         * Info.plist:
2380
2381 2016-12-30  Darin Adler  <darin@apple.com>
2382
2383         Remove PassRefPtr use from the "dom" directory, related cleanup
2384         https://bugs.webkit.org/show_bug.cgi?id=166569
2385
2386         Reviewed by Alex Christensen.
2387
2388         * WebCoreSupport/WebFrameLoaderClient.mm:
2389         (WebFrameLoaderClient::dispatchDidReceiveTitle): Updated to use struct.
2390         (WebFrameLoaderClient::updateGlobalHistory): Ditto.
2391         (WebFrameLoaderClient::setTitle): Ditto.
2392         (WebFrameLoaderClient::transitionToCommittedForNewPage): Ditto.
2393         * WebView/WebFrame.mm:
2394         (-[WebFrame _dispatchDidReceiveTitle:]): Use aggregate-style syntax for StringWithDirection.
2395         Not needed now, but useful later if we ever can get rid of the explicit constructors.
2396         (-[WebFrame loadArchive:]): Pass a reference to loadArchive.
2397         * WebView/WebHTMLRepresentation.mm:
2398         (-[WebHTMLRepresentation title]): Updated to use struct.
2399
2400 2016-12-25  Yusuke Suzuki  <utatane.tea@gmail.com>
2401
2402         Propagate the source origin as much as possible
2403         https://bugs.webkit.org/show_bug.cgi?id=166348
2404
2405         Reviewed by Darin Adler.
2406
2407         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2408         (WebKit::NetscapePluginInstanceProxy::evaluate):
2409
2410 2016-12-23  Andy Estes  <aestes@apple.com>
2411
2412         [iOS] DumpRenderTree triggers an assertion failure when calling +[WebPreferences _switchNetworkLoaderToNewTestingSession]
2413         https://bugs.webkit.org/show_bug.cgi?id=166471
2414
2415         Reviewed by Andreas Kling.
2416
2417         When DumpRenderTree starts up, it calls
2418         +[WebPreferences _switchNetworkLoaderToNewTestingSession] from the main thread. In Debug
2419         builds, this triggers the ASSERT(isMainThread()) in
2420         NetworkStorageSession::defaultNetworkStorageSession() because the Web thread has already
2421         started, we are on the main thread, and we are not holding the Web thread lock. This is
2422         causing all layout tests to crash in the iOS WK1 Debug configuration.
2423
2424         * WebView/WebPreferences.mm: (+[WebPreferences _switchNetworkLoaderToNewTestingSession]):
2425         Take the Web thread lock before calling NetworkStorageSession::switchToNewTestingSession().
2426
2427 2016-12-22  Andy Estes  <aestes@apple.com>
2428
2429         Make WebCore::EditorInsertAction an enum class
2430         https://bugs.webkit.org/show_bug.cgi?id=166424
2431
2432         Reviewed by Brent Fulgham.
2433
2434         * WebCoreSupport/WebEditorClient.mm:
2435         (kit):
2436
2437 2016-12-21  Beth Dakin  <bdakin@apple.com>
2438
2439         Holding down on candidates in the TouchBar should show panel on screen
2440         https://bugs.webkit.org/show_bug.cgi?id=166367
2441         -and corresponding-
2442         <rdar://problem/28479236>
2443
2444         Reviewed by Tim Horton.
2445
2446         Stray whitespace.
2447         * WebCoreSupport/WebEditorClient.mm:
2448         (WebEditorClient::handleRequestedCandidates):
2449
2450         Call the version of setCandidates: that takes a rect. We need to keep the helper 
2451         function in WK1 (unlike WK2) since we also use it for testing.
2452         * WebView/WebView.mm:
2453         (-[WebView showCandidates:forString:inRect:forSelectedRange:view:completionHandler:]):
2454
2455 2016-12-20  Dean Jackson  <dino@apple.com>
2456
2457         Remove INDIE_UI
2458         https://bugs.webkit.org/show_bug.cgi?id=165881
2459         <rdar://problem/29672532>
2460
2461         Reviewed by Simon Fraser.
2462
2463         The Indie UI work has been discontinued.
2464
2465         * Configurations/FeatureDefines.xcconfig:
2466
2467 2016-12-19  Yusuke Suzuki  <utatane.tea@gmail.com>
2468
2469         [ES6] Enable ES6 Modules
2470         https://bugs.webkit.org/show_bug.cgi?id=165849
2471
2472         Reviewed by Geoffrey Garen.
2473
2474         * WebView/WebPreferenceKeysPrivate.h:
2475         * WebView/WebPreferences.mm:
2476         (+[WebPreferences initialize]):
2477         (-[WebPreferences es6ModulesEnabled]): Deleted.
2478         (-[WebPreferences setES6ModulesEnabled:]): Deleted.
2479         * WebView/WebPreferencesPrivate.h:
2480         * WebView/WebView.mm:
2481         (-[WebView _preferencesChanged:]):
2482
2483 2016-12-16  Dave Hyatt  <hyatt@apple.com>
2484
2485         [CSS Values] Make separate wrapper classes for the deprecated CSS Values OM
2486         https://bugs.webkit.org/show_bug.cgi?id=165968
2487
2488         Reviewed by Andreas Kling.
2489
2490         * DOM/DOMCSS.mm:
2491         (kitClass):
2492         * DOM/DOMCSSPrimitiveValue.mm:
2493         (-[DOMCSSPrimitiveValue getCounterValue]):
2494         (-[DOMCSSPrimitiveValue getRectValue]):
2495         (kit):
2496         * DOM/DOMCSSPrimitiveValueInternal.h:
2497         * DOM/DOMCSSStyleDeclaration.mm:
2498         * DOM/DOMCSSValue.mm:
2499         (kit):
2500         * DOM/DOMCSSValueInternal.h:
2501         * DOM/DOMCSSValueList.mm:
2502         * DOM/DOMCounter.mm:
2503         (kit):
2504         * DOM/DOMCounterInternal.h:
2505         * DOM/DOMRGBColor.mm:
2506         (kit):
2507         * DOM/DOMRGBColorInternal.h:
2508         * DOM/DOMRect.mm:
2509         (kit):
2510         * DOM/DOMRectInternal.h:
2511         * DOM/DOMUtility.mm:
2512         (createDOMWrapper):
2513
2514 2016-12-16  Chris Dumez  <cdumez@apple.com>
2515
2516         HTML form validation bubble should be dismissed on navigation
2517         https://bugs.webkit.org/show_bug.cgi?id=165960
2518         <rdar://problem/29668086>
2519
2520         Reviewed by Simon Fraser.
2521
2522         Dismiss HTML form validation bubble on top-level navigation on Mac WK1.
2523
2524         * WebView/WebView.mm:
2525         (-[WebView _didStartProvisionalLoadForFrame:]):
2526
2527 2016-12-15  Darin Adler  <darin@apple.com>
2528
2529         Use asString instead of toWTFString, toString, or getString when we already checked isString
2530         https://bugs.webkit.org/show_bug.cgi?id=165895
2531
2532         Reviewed by Yusuke Suzuki.
2533
2534         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2535         (WebKit::NetscapePluginInstanceProxy::addValueToArray): Use asString/value instead of
2536         toWTFString.
2537         * WebView/WebView.mm:
2538         (aeDescFromJSValue): Use asString/value instead of getString.
2539
2540 2016-12-15  Chris Dumez  <cdumez@apple.com>
2541
2542         Make sure HTML validation bubble's state is updated after layout
2543         https://bugs.webkit.org/show_bug.cgi?id=165922
2544         <rdar://problem/29694730>
2545
2546         Reviewed by Simon Fraser.
2547
2548         Make sure HTML validation bubble's state is updated after layout.
2549         In particular, if the validation bubble's associated element has
2550         moved or is no longer visible, we now hide the bubble.
2551
2552         * WebCoreSupport/WebValidationMessageClient.h:
2553         * WebCoreSupport/WebValidationMessageClient.mm:
2554         (WebValidationMessageClient::showValidationMessage):
2555         (WebValidationMessageClient::hideValidationMessage):
2556         (WebValidationMessageClient::updateValidationBubbleStateIfNeeded):
2557
2558 2016-12-15  Chris Dumez  <cdumez@apple.com>
2559
2560         Move charCode / keyCode / which attributes from UIEvent to KeyboardEvent
2561         https://bugs.webkit.org/show_bug.cgi?id=165904
2562
2563         Reviewed by Sam Weinig.
2564
2565         Update ObjC bindings so they keep building.
2566
2567         * DOM/DOMUIEvent.mm:
2568         (-[DOMUIEvent keyCode]):
2569         (-[DOMUIEvent charCode]):
2570
2571 2016-12-15  Andreas Kling  <akling@apple.com>
2572
2573         Always clear RenderLayer backing stores when going into page cache.
2574         <https://webkit.org/b/165901>
2575
2576         Reviewed by Simon Fraser.
2577
2578         * WebView/WebView.mm:
2579         (+[WebView _setCacheModel:]):
2580
2581 2016-12-12  Alex Christensen  <achristensen@webkit.org>
2582
2583         Remove unused workaround for Silverlight
2584         https://bugs.webkit.org/show_bug.cgi?id=165773
2585
2586         Reviewed by Dean Jackson.
2587
2588         * Plugins/WebNetscapePluginView.mm:
2589         (-[WebNetscapePluginView _workaroundSilverlightFullscreenBug:]): Deleted.
2590         This code was introduced in January 2010.  Microsoft fixed their bug shortly thereafter.
2591         Allowing 6 years for users to update Silverlight is more than enough.
2592         Safari doesn't even use WebKit1 for this any more.
2593         I need this to be removed because this is the only non-WebGL code that needs to link against
2594         the OpenGL framework, and I'm changing how that is done to link only through ANGLE instead.
2595
2596 2016-12-12  Chris Dumez  <cdumez@apple.com>
2597
2598         Document.visibilityState should use an IDL string enumeration
2599         https://bugs.webkit.org/show_bug.cgi?id=165774
2600
2601         Reviewed by Daniel Bates.
2602
2603         * DOM/DOMDocument.mm:
2604         (-[DOMDocument visibilityState]):
2605         * WebView/WebView.mm:
2606         (kit):
2607
2608 2016-12-12  Jer Noble  <jer.noble@apple.com>
2609
2610         Remove implementation of legacy Mozilla-based Fullscreen API.
2611         https://bugs.webkit.org/show_bug.cgi?id=165689
2612         <rdar://problem/29603053>
2613
2614         Reviewed by Eric Carlson.
2615
2616         * DOM/DOMElement.mm:
2617         (-[DOMElement webkitRequestFullScreen:]):
2618
2619 2016-12-10  Filip Pizlo  <fpizlo@apple.com>
2620
2621         The DOM should have an advancing wavefront opaque root barrier
2622         https://bugs.webkit.org/show_bug.cgi?id=165712
2623
2624         Reviewed by Yusuke Suzuki.
2625         
2626         Propagate the JSDOMWindowBase::commonVM() -> commonVM() change.
2627
2628         * Misc/WebCoreStatistics.mm:
2629         (+[WebCoreStatistics javaScriptObjectsCount]):
2630         (+[WebCoreStatistics javaScriptGlobalObjectsCount]):
2631         (+[WebCoreStatistics javaScriptProtectedObjectsCount]):
2632         (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]):
2633         (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]):
2634         (+[WebCoreStatistics javaScriptObjectTypeCounts]):
2635         (+[WebCoreStatistics shouldPrintExceptions]):
2636         (+[WebCoreStatistics setShouldPrintExceptions:]):
2637         (+[WebCoreStatistics memoryStatistics]):
2638         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
2639         * Plugins/Hosted/NetscapePluginHostProxy.mm:
2640         (identifierFromIdentifierRep):
2641         * Plugins/Hosted/ProxyInstance.mm:
2642         (WebKit::ProxyInstance::getPropertyNames):
2643         * Plugins/WebNetscapePluginStream.mm:
2644         (WebNetscapePluginStream::wantsAllStreams):
2645         * Plugins/WebNetscapePluginView.mm:
2646         (-[WebNetscapePluginView sendEvent:isDrawRect:]):
2647         (-[WebNetscapePluginView privateBrowsingModeDidChange]):
2648         (-[WebNetscapePluginView setWindowIfNecessary]):
2649         (-[WebNetscapePluginView createPluginScriptableObject]):
2650         (-[WebNetscapePluginView getFormValue:]):
2651         (-[WebNetscapePluginView evaluateJavaScriptPluginRequest:]):
2652         (-[WebNetscapePluginView webFrame:didFinishLoadWithReason:]):
2653         (-[WebNetscapePluginView loadPluginRequest:]):
2654         (-[WebNetscapePluginView _printedPluginBitmap]):
2655         * Plugins/WebPluginController.mm:
2656         (-[WebPluginController plugInViewWithArguments:fromPluginPackage:]):
2657         (-[WebPluginController stopOnePlugin:]):
2658         (-[WebPluginController stopOnePluginForPageCache:]):
2659         (-[WebPluginController destroyOnePlugin:]):
2660         (-[WebPluginController startAllPlugins]):
2661         (-[WebPluginController addPlugin:]):
2662
2663 2016-12-09  Dave Hyatt  <hyatt@apple.com>
2664
2665         [CSS Parser] Remove the old CSS Parser
2666         https://bugs.webkit.org/show_bug.cgi?id=165645
2667
2668         Reviewed by Daniel Bates.
2669
2670         * DOM/DOMCSS.mm:
2671         (kitClass):
2672         * DOM/DOMCSSRule.h:
2673
2674 2016-12-09  Eric Carlson  <eric.carlson@apple.com>
2675
2676         Annotate MediaStream and WebRTC idl with EnabledAtRuntime flag
2677         https://bugs.webkit.org/show_bug.cgi?id=165251
2678
2679         Reviewed by Dean Jackson.
2680
2681         Based on a patch by Dr Alex Gouaillard <agouaillard@gmail.com>
2682
2683         * WebView/WebPreferenceKeysPrivate.h: Add MediaStream and PeerConnection preferences.
2684         * WebView/WebPreferences.mm:
2685         (+[WebPreferences initialize]):
2686         (-[WebPreferences mediaStreamEnabled]):
2687         (-[WebPreferences setMediaStreamEnabled:]):
2688         (-[WebPreferences peerConnectionEnabled]):
2689         (-[WebPreferences setPeerConnectionEnabled:]):
2690         * WebView/WebPreferencesPrivate.h:
2691         * WebView/WebView.mm:
2692         (-[WebView _preferencesChanged:]):
2693
2694 2016-12-09  Ryosuke Niwa  <rniwa@webkit.org>
2695
2696         Don’t expose pointer lock in WebKit1 Objective-C API
2697         https://bugs.webkit.org/show_bug.cgi?id=165692
2698
2699         Reviewed by Simon Fraser.
2700
2701         * DOM/DOMDocument.mm:
2702         (-[DOMDocument pointerLockElement]): Deleted.
2703         (-[DOMDocument exitPointerLock]): Deleted.
2704         * DOM/DOMElement.mm:
2705         (-[DOMElement requestPointerLock]): Deleted.
2706         * DOM/DOMMouseEvent.mm:
2707         (-[DOMMouseEvent movementX]): Deleted.
2708         (-[DOMMouseEvent movementY]): Deleted.
2709
2710 2016-12-09  Ryosuke Niwa  <rniwa@webkit.org>
2711
2712         document.webkitFullscreenElement leaks elements inside a shadow tree
2713         https://bugs.webkit.org/show_bug.cgi?id=158471
2714
2715         Reviewed by Chris Dumez.
2716
2717         Use the API for bindings to avoid exposing nodes inside a shadow tree.
2718
2719         * DOM/DOMDocument.mm:
2720         (-[DOMDocument webkitCurrentFullScreenElement]):
2721         (-[DOMDocument webkitFullscreenElement]):
2722
2723 2016-12-09  Beth Dakin  <bdakin@apple.com>
2724
2725         Password fields should not show the emoji button in TouchBar
2726         https://bugs.webkit.org/show_bug.cgi?id=165673
2727         -and corresponding-
2728         rdar://problem/29235739
2729
2730         Reviewed by Wenson Hsieh.
2731
2732         This patch adds a new ivar for the password touch bar and password 
2733         candidateListTouchBarItem. Since this TouchBar will actually have a different set 
2734         of identifiers than the plain text TouchBar, it should just have its own variable.
2735
2736         The candidate list should be the only item for passwords.
2737         * WebView/WebView.mm:
2738         (-[WebView _passwordTextTouchBarDefaultItemIdentifiers]):
2739
2740         Account for _passwordTextTouchBar.
2741         (-[WebView didChangeAutomaticTextCompletion:]):
2742         (-[WebView setUpTextTouchBar:]):
2743         (-[WebView textTouchBar]):
2744
2745         The empty candidates array is not needed. We can just set @[ ] as the candidates 
2746         for the _passwordTextCandidateListTouchBarItem. Safe guards already exist in the 
2747         other parts of the code to prevent us from requesting or setting other candidates 
2748         when in a password field. 
2749         (-[WebView updateTextTouchBar]):
2750
2751         Account for _passwordTextTouchBar.
2752         (-[WebView candidateList]):
2753         * WebView/WebViewData.h:
2754
2755 2016-12-08  Filip Pizlo  <fpizlo@apple.com>
2756
2757         Enable SharedArrayBuffer, remove the flag
2758         https://bugs.webkit.org/show_bug.cgi?id=165614
2759
2760         Rubber stamped by Geoffrey Garen.
2761
2762         * WebView/WebPreferencesPrivate.h:
2763
2764 2016-12-07  Dean Jackson  <dino@apple.com>
2765
2766         Remove runtime toggle for pointer-lock
2767         https://bugs.webkit.org/show_bug.cgi?id=165577
2768         <rdar://problems/29566996>
2769
2770         Reviewed by Jon Lee.
2771
2772         Remove any runtime calls to check if pointer-lock is enabled. It's
2773         either compiled in or out.
2774
2775         * WebView/WebPreferenceKeysPrivate.h:
2776         * WebView/WebPreferences.mm:
2777         (-[WebPreferences pointerLockEnabled]): Deleted.
2778         (-[WebPreferences setPointerLockEnabled:]): Deleted.
2779         * WebView/WebPreferencesPrivate.h:
2780         * WebView/WebView.mm:
2781         (-[WebView _preferencesChanged:]):
2782
2783 2016-12-06  Alexey Proskuryakov  <ap@apple.com>
2784
2785         Correct SDKROOT values in xcconfig files
2786         https://bugs.webkit.org/show_bug.cgi?id=165487
2787         rdar://problem/29539209
2788
2789         Reviewed by Dan Bernstein.
2790
2791         Fix suggested by Dan Bernstein.
2792
2793         * Configurations/DebugRelease.xcconfig:
2794
2795 2016-12-05  Simon Fraser  <simon.fraser@apple.com>
2796
2797         Improve the behavior of scroll-into-view when the target is inside position:fixed
2798         https://bugs.webkit.org/show_bug.cgi?id=165354
2799
2800         Reviewed by Zalan Bujtas.
2801
2802         Plumb through 'insideFixed'. We don't get compute it, so behavior from
2803         these call sites won't change.
2804
2805         * WebView/WebFrame.mm:
2806         (-[WebFrame _scrollDOMRangeToVisible:]):
2807         (-[WebFrame _scrollDOMRangeToVisible:withInset:]):
2808
2809 2016-12-06  Simon Fraser  <simon.fraser@apple.com>
2810
2811         Enable visual viewports by default on Mac, and iOS Wk2
2812         https://bugs.webkit.org/show_bug.cgi?id=165452
2813
2814         Reviewed by Zalan Bujtas.
2815
2816         Turn visual viewports on by default for WK1 on Mac.
2817
2818         * WebView/WebPreferences.mm:
2819         (+[WebPreferences initialize]):
2820
2821 2016-12-05  Dean Jackson  <dino@apple.com>
2822
2823         pointer lock needs to be feature detectable
2824         https://bugs.webkit.org/show_bug.cgi?id=165426
2825         <rdar://problem/29486715>
2826
2827         Reviewed by Antoine Quint.
2828
2829         Set the RuntimeEnabledFeature as preferences
2830         change.
2831
2832         * WebView/WebView.mm:
2833         (-[WebView _preferencesChanged:]):
2834
2835 2016-12-05  Ryan Haddad  <ryanhaddad@apple.com>
2836
2837         Unreviewed, rolling out r209299.
2838
2839         This change appears to have caused LayoutTest failures on
2840         Sierra WK1.
2841
2842         Reverted changeset:
2843
2844         "Improve the behavior of scroll-into-view when the target is
2845         inside position:fixed"
2846         https://bugs.webkit.org/show_bug.cgi?id=165354
2847         http://trac.webkit.org/changeset/209299
2848
2849 2016-12-02  Simon Fraser  <simon.fraser@apple.com>
2850
2851         Improve the behavior of scroll-into-view when the target is inside position:fixed
2852         https://bugs.webkit.org/show_bug.cgi?id=165354
2853
2854         Reviewed by Zalan Bujtas.
2855
2856         Plumb through 'insideFixed'. We don't get compute it, so behavior from
2857         these call sites won't change.
2858
2859         * WebView/WebFrame.mm:
2860         (-[WebFrame _scrollDOMRangeToVisible:]):
2861         (-[WebFrame _scrollDOMRangeToVisible:withInset:]):
2862
2863 2016-12-02  Andy Estes  <aestes@apple.com>
2864
2865         [Cocoa] Adopt the PRODUCT_BUNDLE_IDENTIFIER build setting
2866         https://bugs.webkit.org/show_bug.cgi?id=164492
2867
2868         Reviewed by Dan Bernstein.
2869
2870         * Configurations/WebKitLegacy.xcconfig: Set PRODUCT_BUNDLE_IDENTIFIER to
2871         com.apple.$(PRODUCT_NAME:rfc1034identifier).
2872         * Info.plist: Changed CFBundleIdentifier's value from com.apple.${PRODUCT_NAME} to
2873         ${PRODUCT_BUNDLE_IDENTIFIER}.
2874
2875 2016-12-02  Chris Dumez  <cdumez@apple.com>
2876
2877         Regression(r209252): HTML interactive validation should not be enabled on iOS WK1 yet
2878         https://bugs.webkit.org/show_bug.cgi?id=165328
2879
2880         Reviewed by Simon Fraser.
2881
2882         Only enable HTML interactive form validation on Mac WK1, not iOS WK1.
2883
2884         * WebView/WebViewData.mm:
2885         (-[WebViewPrivate init]):
2886
2887 2016-12-02  Chris Dumez  <cdumez@apple.com>
2888
2889         [Mac][WK1] Implement new HTML interactive form validation user interface
2890         https://bugs.webkit.org/show_bug.cgi?id=164483
2891
2892         Reviewed by Simon Fraser.
2893
2894         Implement new HTML interactive form validation user interface on Mac
2895         WK1 and enable it by default.
2896
2897         * WebCoreSupport/WebValidationMessageClient.h: Added.
2898         * WebCoreSupport/WebValidationMessageClient.mm: Added.
2899         (WebValidationMessageClient::WebValidationMessageClient):
2900         (WebValidationMessageClient::~WebValidationMessageClient):
2901         (WebValidationMessageClient::showValidationMessage):
2902         (WebValidationMessageClient::hideValidationMessage):
2903         (WebValidationMessageClient::isValidationMessageVisible):
2904         * WebView/WebHTMLView.mm:
2905         (-[WebHTMLView _frameOrBoundsChanged]):
2906         * WebView/WebView.mm:
2907         (-[WebView _commonInitializationWithFrameName:groupName:]):
2908         (-[WebView _willStartScrollingOrZooming]):
2909         (-[WebView _contentsOfUserInterfaceItem:]):
2910         (-[WebView _scaleWebView:atOrigin:]):
2911         (-[WebView _didScrollDocumentInFrameView:]):
2912         (-[WebView _setZoomMultiplier:isTextOnly:]):
2913         (-[WebView showFormValidationMessage:withAnchorRect:]):
2914         (-[WebView hideFormValidationMessage]):
2915         * WebView/WebViewData.h:
2916         * WebView/WebViewData.mm:
2917         (-[WebViewPrivate init]):
2918         * WebView/WebViewInternal.h:
2919         * WebView/WebViewPrivate.h:
2920
2921 2016-12-01  Jiewen Tan  <jiewen_tan@apple.com>
2922
2923         Add a runtime flag for SubtleCrypto
2924         https://bugs.webkit.org/show_bug.cgi?id=164982
2925
2926         Reviewed by Brent Fulgham.
2927
2928         * WebView/WebPreferenceKeysPrivate.h:
2929         * WebView/WebPreferences.mm:
2930         (+[WebPreferences initialize]):
2931         (-[WebPreferences subtleCryptoEnabled]):
2932         (-[WebPreferences setSubtleCryptoEnabled:]):
2933         * WebView/WebPreferencesPrivate.h:
2934         * WebView/WebView.mm:
2935         (-[WebView _preferencesChanged:]):
2936
2937 2016-11-30  Said Abou-Hallawa  <sabouhallawa@apple.com>
2938
2939         Add separate settings and preferences to enable/disable async decoding for large images and animated images
2940         https://bugs.webkit.org/show_bug.cgi?id=165177
2941
2942         Reviewed by Simon Fraser.
2943         
2944         Hook up the async image decoding settings for WebKit1.
2945
2946         * WebView/WebPreferenceKeysPrivate.h:
2947         * WebView/WebPreferences.mm:
2948         (+[WebPreferences initialize]):
2949         (-[WebPreferences largeImageAsyncDecodingEnabled]):
2950         (-[WebPreferences setLargeImageAsyncDecodingEnabled:]):
2951         (-[WebPreferences animatedImageAsyncDecodingEnabled]):
2952         (-[WebPreferences setAnimatedImageAsyncDecodingEnabled:]):
2953         (-[WebPreferences asyncImageDecodingEnabled]): Deleted.
2954         (-[WebPreferences setAsyncImageDecodingEnabled:]): Deleted.
2955         * WebView/WebPreferencesPrivate.h:
2956         * WebView/WebView.mm:
2957         (-[WebView _preferencesChanged:]):
2958
2959 2016-11-29  Andy Estes  <aestes@apple.com>
2960
2961         [Cocoa] Enable two clang warnings recommended by Xcode
2962         https://bugs.webkit.org/show_bug.cgi?id=164498
2963
2964         Reviewed by Mark Lam.
2965
2966         * Configurations/Base.xcconfig: Enabled CLANG_WARN_INFINITE_RECURSION and CLANG_WARN_SUSPICIOUS_MOVE.
2967
2968 2016-11-26  Yusuke Suzuki  <utatane.tea@gmail.com>
2969
2970         [WTF] Import std::optional reference implementation as WTF::Optional
2971         https://bugs.webkit.org/show_bug.cgi?id=164199
2972
2973         Reviewed by Saam Barati and Sam Weinig.
2974
2975         Use WTF::Optional::value_or.
2976
2977         * DOM/DOMHTMLOptionsCollection.mm:
2978         (-[DOMHTMLOptionsCollection add:index:]):
2979         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
2980         (WebKit::NetscapePluginInstanceProxy::evaluate):
2981         * Plugins/WebNetscapePluginView.mm:
2982         (-[WebNetscapePluginView sendEvent:isDrawRect:]):
2983         * WebCoreSupport/WebFrameLoaderClient.h:
2984         * WebCoreSupport/WebFrameLoaderClient.mm:
2985         (WebFrameLoaderClient::dispatchDidCommitLoad):
2986         * WebCoreSupport/WebPaymentCoordinatorClient.h:
2987         * WebCoreSupport/WebPaymentCoordinatorClient.mm:
2988         (WebPaymentCoordinatorClient::completeShippingMethodSelection):
2989         (WebPaymentCoordinatorClient::completeShippingContactSelection):
2990         (WebPaymentCoordinatorClient::completePaymentMethodSelection):
2991         * WebCoreSupport/WebSecurityOrigin.mm:
2992         (-[WebSecurityOrigin port]):
2993         * WebView/WebHTMLView.mm:
2994         (toAction):
2995         (toTag):
2996
2997 2016-11-26  Sam Weinig  <sam@webkit.org>
2998
2999         Convert IntersectionObserver over to using RuntimeEnabledFeatures so it can be properly excluded from script
3000         https://bugs.webkit.org/show_bug.cgi?id=164965
3001
3002         Reviewed by Simon Fraser.
3003
3004         * WebView/WebPreferenceKeysPrivate.h:
3005         * WebView/WebPreferences.mm:
3006         (-[WebPreferences intersectionObserverEnabled]):
3007         (-[WebPreferences setIntersectionObserverEnabled:]):
3008         * WebView/WebPreferencesPrivate.h:
3009         * WebView/WebView.mm:
3010         (-[WebView _preferencesChanged:]):
3011         Add a preference, defaulting to off, for enabling IntersectionObserver.
3012
3013 2016-11-22  Dan Bernstein  <mitz@apple.com>
3014
3015         [Mac] In Legacy WebKit, pressing an arrow key in editable content doesn’t hide the mouse cursor
3016         https://bugs.webkit.org/show_bug.cgi?id=165036
3017         <rdar://problem/5708580>
3018
3019         Reviewed by Alexey Proskuryakov.
3020
3021         * WebView/WebHTMLView.mm:
3022         (-[WebHTMLView performKeyEquivalent:]): Hide the cursor if WebCore handled the event,
3023           similarly to what we do in -keyDown: and to what WKWebView does with all key events.
3024
3025 2016-11-21  Alex Christensen  <achristensen@webkit.org>
3026
3027         Fix Sierra CMake build after r208452
3028         https://bugs.webkit.org/show_bug.cgi?id=164437
3029
3030         * WebView/WebView.mm:
3031         (-[WebView updateMediaTouchBar]):
3032         I haven't enabled VIDEO_PRESENTATION_MODE in the CMake build yet.
3033         It's needed for playbackSessionInterface to exist.
3034
3035 2016-11-18  Enrica Casucci  <enrica@apple.com>
3036
3037         Refactor drag and drop for WebKit2 to encode DragData message exchange.
3038         https://bugs.webkit.org/show_bug.cgi?id=164945
3039
3040         Reviewed by Tim Horton.
3041
3042         * WebCoreSupport/WebDragClient.h:
3043         * WebCoreSupport/WebDragClient.mm:
3044         (WebDragClient::actionMaskForDrag):
3045         (WebDragClient::willPerformDragDestinationAction):
3046
3047 2016-11-18  Jeremy Jones  <jeremyj@apple.com>
3048
3049         Add runtime flag to enable pointer lock. Enable pointer lock feature for mac.
3050         https://bugs.webkit.org/show_bug.cgi?id=163801
3051
3052         Reviewed by Simon Fraser.
3053
3054         Plumb through PointerLockEnabled setting.
3055
3056         * Configurations/FeatureDefines.xcconfig:
3057         * WebCoreSupport/WebChromeClient.mm:
3058         (WebChromeClient::requestPointerUnlock):
3059         * WebView/WebPreferenceKeysPrivate.h:
3060         * WebView/WebPreferences.mm:
3061         (-[WebPreferences pointerLockEnabled]):
3062         (-[WebPreferences setPointerLockEnabled:]):
3063         * WebView/WebPreferencesPrivate.h:
3064         * WebView/WebView.mm:
3065         (-[WebView _preferencesChanged:]):
3066
3067 2016-11-17  Dan Bernstein  <mitz@apple.com>
3068
3069         Try to fix some non-macOS builds.
3070
3071         * WebView/WebView.mm:
3072
3073 2016-11-16  Dave Hyatt  <hyatt@apple.com>
3074
3075         [CSS Parser] Add @supports, @keyframe and media query parsing options
3076         https://bugs.webkit.org/show_bug.cgi?id=164821
3077
3078         Reviewed by Sam Weinig and Zalan Bujtas.
3079
3080         Fix up the create call now that fallback descriptor syntax is gone.
3081
3082         * DOM/DOM.mm:
3083         (-[DOMHTMLLinkElement _mediaQueryMatches]):
3084
3085 2016-11-17  Saam Barati  <sbarati@apple.com>
3086
3087         Remove async/await compile time flag and enable tests
3088         https://bugs.webkit.org/show_bug.cgi?id=164828
3089         <rdar://problem/28639334>
3090
3091         Reviewed by Yusuke Suzuki.
3092
3093         * Configurations/FeatureDefines.xcconfig:
3094
3095 2016-11-17  Yusuke Suzuki  <utatane.tea@gmail.com>
3096
3097         [JSC] WTF::TemporaryChange with WTF::SetForScope
3098         https://bugs.webkit.org/show_bug.cgi?id=164761
3099
3100         Reviewed by Saam Barati.
3101
3102         * WebView/WebView.mm:
3103         (-[WebView updateTextTouchBar]):
3104
3105 2016-11-16  Yusuke Suzuki  <utatane.tea@gmail.com>
3106
3107         [ES6][WebCore] Change ES6_MODULES compile time flag to runtime flag
3108         https://bugs.webkit.org/show_bug.cgi?id=164827
3109
3110         Reviewed by Ryosuke Niwa.
3111
3112         * Configurations/FeatureDefines.xcconfig:
3113         * WebView/WebPreferenceKeysPrivate.h:
3114         * WebView/WebPreferences.mm:
3115         (+[WebPreferences initialize]):
3116         (-[WebPreferences es6ModulesEnabled]):
3117         (-[WebPreferences setES6ModulesEnabled:]):
3118         * WebView/WebPreferencesPrivate.h:
3119         * WebView/WebView.mm:
3120         (-[WebView _preferencesChanged:]):
3121
3122 2016-11-14  Alex Christensen  <achristensen@webkit.org>
3123
3124         Move SecurityOrigin::createFromDatabaseIdentifier to SecurityOriginData
3125         https://bugs.webkit.org/show_bug.cgi?id=164720
3126
3127         Reviewed by Brady Eidson.
3128
3129         * Storage/WebDatabaseManager.mm:
3130         (-[WebDatabaseManager origins]):
3131         (-[WebDatabaseManager databasesWithOrigin:]):
3132         (-[WebDatabaseManager deleteOrigin:]):
3133         (-[WebDatabaseManager deleteDatabase:withOrigin:]):
3134         * Storage/WebDatabaseManagerClient.h:
3135         * Storage/WebDatabaseManagerClient.mm:
3136         (DidModifyOriginData::dispatchToMainThread):
3137         (DidModifyOriginData::DidModifyOriginData):
3138         (WebDatabaseManagerClient::dispatchDidModifyOrigin):
3139         (WebDatabaseManagerClient::dispatchDidModifyDatabase):
3140         * Storage/WebDatabaseQuotaManager.mm:
3141         (-[WebDatabaseQuotaManager usage]):
3142         (-[WebDatabaseQuotaManager quota]):
3143         (-[WebDatabaseQuotaManager setQuota:]):
3144         * Storage/WebStorageManager.mm:
3145         (-[WebStorageManager origins]):
3146         (-[WebStorageManager deleteOrigin:]):
3147         * Storage/WebStorageTrackerClient.h:
3148         * Storage/WebStorageTrackerClient.mm:
3149         (WebStorageTrackerClient::dispatchDidModifyOrigin):
3150         * WebCoreSupport/WebSecurityOrigin.mm:
3151         (-[WebSecurityOrigin usage]):
3152         (-[WebSecurityOrigin quota]):
3153         (-[WebSecurityOrigin setQuota:]):
3154
3155 2016-11-13  Darin Adler  <darin@apple.com>
3156
3157         Fix exception handling in SQL database code, streamline and update code
3158         https://bugs.webkit.org/show_bug.cgi?id=164685
3159
3160         Reviewed by Sam Weinig.
3161
3162         * Storage/WebDatabaseManager.mm:
3163         (-[WebDatabaseManager origins]): Updated to use DatabaseTracker and pass
3164         a reference.
3165         (-[WebDatabaseManager databasesWithOrigin:]): Ditto.
3166         (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Pass reference,
3167         but continue to use DatabaseManager.
3168         (-[WebDatabaseManager deleteOrigin:]): Use DatabaseTracker and pass a
3169         reference.
3170         (-[WebDatabaseManager deleteDatabase:withOrigin:]): Ditto.
3171
3172         * Storage/WebDatabaseManagerClient.h: Updated to take references.
3173         * Storage/WebDatabaseManagerClient.mm:
3174         (WebDatabaseManagerClient::WebDatabaseManagerClient): Initialize data
3175         members in the class definition.
3176         (DidModifyOriginData::dispatchToMainThread): Take references.
3177         (DidModifyOriginData::DidModifyOriginData): Ditto.
3178         (WebDatabaseManagerClient::dispatchDidModifyOrigin): Ditto.
3179         (WebDatabaseManagerClient::dispatchDidModifyDatabase): Ditto.
3180         (WebDatabaseManagerClient::dispatchDidAddNewOrigin): Ditto. Also use
3181         DatabaseTracker::singleton instead of tracker.
3182
3183         * Storage/WebDatabaseQuotaManager.mm:
3184         (-[WebDatabaseQuotaManager initWithOrigin:]): Reject nil pointer argument.
3185         (-[WebDatabaseQuotaManager usage]): Use reference instead of pointer.
3186         (-[WebDatabaseQuotaManager quota]): Ditto.
3187         (-[WebDatabaseQuotaManager setQuota:]): Ditto.
3188         * WebCoreSupport/WebSecurityOrigin.mm:
3189         (-[WebSecurityOrigin initWithURL:]): Tweaked code a bit.
3190         (-[WebSecurityOrigin usage]): Use DatabaseTracker and pass a reference.
3191         (-[WebSecurityOrigin quota]): Ditto.
3192         (-[WebSecurityOrigin setQuota:]): Ditto.
3193         * WebView/WebFrame.mm:
3194         (-[WebFrame _cacheabilityDictionary]): Pass a reference.
3195
3196 2016-11-12  Darin Adler  <darin@apple.com>
3197
3198         Remove a few assorted uses of ExceptionCode
3199         https://bugs.webkit.org/show_bug.cgi?id=164683
3200
3201         Reviewed by Chris Dumez.
3202
3203         * DOM/DOMDOMImplementation.mm:
3204         (-[DOMImplementation createDocumentType:publicId:systemId:]):
3205         Use raiseOnDOMError instead of much longer hand written equivalent.
3206         (-[DOMImplementation createDocument:qualifiedName:doctype:]): Ditto.
3207
3208         * DOM/DOMDocument.mm:
3209         (-[DOMDocument createEntityReference:]): Use raiseNotSupportedErrorException
3210         so we are not using a specific exception code.
3211
3212         * DOM/DOMHTMLOptionsCollection.mm:
3213         (-[DOMHTMLOptionsCollection add:index:]): Use raiseOnDOMError instead of
3214         much longer hand written equivalent.
3215         * DOM/DOMHTMLSelectElement.mm:
3216         (-[DOMHTMLSelectElement add:before:]): Ditto. Also removed unneeded return
3217         statement after calling a "no return" function.
3218
3219         * DOM/ExceptionHandlers.h: Removed overloads of raiseDOMException and
3220         raiseOnDOMError functions that take ExceptionCode; keep the ones that take
3221         Exception and ExceptionOr. Renamed the other overload of raiseDOMException
3222         to raiseDOMErrorException; it is only used as the non-inline implementation
3223         part of the inline raiseOnDOMError function.
3224         * DOM/ExceptionHandlers.mm:
3225         (raiseDOMErrorException): Renamed. Made the ExceptionCode overload be local
3226         to this source file instead of in the header.
3227         (raiseTypeErrorException): Updated for name change.
3228         (raiseNotSupportedErrorException): Added.
3229
3230 2016-11-11  Ryosuke Niwa  <rniwa@webkit.org>
3231
3232         Hovering over a slotted Text node clears hover state
3233         https://bugs.webkit.org/show_bug.cgi?id=164002
3234         <rdar://problem/29040471>
3235
3236         Reviewed by Simon Fraser.
3237
3238         * WebView/WebImmediateActionController.mm:
3239         (-[WebImmediateActionController performHitTestAtPoint:]):
3240
3241 2016-11-11  Wenson Hsieh  <wenson_hsieh@apple.com>
3242
3243         [WK2] autocorrect and autocapitalize attributes do not work in contenteditable elements
3244         https://bugs.webkit.org/show_bug.cgi?id=164538
3245         <rdar://problem/8418711>
3246
3247         Reviewed by Ryosuke Niwa.
3248
3249         Account for renaming HTMLElement::autocorrect to HTMLElement::shouldAutocorrect, as well as moving
3250         WebAutocapitalizeType to WebKit from WebCore. Additionally, moves the -autocorrect and -autocapitalize SPIs out
3251         of HTML(Input|Form|TextArea)ElementPrivate.h and into HTMLElementPrivate.h. This also means removing redundant
3252         code for interfacing with the unwrapped HTMLElement's autocorrect and autocapitalize attributes.
3253
3254         * DOM/DOMHTML.mm:
3255         (webAutocapitalizeType):
3256         (-[DOMHTMLInputElement _autocapitalizeType]):
3257         (-[DOMHTMLTextAreaElement _autocapitalizeType]):
3258         * DOM/DOMHTMLElement.mm:
3259         (-[DOMHTMLElement autocorrect]):
3260         (-[DOMHTMLElement setAutocorrect:]):
3261         (-[DOMHTMLElement autocapitalize]):
3262         (-[DOMHTMLElement setAutocapitalize:]):
3263         * DOM/DOMHTMLElementPrivate.h: Copied from Source/WebCore/html/Autocapitalize.h.
3264         * DOM/DOMHTMLFormElement.mm:
3265         (-[DOMHTMLFormElement autocorrect]): Deleted.
3266         (-[DOMHTMLFormElement setAutocorrect:]): Deleted.
3267         (-[DOMHTMLFormElement autocapitalize]): Deleted.
3268         (-[DOMHTMLFormElement setAutocapitalize:]): Deleted.
3269         * DOM/DOMHTMLInputElement.mm:
3270         (-[DOMHTMLInputElement autocorrect]): Deleted.
3271         (-[DOMHTMLInputElement setAutocorrect:]): Deleted.
3272         (-[DOMHTMLInputElement autocapitalize]): Deleted.
3273         (-[DOMHTMLInputElement setAutocapitalize:]): Deleted.
3274         * DOM/DOMHTMLInputElementPrivate.h:
3275         * DOM/DOMHTMLTextAreaElement.mm:
3276         (-[DOMHTMLTextAreaElement autocorrect]): Deleted.
3277         (-[DOMHTMLTextAreaElement setAutocorrect:]): Deleted.
3278         (-[DOMHTMLTextAreaElement autocapitalize]): Deleted.
3279         (-[DOMHTMLTextAreaElement setAutocapitalize:]): Deleted.
3280         * DOM/DOMHTMLTextAreaElementPrivate.h:
3281
3282         We need to import DOMHTMLElementPrivate.h here to avoid breaking UIKit. We should follow this up with a UIKit
3283         change to import DOMHTMLElementPrivate.h directly.
3284
3285         * DOM/DOMPrivate.h:
3286         * DOM/WebAutocapitalizeTypes.h: Copied from Tools/WebKitTestRunner/ios/UIKitSPI.h.
3287         * MigrateHeaders.make:
3288
3289 2016-11-11  Beth Dakin  <bdakin@apple.com>
3290
3291         Move to modern TouchBar methods
3292         https://bugs.webkit.org/show_bug.cgi?id=164655
3293         -and corresponding-
3294         rdar://problem/29226911
3295
3296         Reviewed by Wenson Hsieh.
3297
3298         customizationDefaultItemIdentifiers -> defaultItemIdentifiers
3299         itemIdentifiers -> defaultItemIdentifiers
3300         defaultItems -> templateItems
3301
3302         * WebView/WebView.mm:
3303         (-[WebView _plainTextTouchBarDefaultItemIdentifiers]):
3304         (-[WebView _richTextTouchBarDefaultItemIdentifiers]):
3305         (-[WebView setUpTextTouchBar:]):
3306         (-[WebView updateTextTouchBar]):
3307         (-[WebView _plainTextTouchBarCustomizationDefaultItemIdentifiers]): Deleted.
3308         (-[WebView _richTextTouchBarCustomizationDefaultItemIdentifiers]): Deleted.
3309
3310 2016-11-11  Darin Adler  <darin@apple.com>
3311
3312         Move Node from ExceptionCode to ExceptionOr
3313         https://bugs.webkit.org/show_bug.cgi?id=164515
3314
3315         Reviewed by Sam Weinig.
3316
3317         * DOM/DOMHTMLSelectElement.mm:
3318         (-[DOMHTMLSelectElement remove:]): Call remove instead of removeByIndex
3319         now that it was renamed.
3320         * DOM/DOMNode.mm:
3321         (-[DOMNode setNodeValue:]): Updated exception handling.
3322         (-[DOMNode setPrefix:]): Ditto.
3323         (-[DOMNode setTextContent:]): Ditto.
3324         (-[DOMNode insertBefore:refChild:]): Ditto.
3325         (-[DOMNode replaceChild:oldChild:]): Ditto.
3326         (-[DOMNode removeChild:]): Ditto.
3327         (-[DOMNode appendChild:]): Ditto.
3328         (-[DOMNode cloneNode:]): Ditto.
3329
3330 2016-11-11  Beth Dakin  <bdakin@apple.com>
3331
3332         Get touch bar code building for open source builds
3333         https://bugs.webkit.org/show_bug.cgi?id=164610
3334
3335         Reviewed by Wenson Hsieh.
3336
3337         * WebKitPrefix.h:
3338
3339 2016-11-10  Alex Christensen  <achristensen@webkit.org>
3340
3341         Fix assertion after r208534.
3342         https://bugs.webkit.org/show_bug.cgi?id=160497
3343
3344         * WebView/WebView.mm:
3345         (-[WebView _commonInitializationWithFrameName:groupName:]):
3346         (WebInstallMemoryPressureHandler):
3347         WebInstallMemoryPressureHandler can be called before [WebView initWithFrame:frameName:groupName:]
3348         When this happens, we should use the same std::once_flag to make sure we install the MemoryPressureHandler::singleton
3349         only once, otherwise we get an assertion !m_installed in MemoryPressureHandler::setLowMemoryHandler.
3350
3351 2016-11-10  Alex Christensen  <achristensen@webkit.org>
3352
3353         Move SecurityOrigin::databaseIdentifier() to SecurityOriginData
3354         https://bugs.webkit.org/show_bug.cgi?id=164573
3355
3356         Reviewed by Brady Eidson.
3357
3358         * WebCoreSupport/WebSecurityOrigin.mm:
3359         (-[WebSecurityOrigin databaseIdentifier]):
3360
3361 2016-10-14  Carlos Garcia Campos  <cgarcia@igalia.com>
3362
3363         MemoryPressureHandler shouldn't know how to release WebCore memory
3364         https://bugs.webkit.org/show_bug.cgi?id=160497
3365
3366         Reviewed by Michael Catanzaro.
3367
3368         Set the low memory handler before installing the memory pressure handler.
3369
3370         * WebView/WebView.mm:
3371         (-[WebView _commonInitializationWithFrameName:groupName:]):
3372
3373 2016-11-09  Ryosuke Niwa  <rniwa@webkit.org>
3374
3375         WebHTMLView's _attributeStringFromDOMRange should use HTMLConverter instead of NSAttributedString's _initWithDOMRange
3376         https://bugs.webkit.org/show_bug.cgi?id=164501
3377         <rdar://problem/29152282>
3378
3379         Reviewed by Sam Weinig.
3380
3381         Align what [WebHTMLView attributedString] returns to what would be used on copy & paste by using HTMLConverter
3382         instead of _initWithDOMRange in [WebHTMLView _attributeStringFromDOMRange].
3383
3384         * WebView/WebHTMLView.mm:
3385         (-[WebHTMLView _attributedStringFromDOMRange:]): Renamed from _attributeStringFromDOMRange.
3386         (-[WebHTMLView attributedString]):
3387         (-[WebHTMLView selectedAttributedString]):
3388         (-[WebHTMLView selectedString]): Moved to reduce the number of occurrences of the if-defs.
3389
3390 2016-11-04  Brent Fulgham  <bfulgham@apple.com>
3391
3392         Local HTML should be blocked from localStorage access unless "Disable Local File Restrictions" is checked
3393         https://bugs.webkit.org/show_bug.cgi?id=155185
3394         <rdar://problem/11101440>
3395
3396         Reviewed by Brady Eidson.
3397
3398         Provide SPI to access the new quirk for localStorage. The quirk defaults to 'on'. When active, this
3399         quirk says that localStorage access should be granted, without needing to grant universal file access.
3400
3401         If the quirk is turned off, then localStorage is blocked unless the WebKit client explicitly
3402         grants universal file access.
3403
3404         * WebView/WebPreferenceKeysPrivate.h:
3405         * WebView/WebPreferences.mm:
3406         (-[WebPreferences needsLocalStorageQuirk]): Added.
3407         (-[WebPreferences setNeedsLocalStorageQuirk:]): Added.
3408         * WebView/WebPreferencesPrivate.h:
3409         * WebView/WebView.mm:
3410         (-[WebView _preferencesChanged:]): Honor the new localStorage quirk.
3411
3412 2016-11-09  Alex Christensen  <achristensen@webkit.org>
3413
3414         Clean up Storage code
3415         https://bugs.webkit.org/show_bug.cgi?id=164562
3416
3417         Reviewed by Brady Eidson.
3418
3419         * Storage/WebStorageManager.mm:
3420         (-[WebStorageManager origins]):
3421         (-[WebStorageManager deleteAllOrigins]):
3422         (-[WebStorageManager deleteOrigin:]):
3423         (-[WebStorageManager diskUsageForOrigin:]):
3424         (-[WebStorageManager syncLocalStorage]):
3425         (-[WebStorageManager syncFileSystemAndTrackerDatabase]):
3426         (+[WebStorageManager setStorageDatabaseIdleInterval:]):
3427         (+[WebStorageManager closeIdleLocalStorageDatabases]):
3428         (WebKitInitializeStorageIfNecessary):
3429         * WebView/WebView.mm:
3430         (+[WebView _applicationWillTerminate]):
3431
3432 2016-11-09  Beth Dakin  <bdakin@apple.com>
3433
3434         Another attempted build fix.
3435
3436         * WebView/WebView.mm:
3437
3438 2016-11-09  Beth Dakin  <bdakin@apple.com>
3439
3440         Attempted build fix.
3441
3442         * WebView/WebView.mm:
3443
3444 2016-11-09  Darin Adler  <darin@apple.com>
3445
3446         Move Range from ExceptionCode to ExceptionOr
3447         https://bugs.webkit.org/show_bug.cgi?id=164457
3448
3449         Reviewed by Alex Christensen.
3450
3451         * DOM/DOMRange.mm:
3452         (-[DOMRange setStart:offset:]): Updated exception handling.
3453         (-[DOMRange setEnd:offset:]): Ditto.
3454         (-[DOMRange setStartBefore:]): Ditto.
3455         (-[DOMRange setStartAfter:]): Ditto.
3456         (-[DOMRange setEndBefore:]): Ditto.
3457         (-[DOMRange setEndAfter:]): Ditto.
3458         (-[DOMRange selectNode:]): Ditto.
3459         (-[DOMRange selectNodeContents:]): Ditto.
3460         (-[DOMRange compareBoundaryPoints:sourceRange:]): Ditto.
3461         (-[DOMRange deleteContents]): Ditto.
3462         (-[DOMRange extractContents]): Ditto.
3463         (-[DOMRange cloneContents]): Ditto.
3464         (-[DOMRange insertNode:]): Ditto.
3465         (-[DOMRange surroundContents:]): Ditto.
3466         (-[DOMRange createContextualFragment:]): Ditto.
3467         (-[DOMRange compareNode:]): Ditto.
3468         (-[DOMRange intersectsNode:]): Ditto.
3469         (-[DOMRange comparePoint:offset:]): Ditto.
3470         (-[DOMRange isPointInRange:offset:]): Ditto.
3471         (-[DOMRange expand:]): Ditto.
3472         * WebView/WebFrame.mm:
3473         (-[WebFrame _documentFragmentWithMarkupString:baseURLString:]): Ditto.
3474         (-[WebFrame _smartDeleteRangeForProposedRange:]): Deleted.
3475         This function was incorrectly implemented (set both start and end of
3476         the range to the computed start), not declared in any header file,
3477         not used anywhere inside WebKit, and I also could not find a use of it
3478         in outside-WebKit Apple code.
3479         * mac/DOM/DOMUIKitExtensions.mm:
3480         (-[DOMRange move:inDirection:]): Ditto.
3481         (-[DOMRange extend:inDirection:]): Ditto.
3482
3483 2016-11-09  Darin Adler  <darin@apple.com>
3484
3485         Move EventTarget from ExceptionCode to ExceptionOr
3486         https://bugs.webkit.org/show_bug.cgi?id=164465
3487
3488         Reviewed by Youenn Fablet.
3489
3490         * DOM/DOMNode.mm:
3491         (-[DOMNode dispatchEvent:]): Updated exception handling.
3492
3493 2016-11-09  Chris Dumez  <cdumez@apple.com>
3494
3495         [Mac] Stop using deprecated AppKit enumeration values
3496         https://bugs.webkit.org/show_bug.cgi?id=164494
3497
3498         Reviewed by Darin Adler.
3499
3500         Stop using deprecated AppKit enumeration values.
3501
3502         * Carbon/CarbonWindowAdapter.mm:
3503         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
3504         (-[CarbonWindowAdapter sendSuperEvent:]):
3505         * Plugins/Hosted/NetscapePluginHostProxy.mm:
3506         (WebKit::NetscapePluginHostProxy::beginModal):
3507         * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
3508         (WebKit::NetscapePluginInstanceProxy::syntheticKeyDownWithCommandModifier):
3509         * Plugins/Hosted/WebHostedNetscapePluginView.mm:
3510         (-[WebHostedNetscapePluginView drawRect:]):
3511         * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
3512         (WebNetscapePluginEventHandlerCocoa::syntheticKeyDownWithCommandModifier):
3513         * WebCoreSupport/PopupMenuMac.mm:
3514         (PopupMenuMac::populate):
3515         (PopupMenuMac::show):
3516         * WebCoreSupport/WebContextMenuClient.mm:
3517         (WebContextMenuClient::showContextMenu):
3518         * WebCoreSupport/WebFrameLoaderClient.mm:
3519         (WebFrameLoaderClient::actionDictionary):
3520         * WebCoreSupport/WebInspectorClient.mm:
3521         (WebInspectorFrontendClient::canAttach):
3522         (-[WebInspectorWindowController window]):
3523         * WebInspector/WebNodeHighlight.mm:
3524         (-[WebNodeHighlight initWithTargetView:inspectorController:]):
3525         * WebView/WebFrameView.mm:
3526         (-[WebFrameView keyDown:keyDown:]):
3527         * WebView/WebFullScreenController.mm:
3528         (-[WebFullScreenController init]):
3529         (createBackgroundFullscreenWindow):
3530         * WebView/WebHTMLView.mm:
3531         (-[WebHTMLView _postFakeMouseMovedEventForFlagsChangedEvent:]):
3532         (-[WebHTMLView _setMouseDownEvent:_setMouseDownEvent:]):
3533         (-[WebHTMLView _updateMouseoverWithFakeEvent]):
3534         (isQuickLookEvent):
3535         (-[WebHTMLView hitTest:]):
3536         (-[WebHTMLView _sendToolTipMouseExited]):
3537         (-[WebHTMLView _sendToolTipMouseEntered]):
3538         (mouseEventIsPartOfClickOrDrag):
3539         (-[WebHTMLView _updateMouseoverWithEvent:]):
3540         (-[WebHTMLView _autoscroll]):
3541         (-[WebHTMLView acceptsFirstResponder]):
3542         (-[WebHTMLView viewDidMoveToWindow]):
3543         (-[WebHTMLView mouseDown:mouseDown:]):
3544         (currentKeyboardEvent):
3545         (-[WebHTMLView _handleStyleKeyEquivalent:]):
3546         (-[WebHTMLView _interpretKeyEvent:savingCommands:]):
3547         * WebView/WebPDFView.mm:
3548         (-[WebPDFView hitTest:]):
3549         (-[WebPDFView PDFViewWillClickOnLink:withURL:]):
3550         (-[WebPDFView _fakeKeyEventWithFunctionKey:]):
3551         * WebView/WebTextCompletionController.mm:
3552         (-[WebTextCompletionController _buildUI]):
3553         (-[WebTextCompletionController _placePopupWindow:]):
3554         * WebView/WebView.mm:
3555         (-[WebView applicationFlags:]):
3556
3557 2016-11-09  Beth Dakin  <bdakin@apple.com>
3558
3559         Support TouchBar in WebKit
3560         https://bugs.webkit.org/show_bug.cgi?id=164437
3561         -and corresponding-
3562         rdar://problem/28876524
3563
3564         Reviewed by Darin Adler.
3565
3566         * WebCoreSupport/WebEditorClient.mm:
3567         (WebEditorClient::respondToChangedSelection):
3568         (WebEditorClient::updateEditorStateAfterLayoutIfEditabilityChanged):
3569         * WebView/WebHTMLView.mm:
3570         (-[WebHTMLView candidateListTouchBarItem]):
3571         * WebView/WebView.mm:
3572         (-[_WebTextListTouchBarViewController initWithWebView:]):
3573         (-[_WebTextListTouchBarViewController _selectList:]):
3574         (-[_WebTextListTouchBarViewController setCurrentListType:]):
3575         (-[WebTextTouchBarItemController initWithWebView:]):
3576         (-[WebTextTouchBarItemController itemForIdentifier:]):
3577         (-[