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