1 2016-01-31 Gyuyoung Kim <gyuyoung.kim@webkit.org>
3 Use std::make_unique<> when creating an unique_ptr object.
4 https://bugs.webkit.org/show_bug.cgi?id=153705
6 Reviewed by Darin Adler.
8 * UIProcess/WebPageProxy.cpp:
9 (WebKit::WebPageProxy::WebPageProxy): Use std::make_unique<> instead of RunLoopObserver::create().
11 2016-01-30 Dan Bernstein <mitz@apple.com>
13 [Cocoa] Get rid of many WK_ macros for nullability
14 https://bugs.webkit.org/show_bug.cgi?id=153718
16 Sam Weinig reviewed an earlier version of this change, and Simon Fraser rubber-stamped this version.
18 * Shared/API/Cocoa/WKFoundation.h: Removed definitions of WK_ASSUME_NONNULL_{BEGIN, END},
19 WK_NULLABLE, WK_NULL_UNSPECIFIED, and WK_NULLABLE_PROPERTY. Removed the
20 !__has_feature(assume_nonnull) case.
22 * mac/postprocess-framework-headers.sh: Removed rules for rewriting the above macros. Also
23 chanegd to rewrite WK_NULLABLE_SPECIFIER to the modern _Nullable instead of __nullable.
25 Replaced instances of the above macros with their expansions.
27 * UIProcess/API/Cocoa/WKBackForwardList.h:
28 * UIProcess/API/Cocoa/WKBackForwardListItem.h:
29 * UIProcess/API/Cocoa/WKError.h:
30 * UIProcess/API/Cocoa/WKFrameInfo.h:
31 * UIProcess/API/Cocoa/WKNavigationAction.h:
32 * UIProcess/API/Cocoa/WKNavigationDelegate.h:
33 * UIProcess/API/Cocoa/WKNavigationResponse.h:
34 * UIProcess/API/Cocoa/WKScriptMessage.h:
35 * UIProcess/API/Cocoa/WKScriptMessageHandler.h:
36 * UIProcess/API/Cocoa/WKSecurityOrigin.h:
37 * UIProcess/API/Cocoa/WKUIDelegate.h:
38 * UIProcess/API/Cocoa/WKUserContentController.h:
39 * UIProcess/API/Cocoa/WKUserScript.h:
40 * UIProcess/API/Cocoa/WKWebView.h:
41 * UIProcess/API/Cocoa/WKWebViewConfiguration.h:
42 * UIProcess/API/Cocoa/WKWebsiteDataRecord.h:
43 * UIProcess/API/Cocoa/WKWebsiteDataStore.h:
44 * UIProcess/API/Cocoa/WKWindowFeatures.h:
45 * UIProcess/API/Cocoa/_WKContextMenuElementInfo.h:
46 * UIProcess/API/Cocoa/_WKElementInfo.h:
47 * UIProcess/API/Cocoa/_WKPreviewElementInfo.h:
48 * UIProcess/API/Cocoa/_WKUserStyleSheet.h:
50 2016-01-30 Dan Bernstein <mitz@apple.com>
52 Reverted r195914, because at least one of the build.webkit.org builders still uses a compiler that doesn’t understand _Nullable.
54 * Shared/API/Cocoa/WKFoundation.h:
55 * UIProcess/API/Cocoa/WKBackForwardList.h:
56 * UIProcess/API/Cocoa/WKBackForwardListItem.h:
57 * UIProcess/API/Cocoa/WKError.h:
58 * UIProcess/API/Cocoa/WKFrameInfo.h:
59 * UIProcess/API/Cocoa/WKNavigationAction.h:
60 * UIProcess/API/Cocoa/WKNavigationDelegate.h:
61 * UIProcess/API/Cocoa/WKNavigationResponse.h:
62 * UIProcess/API/Cocoa/WKScriptMessage.h:
63 * UIProcess/API/Cocoa/WKScriptMessageHandler.h:
64 * UIProcess/API/Cocoa/WKSecurityOrigin.h:
65 * UIProcess/API/Cocoa/WKUIDelegate.h:
66 * UIProcess/API/Cocoa/WKUserContentController.h:
67 * UIProcess/API/Cocoa/WKUserScript.h:
68 * UIProcess/API/Cocoa/WKWebView.h:
69 * UIProcess/API/Cocoa/WKWebViewConfiguration.h:
70 * UIProcess/API/Cocoa/WKWebsiteDataRecord.h:
71 * UIProcess/API/Cocoa/WKWebsiteDataStore.h:
72 * UIProcess/API/Cocoa/WKWindowFeatures.h:
73 * UIProcess/API/Cocoa/_WKContextMenuElementInfo.h:
74 * UIProcess/API/Cocoa/_WKElementInfo.h:
75 * UIProcess/API/Cocoa/_WKPreviewElementInfo.h:
76 * UIProcess/API/Cocoa/_WKUserStyleSheet.h:
77 * mac/postprocess-framework-headers.sh:
79 2016-01-30 Commit Queue <commit-queue@webkit.org>
81 Unreviewed, rolling out r195911.
82 https://bugs.webkit.org/show_bug.cgi?id=153723
84 Caused frequent assertion failures on bots (Requested by ap on
89 "Replace CaseFoldingHash with ASCIICaseInsensitiveHash"
90 https://bugs.webkit.org/show_bug.cgi?id=153639
91 http://trac.webkit.org/changeset/195911
93 2016-01-30 Dan Bernstein <mitz@apple.com>
95 [Cocoa] Get rid of WK_ macros for nullability
96 https://bugs.webkit.org/show_bug.cgi?id=153718
98 Reviewed by Sam Weinig.
100 * Shared/API/Cocoa/WKFoundation.h: Removed definitions of WK_ASSUME_NONNULL_{BEGIN, END},
101 WK_NULLABLE, WK_NULL_UNSPECIFIED, WK_NULLABLE_SPECIFIER, and WK_NULLABLE_PROPERTY.
103 * mac/postprocess-framework-headers.sh: Removed rules for rewriting those macros.
105 Replaced instances of those macros with their expansions, but using the modern _Nullable
106 instead of __nullable:
108 * UIProcess/API/Cocoa/WKBackForwardList.h:
109 * UIProcess/API/Cocoa/WKBackForwardListItem.h:
110 * UIProcess/API/Cocoa/WKError.h:
111 * UIProcess/API/Cocoa/WKFrameInfo.h:
112 * UIProcess/API/Cocoa/WKNavigationAction.h:
113 * UIProcess/API/Cocoa/WKNavigationDelegate.h:
114 * UIProcess/API/Cocoa/WKNavigationResponse.h:
115 * UIProcess/API/Cocoa/WKScriptMessage.h:
116 * UIProcess/API/Cocoa/WKScriptMessageHandler.h:
117 * UIProcess/API/Cocoa/WKSecurityOrigin.h:
118 * UIProcess/API/Cocoa/WKUIDelegate.h:
119 * UIProcess/API/Cocoa/WKUserContentController.h:
120 * UIProcess/API/Cocoa/WKUserScript.h:
121 * UIProcess/API/Cocoa/WKWebView.h:
122 * UIProcess/API/Cocoa/WKWebViewConfiguration.h:
123 * UIProcess/API/Cocoa/WKWebsiteDataRecord.h:
124 * UIProcess/API/Cocoa/WKWebsiteDataStore.h:
125 * UIProcess/API/Cocoa/WKWindowFeatures.h:
126 * UIProcess/API/Cocoa/_WKContextMenuElementInfo.h:
127 * UIProcess/API/Cocoa/_WKElementInfo.h:
128 * UIProcess/API/Cocoa/_WKPreviewElementInfo.h:
129 * UIProcess/API/Cocoa/_WKUserStyleSheet.h:
131 2016-01-30 Darin Adler <darin@apple.com>
133 Replace CaseFoldingHash with ASCIICaseInsensitiveHash
134 https://bugs.webkit.org/show_bug.cgi?id=153639
136 Reviewed by Filip Pizlo.
138 * UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm: Use ASCIICaseInsensitiveHash
139 for MIME types. MIME types are all ASCII.
141 * UIProcess/Plugins/PlugInAutoStartProvider.h: Use ASCIICaseInsensitiveHash for
142 origins. Origin strings should use ASCII case insensitive matching and should not
145 * WebProcess/WebPage/WebPage.h: Use ASCIICaseInsensitiveHash for MIME types.
146 MIME types are all ASCII.
148 * WebProcess/WebProcess.cpp:
149 (WebKit::addCaseFoldedCharacters): Use ASCIICaseInsensitiveHash to hash plug-in
150 origin strings. (See rationale above.)
151 (WebKit::hashForPlugInOrigin): Updated comment.
153 2016-01-30 Jeremy Huddleston Sequoia <jeremyhu@apple.com>
155 [GTK] Use configured python executable when executing generate-inspector-gresource-manifest.py
156 https://bugs.webkit.org/show_bug.cgi?id=153712
158 Reviewed by Michael Catanzaro.
162 2016-01-29 Ada Chan <adachan@apple.com>
164 Enable VIDEO_PRESENTATION_MODE only in Debug and Release builds on Mac
165 https://bugs.webkit.org/show_bug.cgi?id=153665
167 Reviewed by Dan Bernstein.
169 * Configurations/FeatureDefines.xcconfig:
171 2016-01-29 Dan Bernstein <mitz@apple.com>
173 Don’t use the “.Development” suffix for engineering builds targeting iOS devices, because the XPC cache is only aware of the unsuffixed service identifiers.
175 Reviewed by Chris Dumez.
177 * Configurations/DebugRelease.xcconfig:
179 2016-01-29 Enrica Casucci <enrica@apple.com>
181 One more iOS build fix.
185 * Platform/spi/ios/UIKitSPI.h:
187 2016-01-29 Enrica Casucci <enrica@apple.com>
189 iOS build fix after r195826.
193 * Platform/spi/ios/UIKitSPI.h:
195 2016-01-29 Enrica Casucci <enrica@apple.com>
197 Disable text interaction with pencil.
198 https://bugs.webkit.org/show_bug.cgi?id=153655
199 rdar://problem/24337778
201 Reviewed by Tim Horton.
203 * Platform/spi/ios/UIKitSPI.h:
204 * UIProcess/ios/WKContentViewInteraction.mm:
205 (-[WKContentView _createAndConfigureDoubleTapGestureRecognizer]):
206 (-[WKContentView _singleTapCommited:]):
208 2016-01-29 Mario Sanchez Prada <mario@endlessm.com>
210 [GTK] WebProcess crashes when quickly attempting many DnD operations
211 https://bugs.webkit.org/show_bug.cgi?id=138468
213 Reviewed by Michael Catanzaro.
215 Guard all the new DnD-related code under GTK_CHECK_VERSION #if's to
216 make sure we don't bump the required version of GTK+ up to 3.16, and
217 it's buildable again with GTK+ >= 3.6.
219 * UIProcess/gtk/DragAndDropHandler.cpp:
220 (WebKit::DragAndDropHandler::DragAndDropHandler):
221 (WebKit::DragAndDropHandler::startDrag):
222 (WebKit::DragAndDropHandler::fillDragData):
223 (WebKit::DragAndDropHandler::finishDrag):
224 * UIProcess/gtk/DragAndDropHandler.h:
226 2016-01-28 Antti Koivisto <antti@apple.com>
228 Enable background tab suspension by default on OSX
229 https://bugs.webkit.org/show_bug.cgi?id=153629
230 <rdar://problem/24402895>
232 Reviewed by Andreas Kling.
234 * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
235 (WebKit::registerUserDefaultsIfNeeded):
237 2016-01-28 Dan Bernstein <mitz@apple.com>
239 [Cocoa] Use the non-Development variants of XPC services for development
240 https://bugs.webkit.org/show_bug.cgi?id=152545
242 Reviewed by Darin Adler.
244 The purpose of the Development variants of the WebKit XPC services is to allow the service
245 to link against the development WebKit dylibs rather than the system ones. Instead, we
246 accomplish this here by including dyld environment load commands in the normal services
247 when the WebKit dylibs are expected to be relocated. A new build setting,
248 WK_RELOCATABLE_FRAMEWORKS, controls this.
250 To make it easy to identify engineering builds of the services at runtime, they can be
251 given a distinctive suffix. A new build setting, WK_XPC_SERVICE_SUFFIX, controls this.
253 * Configurations/DebugRelease.xcconfig: Set WK_RELOCATABLE_FRAMEWORKS to YES and
254 WK_XPC_SERVICE_SUFFIX to ".Development".
256 * Configurations/BaseTarget.xcconfig: Make the quoted value of the WK_XPC_SERVICE_SUFFIX
257 build setting available as a preprocessor macro.
259 * Configurations/BaseXPCService.xcconfig:
260 - Simplify the definition of INSTALL_PATH now that there are no Development variants.
261 - Define WK_RELOCATABLE_FRAMEWORKS_LDFLAGS when building relocatable frameworks to include
262 -dyld_env options setting DYLD_FRAMEWORK_PATH to point to the directory containing
263 WebKit.framework and DYLD_LIBRARY_PATH to the framework’
\80\99s Frameworks subdirectory. When
264 not building relocatable frameworks, define WK_RELOCATABLE_FRAMEWORKS_LDFLAGS to include
265 a -headerpad option allowing dyld environment load commands to be added after the fact.
266 - Add WK_RELOCATABLE_FRAMEWORKS_LDFLAGS to OTHER_LDFLAGS.
267 - Define WK_XPC_SERVICE_INSERT_LIBRARIES_DIR when building relocatable frameworks to be
268 the path to the Frameworks subdirectory of the WebKit framework containing the service.
269 When not building relocatable frameworks, define it to the absolute path of the
270 Frameworks subdirectory of the installed WebKit framework.
272 * Configurations/DatabaseService.xcconfig: Append WK_XPC_SERVICE_SUFFIX to PRODUCT_NAME,
273 and remove no-longer-used definition of WK_XPC_SERVICE_VARIANT.
274 * Configurations/NetworkService.xcconfig: Append WK_XPC_SERVICE_SUFFIX to PRODUCT_NAME, add
275 WK_RELOCATABLE_FRAMEWORKS_LDFLAGS to OTHER_LDFLAGS, and remove no-longer-used definition
276 of WK_XPC_SERVICE_VARIANT.
277 * Configurations/PluginService.32.xcconfig: Ditto.
278 * Configurations/PluginService.64.xcconfig: Ditto.
279 * Configurations/WebContentService.xcconfig: Ditto.
281 * Configurations/DatabaseService.Development.xcconfig: Removed.
282 * Configurations/NetworkService.Development.xcconfig: Removed.
283 * Configurations/PluginService.32.Development.xcconfig: Removed.
284 * Configurations/PluginService.64.Development.xcconfig: Removed.
285 * Configurations/WebContentService.Development.xcconfig: Removed.
287 * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development: Removed.
288 * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService.Development/Info.plist: Removed.
289 * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseService/Info.plist: Set
290 CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix.
292 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development: Removed.
293 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-OSX.plist: Removed.
294 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService.Development/Info-iOS.plist: Removed.
295 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX-10.9-10.10.plist: Set
296 CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. Use
297 WK_XPC_SERVICE_INSERT_LIBRARIES_DIR in the value of DYLD_INSERT_LIBRARIES.
298 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX.plist: Set
299 CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix.
300 * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-iOS.plist: Ditto.
302 * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64-10.9-10.10.Info.plist: Ditto.
303 * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development: Removed.
304 * PluginProcess/EntryPoint/mac/XPCService/PluginService.Development/Info.plist: Removed.
306 * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development: Removed.
307 * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-OSX.plist: Removed.
308 * WebProcess/EntryPoint/mac/XPCService/WebContentService.Development/Info-iOS.plist: Removed.
309 * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist: Set
310 CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix. Use
311 WK_XPC_SERVICE_INSERT_LIBRARIES_DIR in the value of DYLD_INSERT_LIBRARIES.
312 * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX.plist: Set
313 CFBundleIdentifier to PRODUCT_NAME in order to include the optional suffix.
314 * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-iOS.plist: Ditto.
316 * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm: Removed.
318 * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
319 (WebKit::XPCServiceEventHandler): If stdout and stderr file descriptors are included in the
320 bootstrap message, hook them up to the serviceâ
\80\99s stdout and stderr, like the Development
322 (main): Moved code from XPCServiceMain.Development.mm to handle the optional
323 OverrideLanguages array.
325 * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
326 (WebKit::addDYLDEnvironmentAdditions): Addressed a FIXME.
327 (WebKit::serviceName): Removed forDevelopment argument and .Development service names.
328 Added WK_XPC_SERVICE_SUFFIX to the names.
329 (WebKit::connectToService): Updated for removal of forDevelopment argument. Removed
330 "framework-executable-path" key from the bootstrap message, because it was only used in
331 the Development variants.
332 (WebKit::connectToReExecService): Deleted.
333 (WebKit::createService): Removed call to connectToReExecService. Instead pass forDevelopment
336 * WebKit2.xcodeproj/project.pbxproj: Removed references to removed files. Removed targets
337 for Development services. Removed Development services from script build phase that copies
338 services into the framework in engineering builds, and made it respect
339 WK_XPC_SERVICE_SUFFIX.
341 2016-01-28 Enrica Casucci <enrica@apple.com>
343 Should avoid navigation for some data detector urls.
344 https://bugs.webkit.org/show_bug.cgi?id=153600
346 Reviewed by Tim Horton.
348 When a tap is commited, we normally generate a synthetic click if
349 the node responds to click events.
350 This patch adds the logic to prevent that from happening if the node
351 is a data detector link with certain characteristics (calendar event, telephone, etc.).
352 If this is the case, we compute the interaction information as position, send it
353 over to the UI process and notify that we did not handle the tap.
354 The page client is now also notified of this event and can show the data detector sheet if
357 * UIProcess/PageClient.h:
358 * UIProcess/ios/PageClientImplIOS.h:
359 * UIProcess/ios/PageClientImplIOS.mm:
360 (WebKit::PageClientImpl::toolTipChanged):
361 (WebKit::PageClientImpl::didNotHandleTapAsClick):
362 (WebKit::PageClientImpl::decidePolicyForGeolocationPermissionRequest):
363 * UIProcess/ios/WKContentViewInteraction.h:
364 * UIProcess/ios/WKContentViewInteraction.mm:
365 (-[WKContentView clearSelection]):
366 (-[WKContentView _didNotHandleTapAsClick:]):
367 (-[WKContentView _positionInformationDidChange:]):
368 * UIProcess/ios/WebPageProxyIOS.mm:
369 (WebKit::WebPageProxy::didNotHandleTapAsClick):
370 * WebProcess/WebPage/ios/WebPageIOS.mm:
371 (WebKit::WebPage::commitPotentialTap):
373 2016-01-28 Brent Fulgham <bfulgham@apple.com>
375 [iOS] Update Web Process sandbox profile for audiodeviceclock access
376 https://bugs.webkit.org/show_bug.cgi?id=153571
377 <rdar://problem/24134612>
379 Reviewed by Alexey Proskuryakov.
381 * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
383 2016-01-26 Ada Chan <adachan@apple.com>
385 Get WebVideoFullscreenManager and related classes to also compile for Mac platform
386 with video presentation mode support.
387 https://bugs.webkit.org/show_bug.cgi?id=153221
389 Reviewed by Eric Carlson.
391 * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h:
392 * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.messages.in:
393 * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm:
394 Enabled also for Mac with video presentation mode support.
395 (-[WKLayerHostView makeBackingLayer]):
396 Make sure this view uses CALayerHost for its layer.
397 (WebKit::WebVideoFullscreenManagerProxy::invalidate):
398 (WebKit::WebVideoFullscreenManagerProxy::createModelAndInterface):
399 (WebKit::WebVideoFullscreenManagerProxy::ensureInterface):
400 (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID):
401 Replace WebCore::WebVideoFullscreenInterfaceAVKit with PlatformWebVideoFullscreenInterface.
402 (WebKit::WebVideoFullscreenManagerProxy::setVideoLayerFrame):
403 +[UIWindow _synchronizeDrawingAcrossProcesses] is not available on Mac.
405 * UIProcess/WebPageProxy.cpp:
406 (WebKit::WebPageProxy::WebPageProxy):
407 (WebKit::WebPageProxy::reattachToWebProcess):
408 (WebKit::WebPageProxy::viewDidLeaveWindow):
409 (WebKit::WebPageProxy::resetState):
410 * UIProcess/WebPageProxy.h:
411 The code that creates m_videoFullscreenManager is now enabled also on Mac with video
412 presentation mode support.
414 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
415 * WebProcess/WebCoreSupport/WebChromeClient.h:
416 Enable the API related to the video fullscreen layer also on Mac with video presentation
419 * WebProcess/WebPage/WebPage.cpp:
420 * WebProcess/WebPage/WebPage.h:
421 The code that creates m_videoFullscreenManager is now enabled also on Mac with video
422 presentation mode support.
424 * WebProcess/cocoa/WebVideoFullscreenManager.h:
425 * WebProcess/cocoa/WebVideoFullscreenManager.messages.in:
426 * WebProcess/cocoa/WebVideoFullscreenManager.mm:
427 Enabled also for Mac with video presentation mode support.
428 (WebKit::WebVideoFullscreenManager::supportsVideoFullscreen):
429 Return false for now on Mac.
431 2016-01-28 Darin Adler <darin@apple.com>
433 Remove equalIgnoringCase since all callers really wanted equalIgnoringASCIICase
434 https://bugs.webkit.org/show_bug.cgi?id=153411
436 Reviewed by Ryosuke Niwa.
438 * Shared/API/c/WKString.cpp:
439 (WKStringIsEqualToUTF8CStringIgnoringCase): Use equalIgnoringASCIICase.
440 This is a change in behavior for callers who passed non-ASCII letters to
441 this function and expected case insensitive comparison.
443 * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
444 (WebKit::PDFPlugin::streamDidReceiveResponse): Use equalIgnoringASCIICase.
445 No change in behavior because this is just checking a fixed ASCII MIME type.
446 (WebKit::PDFPlugin::manualStreamDidReceiveResponse): Ditto.
447 * WebProcess/Plugins/PDF/PDFPlugin.mm:
448 (WebKit::PDFPlugin::streamDidReceiveResponse): Ditto.
449 (WebKit::PDFPlugin::manualStreamDidReceiveResponse): Ditto.
451 2016-01-27 Alex Christensen <achristensen@webkit.org>
453 Fix CMake build after r195722.
458 2016-01-27 Dan Bernstein <mitz@apple.com>
462 * Configurations/WebKit.xcconfig:
464 2016-01-27 Anders Carlsson <andersca@apple.com>
468 * Configurations/WebKit.xcconfig:
470 2016-01-27 Krzysztof Czech <k.czech@samsung.com>
472 [EFL] Remove unused accessibility related code
473 https://bugs.webkit.org/show_bug.cgi?id=153543
475 Reviewed by Darin Adler.
477 Do not need to load external library to expose WebKit's
478 accessibility tree. There have been changes in EFL/Elementary
479 in terms of support of accessibility and we should follow those.
481 * WebProcess/efl/WebProcessMainEfl.cpp:
482 (eailLibraryPath): Deleted.
485 2016-01-27 Enrica Casucci <enrica@apple.com>
487 Cache results of data detection in the UI process when load completes.
488 https://bugs.webkit.org/show_bug.cgi?id=153560
490 Reviewed by Tim Horton.
492 This patch changes when the results of data detections are sent to the
493 UIProcess. Before this change, they were only provided as part of
494 InteractionInformationAtPosition, which is populated when long press
495 gesture is triggered.
496 We need to have the results available if the client wants to allow navigation
497 to a data detector link, in order to allow them to retrieve the full url.
498 With this change, we now send the results as soon as they are computed
499 and keep them in the WebPageProxy object so that they can be fetched when
500 necessary from a WKWebView private interface.
502 * Shared/Cocoa/DataDetectionResult.h: Added.
503 * Shared/Cocoa/DataDetectionResult.mm: Added.
504 (WebKit::DataDetectionResult::encode):
505 (WebKit::DataDetectionResult::decode):
506 * UIProcess/API/Cocoa/WKWebView.mm:
507 (-[WKWebView _snapshotLayerContentsForBackForwardListItem:]):
508 (-[WKWebView _dataDetectionResults]):
509 (-[WKWebView _didRelaunchProcess]):
510 * UIProcess/API/Cocoa/WKWebViewPrivate.h:
511 * UIProcess/Cocoa/WebPageProxyCocoa.mm:
512 (WebKit::WebPageProxy::setDataDetectionResult):
513 (WebKit::WebPageProxy::saveRecentSearches):
514 * UIProcess/WebPageProxy.h:
515 (WebKit::WebPageProxy::websiteDataStore):
516 (WebKit::WebPageProxy::dataDetectionResults):
517 (WebKit::WebPageProxy::scrollingCoordinatorProxy):
518 * UIProcess/WebPageProxy.messages.in:
519 * UIProcess/ios/WKContentViewInteraction.h:
520 * UIProcess/ios/WKContentViewInteraction.mm:
521 (-[WKContentView ensurePositionInformationIsUpToDate:]):
522 (-[WKContentView _dataDetectionResults]):
523 (-[WKContentView gestureRecognizerShouldBegin:]):
524 * WebKit2.xcodeproj/project.pbxproj:
525 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
526 (WebKit::WebFrameLoaderClient::dispatchDidReceiveContentLength):
527 (WebKit::WebFrameLoaderClient::dispatchDidFinishDataDetection):
528 (WebKit::WebFrameLoaderClient::dispatchDidFinishLoading):
529 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
530 * WebProcess/WebPage/WebPage.cpp:
531 (WebKit::WebPage::updatePreferences):
532 (WebKit::WebPage::setDataDetectionResults):
533 (WebKit::WebPage::willCommitLayerTree):
534 * WebProcess/WebPage/WebPage.h:
535 (WebKit::WebPage::shouldExtendIncrementalRenderingSuppression):
537 2016-01-27 Anders Carlsson <andersca@apple.com>
539 Include the right WebKitAdditions files
540 https://bugs.webkit.org/show_bug.cgi?id=153572
542 Reviewed by Tim Horton.
544 * UIProcess/WebPageProxy.cpp:
545 (WebKit::WebPageProxy::WebPageProxy):
546 (WebKit::WebPageProxy::reattachToWebProcess):
548 2016-01-27 Daniel Bates <dabates@apple.com>
550 Move ContentSecurityPolicy.{cpp, h} to its own directory
551 https://bugs.webkit.org/show_bug.cgi?id=153527
552 <rdar://problem/24359892>
554 Reviewed by Sam Weinig.
556 Add ${WEBCORE_DIR}/page/csp to the list of WebKit2 include directories.
560 2016-01-27 Anders Carlsson <andersca@apple.com>
562 Add WebKitAdditions extension points to WebCore, WebKit and WebKitLegacy
563 https://bugs.webkit.org/show_bug.cgi?id=153550
565 Reviewed by Sam Weinig.
567 * DerivedSources.make:
568 Add the ability for WebKitAdditions to add new message receivers.
570 * Shared/Cocoa/WebKitAdditions.mm: Added.
573 * Shared/WebCoreArgumentCoders.h:
574 Add extension points.
576 * UIProcess/WebPageProxy.cpp:
577 (WebKit::WebPageProxy::WebPageProxy):
578 (WebKit::WebPageProxy::reattachToWebProcess):
579 (WebKit::WebPageProxy::resetState):
580 Add extension points.
582 * UIProcess/WebPageProxy.h:
583 Add extension points.
585 * WebKit2.xcodeproj/project.pbxproj:
588 * WebProcess/WebPage/WebPage.cpp:
589 Add extension points.
591 2016-01-27 Chris Dumez <cdumez@apple.com>
593 window.atob() should ignore spaces in input
594 https://bugs.webkit.org/show_bug.cgi?id=153522
595 <rdar://problem/24357822>
597 Reviewed by Benjamin Poulain.
599 * UIProcess/mac/WebInspectorProxyMac.mm:
600 (WebKit::WebInspectorProxy::platformSave):
602 2016-01-27 Ryosuke Niwa <rniwa@webkit.org>
604 Add API to access closed shadowRoot in InjectedBundle
605 https://bugs.webkit.org/show_bug.cgi?id=153533
607 Reviewed by Antti Koivisto.
609 Added WKBundleScriptWorldMakeAllShadowRootsOpen to make all shadow roots open.
610 This is needed to keep supporting certain browser-level features such as autofill.
612 * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.cpp:
613 (WKBundleScriptWorldMakeAllShadowRootsOpen): Added.
614 * WebProcess/InjectedBundle/API/c/WKBundleScriptWorld.h:
615 * WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp:
616 (WebKit::InjectedBundleScriptWorld::makeAllShadowRootsOpen): Added.
617 * WebProcess/InjectedBundle/InjectedBundleScriptWorld.h:
619 2016-01-27 Zhuo Li <zachli@apple.com>
621 Need ability to specify alternate image for AutoFill button in input fields.
622 https://bugs.webkit.org/show_bug.cgi?id=153116.
623 rdar://problem/23384854.
625 Reviewed by Darin Adler.
627 * WebProcess/InjectedBundle/API/c/WKBundleNodeHandle.cpp:
628 (toAutoFillButtonType): Convert the WebKit AutoFill button type enum to WebCore AutoFill button
630 (WKBundleNodeHandleSetHTMLInputElementAutoFillButtonEnabledWithButtonType): Added to be able to specify
631 what the AutoFill button type is. None means the AutoFill button is not shown.
632 (WKBundleNodeHandleSetHTMLInputElementAutoFillButtonEnabled): Deprecate this method.
633 * WebProcess/InjectedBundle/API/c/WKBundleNodeHandlePrivate.h: Declare an AutoFill button type enum.
634 * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
635 (WebKit::InjectedBundleNodeHandle::isHTMLInputElementAutoFillButtonEnabled): None means the AutoFill button is not enabled.
636 (WebKit::InjectedBundleNodeHandle::setHTMLInputElementAutoFillButtonEnabledWithButtonType): Use the new parameter to specify
637 what the AutoFill button type is.
638 * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h: Ditto.
640 2016-01-27 Dan Bernstein <mitz@apple.com>
642 More trying to fix the build.
644 * Configurations/WebKit.xcconfig:
646 2016-01-27 Alexey Proskuryakov <ap@apple.com>
648 Remove ENABLE_CURRENTSRC
649 https://bugs.webkit.org/show_bug.cgi?id=153545
651 Reviewed by Simon Fraser.
653 * Configurations/FeatureDefines.xcconfig:
655 2016-01-27 Sam Weinig <sam@webkit.org>
657 Try to fix the build.
659 * Configurations/WebKit.xcconfig:
661 2016-01-26 Sam Weinig <sam@webkit.org>
663 Attempt to force a rebuild.
665 * DerivedSources.make:
667 2016-01-26 Tim Horton <timothy_horton@apple.com>
669 REGRESSION (r194557): Keyboard shortcuts stop working after the WKWebView is unparented and reparented
670 https://bugs.webkit.org/show_bug.cgi?id=153492
671 <rdar://problem/24138989>
673 Reviewed by Dan Bernstein.
675 * UIProcess/ios/WKContentViewInteraction.h:
676 * UIProcess/ios/WKContentViewInteraction.mm:
677 (-[WKContentView canBecomeFirstResponder]):
678 (-[WKContentView becomeFirstResponder]):
679 (-[WKContentView resignFirstResponder]):
680 When WKWebView is unparented, WKContentView will attempt to resignFirstResponder upwards,
681 first asking WKWebView. After r194557, WKWebView will accept first responder and forward
682 it on to the WKContentView, which will happily accept it again, despite being the view
683 that's trying to resign. This will cause us to completely lose first responder,
684 where it was actually supposed to propagate up above WKWebView to the client.
686 Keep track of when WKContentView is resigning first responder, and don't
687 let it become first responder while it is doing so, breaking the cycle.
689 * UIProcess/ios/WKContentView.h:
690 * UIProcess/API/Cocoa/WKWebView.mm:
691 (-[WKWebView canBecomeFirstResponder]):
692 If the WKContentView is currently in the process of resigning first responder status,
693 we shouldn't accept it, because clients expect to receive it.
695 2016-01-26 I-Ting Liu <iting_liu@apple.com>
697 Implement wildcard matching for plug-in policy host.
698 https://bugs.webkit.org/show_bug.cgi?id=153090
700 Reviewed by Darin Adler.
702 WebPlatformStrategies decides the plug-in load policy for a host by looking
703 for a matched hostname in the list of plug-in policies sent by Safari. This
704 patch adds support for wildcard matching -- if there's a policy with hostname
705 "*.example.com," the policy for "foo.example.com" would be replaced with that
706 of "*.example.com" if there's no policy for this hostname. If there is more
707 than one wildcard hostname, the host with the longest wildcard hostname will
710 This patch adds a helper function in StringUtilites that matches a string to
711 another string, which may contain wildcard ('*') characters.
713 * Platform/mac/StringUtilities.h:
714 - Add WebKit::stringMatchesWildcardString.
715 - Remove #if ENABLE(TELEPHONE_NUMBER_DETECTION) && PLATFORM(MAC) flag so that
716 the compiler allows exposing StringUtilities.h.
717 - Add #if __OBJC__ to allow the file to be included in WebPltformStrategies.cpp
719 * Platform/mac/StringUtilities.mm:
720 (WebKit::stringMatchesWildcardString):
721 Return true if the entire first given String matches the second. The second string
722 may contain wildcard characters.
723 (WebKit::wildcardRegexPatternString):
724 Return the regex expression from a wildcard string by replacing the wildcard
725 character ('*') with (".*") and escaping regular expression metacharacters.
726 (WebKit::formattedPhoneNumberString):
727 To expose StringUtilities.h for tests, we removed #if ENABLE(TELEPHONE_NUMBER_DETECTION)
728 && PLATFORM(MAC) flag in the header. Add a function that returns nil for
729 #if !(ENABLE(TELEPHONE_NUMBER_DETECTION) && PLATFORM(MAC)) to fix the removal
730 of the flag in the header file.
732 * WebKit2.xcodeproj/project.pbxproj:
733 Change the file attribute of StringUtilities.h from Project to Private for
734 testing in TestWebKitAPI.
736 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
737 (WebKit::WebPlatformStrategies::longestMatchedWildcardHostForHost):
738 Return the wildcard hostname whose matched substring with the host is the longest.
739 (WebKit::WebPlatformStrategies::replaceHostWithMatchedWildcardHost):
740 Replace the look-up host with a matched wildcard host if there is a match and that
741 the matched wildcard host's plug-in identifier is the same as that of the host.
742 (WebKit::WebPlatformStrategies::pluginLoadClientPolicyForHost):
743 Try to replace the look-up host with the wildcard host if there's no policy for
744 the host. Restructure the function to reduce hashmap lookup.
746 * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
749 2016-01-26 Anders Carlsson <andersca@apple.com>
751 Remove -d flag from make invocation.
753 * WebKit2.xcodeproj/project.pbxproj:
755 2016-01-26 Joseph Pecoraro <pecoraro@apple.com>
757 Generalize ResourceUsageData gathering to be used outside of ResourceUsageOverlay
758 https://bugs.webkit.org/show_bug.cgi?id=153509
759 <rdar://problem/24354291>
761 Reviewed by Andreas Kling.
763 * WebProcess/WebPage/WebPage.cpp:
764 (WebKit::WebPage::updatePreferences):
765 Rename the ENABLE flag.
767 2016-01-26 Commit Queue <commit-queue@webkit.org>
769 Unreviewed, rolling out r195602.
770 https://bugs.webkit.org/show_bug.cgi?id=153526
772 broke more than it fixed (Requested by thorton on #webkit).
776 "REGRESSION (r194557): Keyboard shortcuts stop working after
777 the WKWebView is unparented and reparented"
778 https://bugs.webkit.org/show_bug.cgi?id=153492
779 http://trac.webkit.org/changeset/195602
781 2016-01-26 Anders Carlsson <andersca@apple.com>
783 WebKitAdditions should be able to modify derived source rules
784 https://bugs.webkit.org/show_bug.cgi?id=153514
786 Reviewed by Tim Horton.
788 * Configurations/BaseTarget.xcconfig:
789 * Configurations/WebKit.xcconfig:
790 Set WEBKITADDITIONS_HEADER_SEARCH_PATHS.
792 * DerivedSources.make:
793 Move the path computation earlier and include WebKitDerivedSourcesAdditions.make.
795 * WebKit2.xcodeproj/project.pbxproj:
796 Pass our WebKitAdditions paths as include paths to make.
798 2016-01-26 Anders Carlsson <andersca@apple.com>
800 Add a private WKUIDelegate method for getting a presenting view controller for a WKWebView on iOS
801 https://bugs.webkit.org/show_bug.cgi?id=153510
803 Reviewed by Dan Bernstein.
805 * UIProcess/API/APIUIClient.h:
806 (API::UIClient::presentingViewController):
807 * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
808 * UIProcess/Cocoa/UIDelegate.h:
809 * UIProcess/Cocoa/UIDelegate.mm:
810 (WebKit::UIDelegate::setDelegate):
811 (WebKit::UIDelegate::UIClient::presentingViewController):
813 2016-01-26 Dean Jackson <dino@apple.com>
815 [iOS] Documents without an explicit width should not get fast tapping
816 https://bugs.webkit.org/show_bug.cgi?id=153465
817 <rdar://problem/23962529>
819 Reviewed by Simon Fraser (and Wenson Hseih).
821 As the title says, documents that do not set a viewport should
822 not get the fast click behaviour. There were complaints that we broke
823 double-tap to scroll in ImageDocuments where the image was narrow and long.
825 The fix is to just keep a flag that tells the UI process if the
826 width was explicit. However, it turns out that those ImageDocuments
827 are given an explicit device-width, which is fine for scaling but
828 really should behave as auto for fast tapping. So we also need
829 to tell the UIProcess if the viewport arguments came from an
832 * Shared/mac/RemoteLayerTreeTransaction.h: Add two new flags into
834 (WebKit::RemoteLayerTreeTransaction::viewportMetaTagWidthWasExplicit):
835 (WebKit::RemoteLayerTreeTransaction::setViewportMetaTagWidthWasExplicit):
836 (WebKit::RemoteLayerTreeTransaction::viewportMetaTagCameFromImageDocument):
837 (WebKit::RemoteLayerTreeTransaction::setViewportMetaTagCameFromImageDocument):
838 * Shared/mac/RemoteLayerTreeTransaction.mm:
839 (WebKit::RemoteLayerTreeTransaction::encode):
840 (WebKit::RemoteLayerTreeTransaction::decode):
841 (WebKit::RemoteLayerTreeTransaction::description):
843 * UIProcess/API/Cocoa/WKWebView.mm:
844 (-[WKWebView _didCommitLayerTree:]): Notice whether or not the viewport
846 (-[WKWebView _allowsDoubleTapGestures]): Return yes if the width
847 was not explicit, or if the viewport came from an ImageDocument.
848 * WebProcess/WebPage/WebPage.cpp:
849 (WebKit::WebPage::willCommitLayerTree):
851 2016-01-26 Tim Horton <timothy_horton@apple.com>
853 REGRESSION (r194557): Keyboard shortcuts stop working after the WKWebView is unparented and reparented
854 https://bugs.webkit.org/show_bug.cgi?id=153492
855 <rdar://problem/24138989>
857 Reviewed by Dan Bernstein.
859 * UIProcess/ios/WKContentViewInteraction.h:
860 * UIProcess/ios/WKContentViewInteraction.mm:
861 (-[WKContentView canBecomeFirstResponder]):
862 (-[WKContentView becomeFirstResponder]):
863 (-[WKContentView resignFirstResponder]):
864 When WKWebView is unparented, WKContentView will attempt to resignFirstResponder upwards,
865 first asking WKWebView. After r194557, WKWebView will accept first responder and forward
866 it on to the WKContentView, which will happily accept it again, despite being the view
867 that's trying to resign. This will cause us to completely lose first responder,
868 where it was actually supposed to propagate up above WKWebView to the client.
870 Keep track of when WKContentView is resigning first responder, and don't
871 let it become first responder while it is doing so, breaking the cycle.
873 2016-01-25 Ada Chan <adachan@apple.com>
875 Move WebVideoFullscreenManager and related classes from iOS specific folders to cocoa folders
876 https://bugs.webkit.org/show_bug.cgi?id=153473
878 Reviewed by Eric Carlson.
880 * DerivedSources.make:
882 * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.h: Renamed from Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.h.
883 * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.messages.in: Renamed from Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in.
884 * UIProcess/Cocoa/WebVideoFullscreenManagerProxy.mm: Renamed from Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm.
885 (WebKit::WebVideoFullscreenManagerProxy::setSeekableRangesVector):
886 Fix a style error by moving the opening curly brace to the same line as the for statement.
887 * WebKit2.xcodeproj/project.pbxproj:
888 Update due to changes to the file locations.
889 * WebProcess/cocoa/WebVideoFullscreenManager.h: Renamed from Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.h.
890 * WebProcess/cocoa/WebVideoFullscreenManager.messages.in: Renamed from Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.messages.in.
891 * WebProcess/cocoa/WebVideoFullscreenManager.mm: Renamed from Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.mm.
892 (WebKit::WebVideoFullscreenInterfaceContext::setSeekableRanges):
893 Fix a style error by adding a missing space after a comma.
895 2016-01-26 Daniel Bates <dabates@apple.com>
897 WebKitTestRunner: Credential cache is not cleared between tests
898 https://bugs.webkit.org/show_bug.cgi?id=153407
899 <rdar://problem/24280834>
901 Reviewed by Alexey Proskuryakov.
903 Expose SPI to call CredentialStorage::clearCredentials() on the default network storage
904 session to clear cached credentials.
906 * NetworkProcess/NetworkProcess.cpp:
907 (WebKit::NetworkProcess::clearCachedCredentials): Added.
908 * NetworkProcess/NetworkProcess.h:
909 * NetworkProcess/NetworkProcess.messages.in: Added message ClearCachedCredentials().
910 * UIProcess/API/C/WKContext.cpp:
911 (WKContextClearCachedCredentials): Added.
912 * UIProcess/API/C/WKContextPrivate.h:
913 * UIProcess/WebProcessPool.cpp:
914 (WebKit::WebProcessPool::clearCachedCredentials): Notify all web processes and the
915 network process to clear cached credentials.
916 * UIProcess/WebProcessPool.h:
917 * WebProcess/WebProcess.cpp:
918 (WebKit::WebProcess::clearCachedCredentials): Clear cached credentials in the default
919 network storage session.
920 * WebProcess/WebProcess.h:
921 * WebProcess/WebProcess.messages.in: Added message ClearCachedCredentials().
923 2016-01-26 Mario Sanchez Prada <mario@endlessm.com>
925 [GTK] WebProcess crashes when quickly attempting many DnD operations
926 https://bugs.webkit.org/show_bug.cgi?id=138468
928 Reviewed by Michael Catanzaro.
930 Do not allow different DnD operations over the same element at the
931 same time, so that any new attempt to DnD an element happening before
932 a previous attempt has ended will take precedence, cancelling the older
933 operation before going ahead with the new one.
935 This is consistent with how WebCore::EventHandler handles DnD operations,
936 preventing the web process from crashing in scenarios where the user might
937 try to perform many DnD operations over the same element very quickly.
939 * UIProcess/gtk/DragAndDropHandler.cpp:
940 (WebKit::DragAndDropHandler::DragAndDropHandler): Initialized new member.
941 (WebKit::DragAndDropHandler::startDrag): Ensure a previous DnD operation
942 is cancelled before handling the new one that has just started.
943 (WebKit::DragAndDropHandler::fillDragData): Protect against calling this
944 function from webkitWebViewBaseDragDataGet for already cancelled operations.
945 (WebKit::DragAndDropHandler::finishDrag): Protect against calling this
946 function from webkitWebViewBaseDragEnd for already cancelled operations.
947 * UIProcess/gtk/DragAndDropHandler.h:
949 2016-01-25 Enrica Casucci <enrica@apple.com>
951 Add support for DataDetectors in WK (iOS).
952 https://bugs.webkit.org/show_bug.cgi?id=152989
953 rdar://problem/22855960
955 Reviewed by Tim Horton.
957 Moving InteractionInformationAtPosition files to platform folder,
958 since this is only used on iOS and changing from .cpp to .mm.
959 The structure is extended to include data detection specific fields
960 and the relevant encode/decode functions have been updated to
961 handle the new fields.
962 The patch also adds a new WKUIDelegatePrivate method to allow
963 the client to provide additional context for data detection actions.
965 * Platform/spi/ios/UIKitSPI.h:
966 * Shared/InteractionInformationAtPosition.cpp: Removed.
967 * Shared/InteractionInformationAtPosition.h: Removed.
968 * Shared/ios/InteractionInformationAtPosition.h: Copied from Shared/InteractionInformationAtPosition.h.
969 * Shared/ios/InteractionInformationAtPosition.mm: Copied from Shared/InteractionInformationAtPosition.cpp.
970 (WebKit::InteractionInformationAtPosition::encode):
971 (WebKit::InteractionInformationAtPosition::decode):
972 * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
973 * UIProcess/WebPageProxy.h:
974 * UIProcess/ios/WKActionSheetAssistant.h:
975 * UIProcess/ios/WKActionSheetAssistant.mm:
976 (-[WKActionSheetAssistant showDataDetectorsSheet]):
977 * UIProcess/ios/WKContentViewInteraction.mm:
978 (-[WKContentView actionSheetAssistantDidStopInteraction:]):
979 (-[WKContentView dataDetectionContextForActionSheetAssistant:]):
980 (-[WKContentView selectedTextForActionSheetAssistant:]):
981 (-[WKContentView _dataForPreviewItemController:atPosition:type:]):
982 * UIProcess/ios/WebPageProxyIOS.mm:
983 * WebKit2.xcodeproj/project.pbxproj:
984 * WebProcess/WebPage/ios/WebPageIOS.mm:
985 (WebKit::WebPage::getPositionInformation):
987 2016-01-25 Commit Queue <commit-queue@webkit.org>
989 Unreviewed, rolling out r195543.
990 https://bugs.webkit.org/show_bug.cgi?id=153451
992 regressed performance of test bots by ~6% (Requested by dydz
997 "WebKitTestRunner: Credential cache is not cleared between
999 https://bugs.webkit.org/show_bug.cgi?id=153407
1000 http://trac.webkit.org/changeset/195543
1002 2016-01-25 Chris Dumez <cdumez@apple.com>
1004 [WK2][NetworkCache] Enable speculative revalidation
1005 https://bugs.webkit.org/show_bug.cgi?id=153443
1006 <rdar://problem/23092196>
1008 Reviewed by Antti Koivisto.
1010 Enable speculative revalidation to better evaluate performance and
1013 * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
1014 (WebKit::registerUserDefaultsIfNeeded):
1016 2016-01-25 Beth Dakin <bdakin@apple.com>
1018 Handle soft spaces after accepted candidates
1019 https://bugs.webkit.org/show_bug.cgi?id=153331
1021 rdar://problem/23958418
1023 Reviewed by Darin Adler.
1025 New member variable m_softSpaceRange keeps track to the NSRange of a soft
1026 space if the last text that was inserted has a soft space at the end.
1027 * UIProcess/Cocoa/WebViewImpl.h:
1028 * UIProcess/Cocoa/WebViewImpl.mm:
1029 (WebKit::WebViewImpl::WebViewImpl):
1031 The space at the end of candidates is a soft space. If that space exists,
1032 cache the range of the space in m_softSpaceRange.
1033 (WebKit::WebViewImpl::handleAcceptedCandidate):
1035 When new text is inserted, find out if it is being inserted right after a
1036 soft space. If it is, then [NSSpellChecker deletesAutospaceBeforeString] will
1037 tell us if the space needs to be removed. If that is the case, then set the
1038 replacementString to the soft space.
1039 (WebKit::WebViewImpl::insertText):
1041 2016-01-25 Daniel Bates <dabates@apple.com>
1043 WebKitTestRunner: Credential cache is not cleared between tests
1044 https://bugs.webkit.org/show_bug.cgi?id=153407
1045 <rdar://problem/24280834>
1047 Reviewed by Brady Eidson.
1049 Add SPI to call NetworkStorageSession::switchToNewTestingSession() to create a new testing session.
1050 The new testing session will have an empty credential cache.
1052 * NetworkProcess/NetworkProcess.cpp:
1053 (WebKit::NetworkProcess::switchToNewTestingSession): Added.
1054 * NetworkProcess/NetworkProcess.h:
1055 * NetworkProcess/NetworkProcess.messages.in: Added message SwitchToNewTestingSession().
1056 * UIProcess/API/C/WKContext.cpp:
1057 (WKContextResetTestingNetworkSession): Added.
1058 * UIProcess/API/C/WKContextPrivate.h:
1059 * UIProcess/WebProcessPool.cpp:
1060 (WebKit::WebProcessPool::resetTestingNetworkSession): Added.
1061 * UIProcess/WebProcessPool.h:
1062 * WebProcess/WebProcess.cpp:
1063 (WebKit::WebProcess::switchToNewTestingSession): Added.
1064 * WebProcess/WebProcess.h:
1065 * WebProcess/WebProcess.messages.in: Added message SwitchToNewTestingSession().
1067 2016-01-22 Ryosuke Niwa <rniwa@webkit.org>
1069 document.createElement should be able to create a custom element
1070 https://bugs.webkit.org/show_bug.cgi?id=153173
1072 Reviewed by Darin Adler.
1074 Use createElementForBindings here since this is for SPI.
1076 * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
1077 (-[WKDOMDocument createElement:]):
1078 (-[WKDOMDocument createTextNode:]):
1080 2016-01-24 Alex Christensen <achristensen@webkit.org>
1082 Report upload progress to NetworkLoadClient when using NetworkSession
1083 https://bugs.webkit.org/show_bug.cgi?id=153388
1085 Reviewed by Darin Adler.
1087 This fixes http/tests/xmlhttprequest/upload-onload-event.html and a few other tests.
1089 * NetworkProcess/NetworkLoad.cpp:
1090 (WebKit::NetworkLoad::didBecomeDownload):
1091 (WebKit::NetworkLoad::didSendData):
1092 (WebKit::NetworkLoad::didReceiveResponseAsync):
1093 * NetworkProcess/NetworkLoad.h:
1094 * NetworkProcess/NetworkSession.h:
1095 (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
1096 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
1097 (-[WKNetworkSessionDelegate initWithNetworkSession:]):
1098 (-[WKNetworkSessionDelegate URLSession:task:didSendBodyData:totalBytesSent:totalBytesExpectedToSend:]):
1099 (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
1101 2016-01-24 Gyuyoung Kim <gyuyoung.kim@webkit.org>
1103 Reduce PassRefPtr uses in dom - 4
1104 https://bugs.webkit.org/show_bug.cgi?id=153270
1106 Reviewed by Darin Adler.
1108 As a step to remove PassRefPtr uses, this patch reduces the uses in WebCore/dom.
1110 * WebProcess/Plugins/PluginView.cpp:
1111 (WebKit::PluginView::focusPluginElement):
1113 2016-01-23 Alex Christensen <achristensen@webkit.org>
1115 CMake build fix after r195494.
1117 * PlatformMac.cmake:
1118 WebKit2 needs to be able to find DataDetectors.h.
1120 2016-01-23 Alex Christensen <achristensen@webkit.org>
1122 Use credentials from a URL with NetworkSession like we did with ResourceHandle
1123 https://bugs.webkit.org/show_bug.cgi?id=153328
1125 Reviewed by Alexey Proskuryakov.
1127 * NetworkProcess/NetworkLoad.cpp:
1128 (WebKit::NetworkLoad::NetworkLoad):
1129 createDataTaskWithRequest is being removed, so use std::make_unique<NetworkDataTask> directly instead.
1130 Also, create the task even if we are deferring loading. Don't call resume if we are deferring loading.
1131 * NetworkProcess/NetworkSession.h:
1132 Callbacks are not just used in NetworkSessionTaskClient, so declare them outside.
1133 The NetworkDataTask now takes a ResourceRequest so we can strip its credentials.
1134 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
1135 (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
1136 Try credentials stored with the NetworkDataTask before asking the client for credentials.
1137 (WebKit::NetworkSession::~NetworkSession):
1138 (WebKit::NetworkSession::dataTaskForIdentifier):
1139 (WebKit::NetworkSession::takeDownloadID):
1140 (WebKit::NetworkDataTask::NetworkDataTask):
1141 Strip the credentials from the url before creating the task because we do not know the authentication type.
1142 We will use these credentials when a challenge is received.
1143 (WebKit::NetworkDataTask::~NetworkDataTask):
1144 (WebKit::NetworkDataTask::tryPasswordBasedAuthentication):
1145 If we have credentials from the initial URL, try using them if it is appropriate.
1146 (WebKit::NetworkDataTask::cancel):
1147 (WebKit::NetworkSession::createDataTaskWithRequest): Deleted.
1148 * Shared/Authentication/AuthenticationManager.h:
1150 2016-01-22 Dan Bernstein <mitz@apple.com>
1152 <rdar://problem/24304228> REGRESSION (r184215): Staged XPC services load non-staged shims
1153 https://bugs.webkit.org/show_bug.cgi?id=153389
1155 Reviewed by Alexey Proskuryakov.
1157 * Configurations/Shim.xcconfig: Don’t override the install name when using a staged install path.
1159 2016-01-22 Enrica Casucci <enrica@apple.com>
1161 Add support for DataDetectors in WK (iOS).
1162 https://bugs.webkit.org/show_bug.cgi?id=152989
1163 rdar://problem/22855960
1165 Reviewed by Tim Horton.
1167 * UIProcess/API/Cocoa/WKWebView.mm:
1168 (fromWKDataDetectorTypes): Changed parameter to uint64_t to
1169 successfully compare against WKDataDetectorTypeAll.
1171 2016-01-17 Ada Chan <adachan@apple.com>
1173 Add a mode parameter to MediaControllerInterface::supportsFullscreen() and ChromeClient::supportsVideoFullscreen().
1174 https://bugs.webkit.org/show_bug.cgi?id=153220
1176 Reviewed by Eric Carlson.
1178 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1179 (WebKit::WebChromeClient::supportsVideoFullscreen):
1180 * WebProcess/WebCoreSupport/WebChromeClient.h:
1182 2016-01-22 Tim Horton <timothy_horton@apple.com>
1184 Reproducible "Unhanded web process message 'WebUserContentController:AddUserScripts'" and friends
1185 https://bugs.webkit.org/show_bug.cgi?id=153193
1186 <rdar://problem/24222034>
1188 Reviewed by Darin Adler.
1190 The WebPageProxy constructor assumes that if its WebProcess is already running,
1191 it can add itself to the existing WebUserContentController(Proxy) and all will be well.
1193 However, if the API client constructs a different WKUserContentController for two views,
1194 and forces them both into the same process, WebPageProxy's constructor sends a message
1195 with a WebUserContentController ID that doesn't exist yet on the WebProcess side
1196 (because createWebPage, which usually brings it up, hasn't happened yet), and we
1197 drop the message on the floor (and get the aforementioned logging).
1199 * UIProcess/WebPageProxy.cpp:
1200 (WebKit::WebPageProxy::WebPageProxy):
1201 (WebKit::WebPageProxy::initializeWebPageAfterProcessLaunch):
1202 Instead of connecting our WebUserContentControllerProxy and WebVisitedLinkStoreProxy
1203 to our WebProcessProxy in the constructor, when doing so might send messages
1204 to the WebProcess that arrive before their corresponding WebProcess objects have
1205 been created, do this in initializeWebPageAfterProcessLaunch, which always runs
1206 during-or-after inititalizeWebPage (and always after the CreateWebPage message goes out).
1208 (WebKit::WebPageProxy::initializeWebPage):
1209 Mark us as needing initializeWebPageAfterProcessLaunch run, and run it right now
1210 if the WebProcess is already up.
1211 (WebKit::WebPageProxy::processDidFinishLaunching):
1212 If the WebProcess wasn't up at the end of initializeWebPage, we'll eventually end up here
1213 after it is launched, and will initializeWebPageAfterProcessLaunch.
1215 (WebKit::WebPageProxy::resetStateAfterProcessExited):
1216 If the WebProcess dies, we don't want to initializeWebPageAfterProcessLaunch
1217 until after initializeWebPage runs again, so make sure the flag isn't set.
1219 * UIProcess/WebPageProxy.h:
1221 2016-01-22 Darin Adler <darin@apple.com>
1223 Reduce use of equalIgnoringCase to just ignore ASCII case
1224 https://bugs.webkit.org/show_bug.cgi?id=153266
1226 Reviewed by Ryosuke Niwa.
1228 * UIProcess/PageLoadState.cpp:
1229 (WebKit::PageLoadState::hasOnlySecureContent): Use the protocolIs
1230 function from WebCore instead of calling startsWith.
1231 * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1232 (WebKit::NetscapePlugin::initialize): Use equalLettersIgnoringASCIICase.
1234 2016-01-21 Brent Fulgham <bfulgham@apple.com>
1236 [Mac] Tooltips do not honor some types of obscuring windows
1237 https://bugs.webkit.org/show_bug.cgi?id=153263
1238 <rdar://problem/21423972>
1240 Reviewed by Simon Fraser.
1242 Recognize that the current WebView is obscured by comparing the current event's Window Number against
1243 the Window Number of the current WebView. If they don't match, something is in the way.
1245 * UIProcess/Cocoa/WebViewImpl.h:
1246 * UIProcess/Cocoa/WebViewImpl.mm:
1247 (WebKit::WebViewImpl::windowIsFrontWindowUnderMouse): Added.
1248 * UIProcess/PageClient.h:
1249 (WebKit::PageClient::windowIsFrontWindowUnderMouse):
1250 * UIProcess/WebPageProxy.cpp:
1251 (WebKit::WebPageProxy::handleMouseEvent): Check if the current WebView is obscured. If it
1252 is, clear the tooltip and return.
1253 * UIProcess/mac/PageClientImpl.h:
1254 * UIProcess/mac/PageClientImpl.mm:
1255 (WebKit::PageClientImpl::windowIsFrontWindowUnderMouse): Added.
1257 2016-01-22 Youenn Fablet <youenn.fablet@crf.canon.fr>
1259 Remove PassRefPtr from ResourceRequest and FormData
1260 https://bugs.webkit.org/show_bug.cgi?id=153229
1262 Reviewed by Chris Dumez.
1264 * NetworkProcess/NetworkResourceLoadParameters.cpp:
1265 (WebKit::NetworkResourceLoadParameters::decode):
1266 * NetworkProcess/cache/NetworkCacheEntry.cpp:
1267 (WebKit::NetworkCache::Entry::Entry):
1269 2016-01-21 Simon Fraser <simon.fraser@apple.com>
1271 REGRESSION (r168244): Content in horizontal-bt page is offset such that only the end is viewable and there is a white gap at the top
1272 https://bugs.webkit.org/show_bug.cgi?id=136019
1274 Reviewed by Dan Bernstein.
1276 Now call frameView.positionForRootContentLayer(), and add a FIXME questioning the
1277 behavior in horizontal b-t documents. However, this code isn't hit now that we always
1278 do extended backgrounds, so never have shadow layers.
1280 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1281 (WebKit::shadowLayerPositionForFrame):
1283 2016-01-21 Dean Jackson <dino@apple.com>
1285 Move _allowsDoubleTapGestures implementation out of category
1286 https://bugs.webkit.org/show_bug.cgi?id=153329
1287 <rdar://problem/24289768>
1289 Reviewed by Simon Fraser.
1291 We were generating a linker warning because the implementation
1292 was located inside the WKPrivate category.
1294 * UIProcess/API/Cocoa/WKWebView.mm:
1295 (-[WKWebView _allowsDoubleTapGestures]): Move this out of
1298 2016-01-21 Dean Jackson <dino@apple.com>
1300 [iOS] Crash in _endPotentialTapAndEnableDoubleTapGesturesIfNecessary
1301 https://bugs.webkit.org/show_bug.cgi?id=153326
1302 <rdar://problem/24264339>
1304 Reviewed by Anders Carlsson.
1306 UIKit's UIGestureRecognizer could call back into the WKContentView
1307 after the associated WKWebView has disappeared. The fix is to
1308 explicitly null the WKWebView reference as we deallocate.
1310 * UIProcess/API/Cocoa/WKWebView.mm:
1311 (-[WKWebView dealloc]): Tell the WKContentView we are going away.
1312 * UIProcess/ios/WKContentView.h:
1313 * UIProcess/ios/WKContentView.mm:
1314 (-[WKContentView _webViewDestroyed]):
1315 * UIProcess/ios/WKContentViewInteraction.mm:
1316 (-[WKContentView _endPotentialTapAndEnableDoubleTapGesturesIfNecessary]):
1317 Only do something if the WKWebView is still around.
1319 2016-01-21 Beth Dakin <bdakin@apple.com>
1321 Add the ability to update WebKitAdditions to WK2
1322 https://bugs.webkit.org/show_bug.cgi?id=153320
1324 rdar://problem/23639629
1326 Reviewed by Anders Carlsson.
1328 * UIProcess/API/Cocoa/WKWebView.mm:
1329 * UIProcess/API/mac/WKView.mm:
1330 * UIProcess/Cocoa/WebViewImpl.h:
1331 (WebKit::WebViewImpl::createWeakPtr):
1332 * UIProcess/Cocoa/WebViewImpl.mm:
1333 (WebKit::WebViewImpl::updateWebViewImplAdditions):
1334 (WebKit::WebViewImpl::showCandidates):
1335 (WebKit::WebViewImpl::webViewImplAdditionsWillDestroyView):
1336 (WebKit::trackingAreaOptions):
1337 (WebKit::WebViewImpl::~WebViewImpl):
1338 (WebKit::WebViewImpl::becomeFirstResponder):
1339 (WebKit::WebViewImpl::selectionDidChange):
1340 (WebKit::WebViewImpl::handleRequestedCandidates):
1341 (WebKit::textCheckingResultFromNSTextCheckingResult):
1343 2016-01-19 Ada Chan <adachan@apple.com>
1345 Make it possible to enable VIDEO_PRESENTATION_MODE on other Cocoa platforms.
1346 https://bugs.webkit.org/show_bug.cgi?id=153218
1348 Reviewed by Eric Carlson.
1350 * Configurations/FeatureDefines.xcconfig:
1352 2016-01-20 Alex Christensen <achristensen@webkit.org>
1354 Fix CMake build after r195300.
1356 * PlatformMac.cmake:
1357 Include editing/mac to find DataDetection.h.
1359 2016-01-20 Alex Christensen <achristensen@webkit.org>
1361 Ask UI Process before sending redirect requests when downloading
1362 https://bugs.webkit.org/show_bug.cgi?id=153041
1364 Reviewed by Darin Adler.
1366 * NetworkProcess/Downloads/DownloadManager.cpp:
1367 (WebKit::DownloadManager::continueCanAuthenticateAgainstProtectionSpace):
1368 (WebKit::DownloadManager::continueWillSendRequest):
1369 (WebKit::DownloadManager::convertHandleToDownload):
1370 * NetworkProcess/Downloads/DownloadManager.h:
1371 * NetworkProcess/Downloads/PendingDownload.cpp:
1372 (WebKit::PendingDownload::willSendRedirectedRequest):
1373 (WebKit::PendingDownload::continueWillSendRequest):
1374 * NetworkProcess/NetworkProcess.cpp:
1375 (WebKit::NetworkProcess::continueCanAuthenticateAgainstProtectionSpace):
1376 (WebKit::NetworkProcess::continueWillSendRequest):
1377 (WebKit::NetworkProcess::setCacheModel):
1378 * NetworkProcess/NetworkProcess.h:
1379 * NetworkProcess/NetworkProcess.messages.in:
1380 * UIProcess/API/APIDownloadClient.h:
1381 (API::DownloadClient::didCancel):
1382 (API::DownloadClient::processDidCrash):
1383 (API::DownloadClient::canAuthenticateAgainstProtectionSpace):
1384 (API::DownloadClient::willSendRequest):
1385 * UIProcess/Downloads/DownloadProxy.cpp:
1386 (WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
1387 (WebKit::DownloadProxy::canAuthenticateAgainstProtectionSpace):
1388 (WebKit::DownloadProxy::willSendRequest):
1389 (WebKit::DownloadProxy::didReceiveResponse):
1390 * UIProcess/Downloads/DownloadProxy.h:
1391 * UIProcess/Downloads/DownloadProxy.messages.in:
1393 2016-01-20 Carlos Garcia Campos <cgarcia@igalia.com>
1395 Unreviewed. Update OptionsGTK.cmake and NEWS for 2.11.4 release.
1397 * gtk/NEWS: Add release notes for 2.11.4.
1399 2016-01-19 Enrica Casucci <enrica@apple.com>
1401 Add support for DataDetectors in WK (iOS).
1402 https://bugs.webkit.org/show_bug.cgi?id=152989
1403 rdar://problem/22855960
1405 Reviewed by Tim Horton.
1407 This is the first step toward implementing Data Detectors support
1408 in WK2. The patch adds a new property to the configuration
1409 object to indicate the type of detection desired and propagates
1412 * Configurations/FeatureDefines.xcconfig:
1413 * Shared/WebPreferencesDefinitions.h:
1414 * UIProcess/API/Cocoa/WKWebView.mm:
1415 (fromWKDataDetectorTypes):
1416 (-[WKWebView initWithFrame:configuration:]):
1417 * UIProcess/API/Cocoa/WKWebViewConfiguration.h:
1418 * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
1419 (-[WKWebViewConfiguration copyWithZone:]):
1420 * WebProcess/WebPage/WebPage.cpp:
1421 (WebKit::WebPage::updatePreferences):
1423 2016-01-19 Commit Queue <commit-queue@webkit.org>
1425 Unreviewed, rolling out r195300.
1426 https://bugs.webkit.org/show_bug.cgi?id=153244
1428 enrica wants more time to fix Windows (Requested by thorton on
1433 "Add support for DataDetectors in WK (iOS)."
1434 https://bugs.webkit.org/show_bug.cgi?id=152989
1435 http://trac.webkit.org/changeset/195300
1437 2016-01-19 Enrica Casucci <enrica@apple.com>
1439 Add support for DataDetectors in WK (iOS).
1440 https://bugs.webkit.org/show_bug.cgi?id=152989
1441 rdar://problem/22855960
1443 Reviewed by Tim Horton.
1445 This is the first step toward implementing Data Detectors support
1446 in WK2. The patch adds a new property to the configuration
1447 object to indicate the type of detection desired and propagates
1450 * Configurations/FeatureDefines.xcconfig:
1451 * Shared/WebPreferencesDefinitions.h:
1452 * UIProcess/API/Cocoa/WKWebView.mm:
1453 (-[WKWebView initWithFrame:configuration:]):
1454 * UIProcess/API/Cocoa/WKWebViewConfiguration.h:
1455 * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
1456 (-[WKWebViewConfiguration copyWithZone:]):
1457 * WebKit2.xcodeproj/project.pbxproj:
1458 * WebProcess/WebPage/Cocoa/WebPageCocoa.mm: Added.
1459 (WebKit::WebPage::fromWKDataDetectorTypes):
1460 * WebProcess/WebPage/WebPage.cpp:
1461 (WebKit::WebPage::updatePreferences):
1462 * WebProcess/WebPage/WebPage.h:
1464 2016-01-19 Commit Queue <commit-queue@webkit.org>
1466 Unreviewed, rolling out r187471.
1467 https://bugs.webkit.org/show_bug.cgi?id=153236
1469 purportedly caused a significant memory regression and want to
1470 see if that is true (Requested by thorton on #webkit).
1474 "First in-window viewStateChange synchronously blocks despite
1475 not previously being in-window"
1476 https://bugs.webkit.org/show_bug.cgi?id=147344
1477 http://trac.webkit.org/changeset/187471
1479 2016-01-19 Carlos Garcia Campos <cgarcia@igalia.com>
1481 [GTK] Runtime critical warnings when loading a URL after a session restore
1482 https://bugs.webkit.org/show_bug.cgi?id=153233
1484 Reviewed by Michael Catanzaro.
1486 This happens when doing a normal load after restoring the back
1487 forward list from session state and the list contained forward
1488 items. In that case the forward items are removed from the list
1489 and we try to reference a WebBackForwardListItem wrapper that
1490 hasn't been created. We create the wrappers on demand, and when
1491 the back forward list is populated from session state, items are
1492 added to the list without creating their wrappers. That was not
1493 possible before, and that's why we assumed that any item that is
1494 removed from the list should have a wrapper already created.
1496 * UIProcess/API/gtk/WebKitBackForwardList.cpp:
1497 (webkitBackForwardListChanged): If we don't have a wrapper for the
1498 removed item, create a new one to be passed to the signal, but
1499 without adding it to the map.
1501 2016-01-19 Ryosuke Niwa <rniwa@webkit.org>
1503 CharacterData::setData doesn't need ExceptionCode as an out argument
1504 https://bugs.webkit.org/show_bug.cgi?id=153225
1506 Reviewed by Antti Koivisto.
1508 * WebProcess/InjectedBundle/API/mac/WKDOMText.mm:
1509 (-[WKDOMText setData:]):
1511 2016-01-18 Ryuan Choi <ryuan.choi@navercorp.com>
1513 [EFL] Remove wkView() from EwkView
1514 https://bugs.webkit.org/show_bug.cgi?id=152604
1516 Reviewed by Gyuyoung Kim.
1518 * UIProcess/API/efl/EwkView.cpp:
1519 (EwkViewEventHandler<EVAS_CALLBACK_SHOW>::handleEvent):
1520 (EwkViewEventHandler<EVAS_CALLBACK_HIDE>::handleEvent):
1524 (EwkView::isVisible):
1525 (EwkView::setVisible):
1526 (EwkView::setDeviceScaleFactor):
1527 (EwkView::deviceSize):
1528 (EwkView::displayTimerFired):
1529 (EwkView::setViewportPosition):
1530 (EwkView::requestExitFullScreen):
1531 (EwkView::contentsSize):
1532 (EwkView::setThemePath):
1533 (EwkView::feedTouchEvent):
1534 (EwkView::createGLSurface):
1535 (EwkView::showContextMenu):
1536 (EwkView::requestPopupMenu):
1538 (EwkView::handleEvasObjectCalculate):
1539 (EwkView::handleEvasObjectColorSet):
1540 (EwkView::handleEwkViewFocusIn):
1541 (EwkView::handleEwkViewFocusOut):
1542 (EwkView::feedTouchEvents):
1543 (EwkView::takeSnapshot):
1544 (EwkView::scrollBy):
1545 (EwkView::setBackgroundColor):
1546 (EwkView::backgroundColor):
1547 * UIProcess/API/efl/EwkView.h:
1548 (EwkView::wkView): Deleted.
1549 * UIProcess/API/efl/GestureRecognizer.cpp:
1550 (WebKit::GestureHandler::handleSingleTap):
1551 * UIProcess/API/efl/ewk_view.cpp:
1554 (ewk_view_fullscreen_exit):
1555 (ewk_view_layout_fixed_set):
1556 (ewk_view_layout_fixed_get):
1557 (ewk_view_layout_fixed_size_set):
1558 (ewk_view_layout_fixed_size_get):
1559 (ewk_view_bg_color_get):
1560 (ewk_view_contents_size_get):
1561 * UIProcess/efl/PageViewportControllerClientEfl.cpp:
1562 (WebKit::PageViewportControllerClientEfl::setPageScaleFactor):
1563 * UIProcess/efl/ViewClientEfl.cpp:
1564 (WebKit::ViewClientEfl::webProcessDidRelaunch):
1565 (WebKit::ViewClientEfl::ViewClientEfl):
1566 (WebKit::ViewClientEfl::~ViewClientEfl):
1568 2016-01-18 Zan Dobersek <zdobersek@igalia.com>
1570 Sink the Vector<uint8_t> buffer into the SerializedScriptValue constructor
1571 https://bugs.webkit.org/show_bug.cgi?id=142634
1573 Reviewed by Darin Adler.
1575 Update API::SerializedScriptValue::adopt() to take in a Vector<uint8_t>
1576 rvalue, moving it into the WebCore::SerializedScriptValue::adopt() call.
1578 Update other places that are affected by the SerializedScriptValue changes.
1580 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
1581 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createIndex):
1582 * Shared/API/APISerializedScriptValue.h:
1583 (API::SerializedScriptValue::adopt):
1584 * Shared/UserData.cpp:
1585 (WebKit::UserData::decode):
1586 * UIProcess/UserContent/WebUserContentControllerProxy.cpp:
1587 (WebKit::WebUserContentControllerProxy::didPostMessage):
1588 * UIProcess/WebPageProxy.cpp:
1589 (WebKit::WebPageProxy::scriptValueCallback):
1590 * WebProcess/WebCoreSupport/SessionStateConversion.cpp:
1591 (WebKit::applyFrameState):
1593 2016-01-18 Olivier Blin <olivier.blin@softathome.com>
1595 [EFL][GTK][WK2] Fix UIProcess build with GStreamer and without VIDEO
1596 https://bugs.webkit.org/show_bug.cgi?id=153135
1598 Reviewed by Michael Catanzaro.
1600 GStreamer builds fail when WebAudio is enabled but VIDEO disabled.
1602 This change makes the flag more consistent around the
1603 decicePolicyForInstallMissingMediaPluginsPermissionRequest() method:
1604 ENABLE(VIDEO) && USE(GSTREAMER) everywhere, while the code used to
1605 test either one or the other.
1607 This does not enable InstallMissingMediaPlugins for WebAudio, since no
1608 code makes use of this in WebKitWebAudioSourceGStreamer.
1610 It also fixes a naming typo for the following method:
1611 decidePolicyForInstallMissingMediaPluginsPermissionRequest()
1613 * UIProcess/API/gtk/PageClientImpl.cpp:
1614 (WebKit::PageClientImpl::decidePolicyForInstallMissingMediaPluginsPermissionRequest):
1615 * UIProcess/API/gtk/PageClientImpl.h:
1616 * UIProcess/PageClient.h:
1617 * UIProcess/efl/WebViewEfl.h:
1618 * UIProcess/gstreamer/WebPageProxyGStreamer.cpp:
1619 (WebKit::WebPageProxy::requestInstallMissingMediaPlugins):
1621 2016-01-17 Jeremy Huddleston Sequoia <jeremyhu@apple.com>
1623 Add quotes around ${CMAKE_SHARED_LINKER_FLAGS} in case it is unset
1624 https://bugs.webkit.org/show_bug.cgi?id=153175
1626 Reviewed by Michael Catanzaro.
1628 * PlatformGTK.cmake:
1630 2016-01-16 Jeremy Huddleston Sequoia <jeremyhu@apple.com>
1632 Remove a now-irrelevant darwin build hack
1633 https://bugs.webkit.org/show_bug.cgi?id=153117
1635 Reviewed by Michael Catanzaro.
1637 * PlatformGTK.cmake:
1639 2016-01-16 Jon Honeycutt <jhoneycutt@apple.com>
1641 [iOS] Replace deprecated -[UIDocumentMenuViewController
1642 _setIgnoreApplicationEntitlementForImport:]
1644 <https://bugs.webkit.org/show_bug.cgi?id=145690>
1645 <rdar://problem/20636577>
1647 Reviewed by Brent Fulgham.
1649 * Platform/spi/ios/UIKitSPI.h:
1650 Replace deprecated SPI with newer SPI.
1652 * UIProcess/ios/forms/WKFileUploadPanel.mm:
1653 (-[WKFileUploadPanel presentWithParameters:resultListener:]):
1654 (-[WKFileUploadPanel _showDocumentPickerMenu]):
1657 2016-01-16 Michael Catanzaro <mcatanzaro@igalia.com>
1659 [GTK] Unreviewed. Fix a typo in an API comment.
1661 * UIProcess/API/gtk/WebKitWebViewSessionState.cpp:
1663 2016-01-16 Carlos Garcia Campos <cgarcia@igalia.com>
1665 [GTK] GVariant runtime critical errors when encoding session data
1666 https://bugs.webkit.org/show_bug.cgi?id=153130
1668 Reviewed by Michael Catanzaro.
1670 It happens when the FrameState has children, because the recursive
1671 serialization is wrong. Also fix serialization of
1672 documentSequenceNumber and itemSequenceNumber that are gint64, not
1675 * UIProcess/API/gtk/WebKitWebViewSessionState.cpp:
1676 (encodeFrameState): Let the caller open/init the given
1677 builder. Use a new builder to encode child states recursively.
1678 (encodePageState): Do the builder open/close for the FrameState encoding.
1679 (decodeFrameState): Get the variant of every child.
1681 2016-01-15 Michael Catanzaro <mcatanzaro@igalia.com>
1683 Fix internal Windows build
1684 https://bugs.webkit.org/show_bug.cgi?id=153142
1686 Unreviewed addition to Alex's JSC patch, which was reviewed by Brent Fulgham. Pass
1687 -I${JAVASCRIPTCORE_DIR} to g-ir-scanner.
1689 * PlatformGTK.cmake:
1691 2016-01-14 Simon Fraser <simon.fraser@apple.com>
1693 Remove workaround for rdar://problem/23623670
1694 https://bugs.webkit.org/show_bug.cgi?id=153107
1695 rdar://problem/23633319
1697 Reviewed by Tim Horton.
1699 Remove the code that uses IOSurfaceAcceleratorTransformSurface() when copying from
1700 back-to-front buffer, now that CGIOSurfaceContextCreate()-code path works correctly.
1702 * Shared/mac/RemoteLayerBackingStore.mm:
1703 (WebKit::RemoteLayerBackingStore::display):
1705 2016-01-14 Beth Dakin <bdakin@apple.com>
1707 WK1 and WK2 should share more candidate request code
1708 https://bugs.webkit.org/show_bug.cgi?id=153108
1710 Reviewed by Simon Fraser.
1712 requestCandidatesForSelection() does not need to be exposed as an
1713 EditorClient function. WK1 can just call invoke this code from the existing
1714 respondToChangedSelection EditorClient function, which is what WK2 does.
1715 * WebProcess/WebCoreSupport/WebEditorClient.h:
1717 2016-01-14 Beth Dakin <bdakin@apple.com>
1719 WK2: Request completion candidates when needed
1720 https://bugs.webkit.org/show_bug.cgi?id=153040
1722 rdar://problem/24155631
1724 Reviewed by Enrica Casucci and Tim Horton.
1726 Mac needs to support postLayoutData in order to have some layout-related
1727 editing information to request candidates. This patch re-shuffles some items
1728 in the struct so that they can be shared by Mac and iOS, and it adds 3 new
1730 * Shared/EditorState.cpp:
1731 (WebKit::EditorState::encode):
1732 (WebKit::EditorState::decode):
1733 (WebKit::EditorState::PostLayoutData::encode):
1734 (WebKit::EditorState::PostLayoutData::decode):
1735 * Shared/EditorState.h:
1737 Request and handle candidates here in WebViewImpl, and cache the
1738 m_lastStringForCandidateRequest so that we can ensure the results we receive
1739 were received in a timely enough manner that they are still for the same
1741 * UIProcess/Cocoa/WebViewImpl.h:
1742 * UIProcess/Cocoa/WebViewImpl.mm:
1743 (WebKit::WebViewImpl::selectionDidChange):
1745 When selection changes, request new candidates.
1746 (WebKit::WebViewImpl::requestCandidatesForSelectionIfNeeded):
1748 Once candidates have been received, we ask the sharedSpellChecker to show
1750 (WebKit::WebViewImpl::handleRequestedCandidates):
1752 If a candidate is accepted, we ask the WebProcess to accept it, so we start
1753 by converting the NSTextCheckingResult to a WebCore::TextCheckingResult.
1754 (WebKit::textCheckingResultFromNSTextCheckingResult):
1755 (WebKit::WebViewImpl::handleAcceptedCandidate):
1757 Ask the WebProcess to handle accepting the candidate.
1758 * UIProcess/WebPageProxy.cpp:
1759 (WebKit::WebPageProxy::handleAcceptedCandidate):
1760 * UIProcess/WebPageProxy.h:
1761 * WebProcess/WebPage/WebPage.h:
1762 (WebKit::WebPage:: handleAcceptedCandidate):
1763 * WebProcess/WebPage/WebPage.messages.in:
1765 Now that Mac has some postLayoutData in the EditorState, fill that in in
1766 platformEditorState().
1767 * WebProcess/WebPage/mac/WebPageMac.mm:
1768 (WebKit::WebPage::platformEditorState):
1770 Ask WebCore::Editor to handle the accepted candidate.
1771 (WebKit::WebPage::handleAcceptedCandidate):
1773 2016-01-14 Commit Queue <commit-queue@webkit.org>
1775 Unreviewed, rolling out r195002.
1776 https://bugs.webkit.org/show_bug.cgi?id=153098
1778 Crashes many/most editing tests (Requested by ap on #webkit).
1782 "WK2: Request completion candidates when needed"
1783 https://bugs.webkit.org/show_bug.cgi?id=153040
1784 http://trac.webkit.org/changeset/195002
1786 2016-01-14 Gyuyoung Kim <gyuyoung.kim@webkit.org>
1788 [EFL][GTK][SeccompFilter] Fix build break when enabling --seccomp-filters
1789 https://bugs.webkit.org/show_bug.cgi?id=153094
1791 Reviewed by Csaba Osztrogonác.
1793 diskCacheDirectory and cookiePersistentStoragePath were removed by r192796.
1794 But SyscallPolicy::addDefaultWebProcessPolicy has added directory permission
1795 to the removed paths.
1797 It looks two paths needs to be handled by network process.
1799 * Shared/linux/SeccompFilters/SyscallPolicy.cpp:
1800 (WebKit::SyscallPolicy::addDefaultWebProcessPolicy): Deleted.
1802 2016-01-13 Alex Christensen <achristensen@webkit.org>
1804 Implement custom protocols when using NetworkSession
1805 https://bugs.webkit.org/show_bug.cgi?id=153078
1807 Reviewed by Andy Estes.
1809 * NetworkProcess/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm:
1810 (WebKit::generateCustomProtocolID):
1811 (+[WKCustomProtocol canInitWithRequest:]):
1812 (+[WKCustomProtocol canonicalRequestForRequest:]):
1813 (-[WKCustomProtocol initWithRequest:cachedResponse:client:]):
1814 (-[WKCustomProtocol startLoading]):
1815 (-[WKCustomProtocol stopLoading]):
1816 There's no need to have a static pointer when we can use NetworkProcess::singleton to access
1817 the process-global CustomProtocolManager, and add null checks because that's a good thing to do.
1818 (WebKit::CustomProtocolManager::CustomProtocolManager):
1819 Call UTF8Encoding when creating the CustomProtocolManager on the main thread to make sure it exists
1820 for when we decode URLS in ResourceResponses from IPC later, which is done on a different WorkQueue.
1821 (WebKit::CustomProtocolManager::initializeConnection):
1822 (WebKit::CustomProtocolManager::initialize):
1823 (WebKit::CustomProtocolManager::removeCustomProtocol):
1824 (WebKit::CustomProtocolManager::registerProtocolClass):
1825 (WebKit::CustomProtocolManager::registerScheme):
1826 * NetworkProcess/CustomProtocols/CustomProtocolManager.h:
1827 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
1828 (WebKit::NetworkSession::NetworkSession):
1829 Call registerProtocolClass to set configuration.protocolClasses if there is a CustomProtocolManager.
1831 2016-01-13 Beth Dakin <bdakin@apple.com>
1833 WK2: Request completion candidates when needed
1834 https://bugs.webkit.org/show_bug.cgi?id=153040
1836 rdar://problem/24155631
1838 Reviewed by Enrica Casucci.
1840 Mac needs to support postLayoutData in order to have some layout-related
1841 editing information to request candidates. This patch re-shuffles some items
1842 in the struct so that they can be shared by Mac and iOS, and it adds 3 new
1844 * Shared/EditorState.cpp:
1845 (WebKit::EditorState::encode):
1846 (WebKit::EditorState::decode):
1847 (WebKit::EditorState::PostLayoutData::encode):
1848 (WebKit::EditorState::PostLayoutData::decode):
1849 * Shared/EditorState.h:
1851 Request and handle candidates here in WebViewImpl, and cache the
1852 m_lastStringForCandidateRequest so that we can ensure the results we receive
1853 were received in a timely enough manner that they are still for the same
1855 * UIProcess/Cocoa/WebViewImpl.h:
1856 * UIProcess/Cocoa/WebViewImpl.mm:
1857 (WebKit::WebViewImpl::selectionDidChange):
1859 When selection changes, request new candidates.
1860 (WebKit::WebViewImpl::requestCandidatesForSelectionIfNeeded):
1862 Once candidates have been received, we ask the sharedSpellChecker to show
1864 (WebKit::WebViewImpl::handleRequestedCandidates):
1866 If a candidate is accepted, we ask the WebProcess to accept it, so we start
1867 by converting the NSTextCheckingResult to a WebCore::TextCheckingResult.
1868 (WebKit::textCheckingResultFromNSTextCheckingResult):
1869 (WebKit::WebViewImpl::handleAcceptedCandidate):
1871 Ask the WebProcess to handle accepting the candidate.
1872 * UIProcess/WebPageProxy.cpp:
1873 (WebKit::WebPageProxy::handleAcceptedCandidate):
1874 * UIProcess/WebPageProxy.h:
1875 * WebProcess/WebPage/WebPage.h:
1876 (WebKit::WebPage:: handleAcceptedCandidate):
1877 * WebProcess/WebPage/WebPage.messages.in:
1879 Now that Mac has some postLayoutData in the EditorState, fill that in in
1880 platformEditorState().
1881 * WebProcess/WebPage/mac/WebPageMac.mm:
1882 (WebKit::WebPage::platformEditorState):
1884 Ask WebCore::Editor to handle the accepted candidate.
1885 (WebKit::WebPage::handleAcceptedCandidate):
1887 2016-01-12 Geoffrey Garen <ggaren@apple.com>
1889 WebKit2 should have an API for eagerly querying whether the web process is responsive
1890 https://bugs.webkit.org/show_bug.cgi?id=153037
1892 Reviewed by Tim Horton.
1894 WebKit2 provides a delegate notification when the web process doesn't
1895 respond to a message after a while. But there's no way to send a message
1896 eagerly and check for reply.
1898 We want this new mechanism so that navigation can terminate the web
1899 process eagerly if it is hung.
1901 * UIProcess/API/C/WKPage.cpp:
1902 (WKPageGetWebProcessIsResponsive):
1903 * UIProcess/API/C/WKPagePrivate.h: This is the new API.
1905 * UIProcess/WebPageProxy.cpp:
1906 (WebKit::WebPageProxy::sendWheelEvent): Updated for interface change.
1908 (WebKit::WebPageProxy::getWebProcessIsResponsive): Calls through to the
1909 web process proxy. We claim that we are responsive when there is no
1910 web process because we assume that a fresh web process will not hang.
1912 * UIProcess/WebPageProxy.h:
1914 * UIProcess/WebProcessProxy.cpp:
1915 (WebKit::WebProcessProxy::WebProcessProxy):
1916 (WebKit::WebProcessProxy::didBecomeUnresponsive): Keep a flag indicating
1917 whether the process is unresponsive so that we can fire unresponsiveness
1918 callbacks immediately for a hung process instead of waiting another 3s.
1920 (WebKit::WebProcessProxy::didBecomeResponsive): We don't fire responsiveness
1921 callbacks inside didBecomeResponsive because we assume that a responsive
1922 web process will invoke didReceiveMainThreadPing -- and we fire the
1925 (WebKit::WebProcessProxy::getIsResponsive): If the web process is already
1926 known to be unresponsive, fire the callback right away. Otherwise, queue
1927 it up to fire once we have an answer from a main thread ping.
1929 (WebKit::WebProcessProxy::didReceiveMainThreadPing): Fire any pending
1930 callbacks when we learn that the web process is responsive.
1932 * UIProcess/WebProcessProxy.h:
1934 2016-01-12 Carlos Garcia Campos <cgarcia@igalia.com>
1936 Unreviewed. Update OptionsGTK.cmake and NEWS for 2.11.3 release.
1938 * gtk/NEWS: Add release notes for 2.11.3.
1940 2016-01-12 Geoffrey Garen <ggaren@apple.com>
1942 WebPageProxy should reattach to the web process before navigating
1943 https://bugs.webkit.org/show_bug.cgi?id=153026
1945 Reviewed by Anders Carlsson.
1947 This fixes a crash (and lots of other corruption) when force-quitting
1948 the web process during navigation.
1950 Some objects (like ViewGestureController) use one-time initialization
1951 to point to a ChildProcessProxy -- and, by design, we destroy them when
1952 the ChildProcessProxy becomes invalid (i.e., crashes or quits).
1954 If we navigate *before* creating a new, valid ChildProcessProxy, then
1955 we accidentally re-create these objects pointing to the old, invalid
1958 We need to wait until we have a valid ChildProcessProxy before we
1959 initialize these objects.
1961 * UIProcess/WebPageProxy.cpp:
1962 (WebKit::WebPageProxy::reattachToWebProcessWithItem): Navigate after
1963 reattaching to the web process so that lazily allocated helper objects
1964 point to the right ChildProcessProxy.
1966 2016-01-12 Ryosuke Niwa <rniwa@webkit.org>
1968 Add a build flag for custom element
1969 https://bugs.webkit.org/show_bug.cgi?id=153005
1971 Reviewed by Alex Christensen.
1973 * Configurations/FeatureDefines.xcconfig:
1975 2016-01-12 Alex Christensen <achristensen@webkit.org>
1977 Ask for UI Process approval of ProtectionSpace when authenticating downloads with NetworkSession
1978 https://bugs.webkit.org/show_bug.cgi?id=152999
1980 Reviewed by Brady Eidson.
1982 * DerivedSources.make:
1983 I mistakenly added PendingDownload.messages.in in r194810, but this will not be needed because
1984 the PendingDownload is not a MessageReceiver. Rather, the NetworkProcess receives the messages
1985 and forwards their contents to the PendingDownload through its DownloadManager.
1986 * NetworkProcess/Downloads/DownloadManager.cpp:
1987 (WebKit::DownloadManager::dataTaskBecameDownloadTask):
1988 (WebKit::DownloadManager::continueCanAuthenticateAgainstProtectionSpace):
1989 (WebKit::DownloadManager::convertHandleToDownload):
1990 * NetworkProcess/Downloads/DownloadManager.h:
1991 * NetworkProcess/Downloads/PendingDownload.cpp:
1992 (WebKit::PendingDownload::continueWillSendRequest):
1993 (WebKit::PendingDownload::canAuthenticateAgainstProtectionSpaceAsync):
1994 Instead of taking a shortcut I added in r194810, send a message to the UI process and wait for its
1995 asynchronous reply to determine if we can authenticate against this protection space.
1996 (WebKit::PendingDownload::continueCanAuthenticateAgainstProtectionSpace):
1997 (WebKit::PendingDownload::didConvertToDownload):
1998 * NetworkProcess/Downloads/PendingDownload.h:
1999 * NetworkProcess/Downloads/PendingDownload.messages.in: Removed.
2000 * NetworkProcess/NetworkProcess.cpp:
2001 (WebKit::NetworkProcess::cancelDownload):
2002 (WebKit::NetworkProcess::continueCanAuthenticateAgainstProtectionSpace):
2003 (WebKit::NetworkProcess::setCacheModel):
2004 * NetworkProcess/NetworkProcess.h:
2005 * NetworkProcess/NetworkProcess.messages.in:
2006 * Shared/Authentication/AuthenticationManager.h:
2007 * UIProcess/API/APIDownloadClient.h:
2008 (API::DownloadClient::didFail):
2009 (API::DownloadClient::didCancel):
2010 (API::DownloadClient::processDidCrash):
2011 (API::DownloadClient::canAuthenticateAgainstProtectionSpace):
2012 * UIProcess/Downloads/DownloadProxy.cpp:
2013 (WebKit::DownloadProxy::didReceiveAuthenticationChallenge):
2014 (WebKit::DownloadProxy::canAuthenticateAgainstProtectionSpace):
2015 (WebKit::DownloadProxy::didReceiveResponse):
2016 * UIProcess/Downloads/DownloadProxy.h:
2017 * UIProcess/Downloads/DownloadProxy.messages.in:
2018 * WebKit2.xcodeproj/project.pbxproj:
2020 2016-01-12 Carlos Garcia Campos <cgarcia@igalia.com>
2022 Move ChildProcessProxy from Shared to UIProcess
2023 https://bugs.webkit.org/show_bug.cgi?id=125570
2025 Reviewed by Darin Adler.
2027 ChildProcessProxy is only used by the UI process.
2030 * PlatformGTK.cmake:
2031 * UIProcess/ChildProcessProxy.cpp: Renamed from Source/WebKit2/Shared/ChildProcessProxy.cpp.
2032 (WebKit::ChildProcessProxy::ChildProcessProxy):
2033 (WebKit::ChildProcessProxy::~ChildProcessProxy):
2034 (WebKit::ChildProcessProxy::fromConnection):
2035 (WebKit::ChildProcessProxy::getLaunchOptions):
2036 (WebKit::ChildProcessProxy::connect):
2037 (WebKit::ChildProcessProxy::terminate):
2038 (WebKit::ChildProcessProxy::state):
2039 (WebKit::ChildProcessProxy::sendMessage):
2040 (WebKit::ChildProcessProxy::addMessageReceiver):
2041 (WebKit::ChildProcessProxy::removeMessageReceiver):
2042 (WebKit::ChildProcessProxy::dispatchMessage):
2043 (WebKit::ChildProcessProxy::dispatchSyncMessage):
2044 (WebKit::ChildProcessProxy::didFinishLaunching):
2045 (WebKit::ChildProcessProxy::shutDownProcess):
2046 (WebKit::ChildProcessProxy::connectionWillOpen):
2047 * UIProcess/ChildProcessProxy.h: Renamed from Source/WebKit2/Shared/ChildProcessProxy.h.
2048 (WebKit::ChildProcessProxy::connection):
2049 (WebKit::ChildProcessProxy::processIdentifier):
2050 (WebKit::ChildProcessProxy::canSendMessage):
2051 (WebKit::ChildProcessProxy::send):
2052 (WebKit::ChildProcessProxy::sendSync):
2053 * WebKit2.xcodeproj/project.pbxproj:
2055 2016-01-12 Carlos Garcia Campos <cgarcia@igalia.com>
2057 [GTK] UI process crashes if webkit_web_view_get_tls_info is called before internal load-committed event
2058 https://bugs.webkit.org/show_bug.cgi?id=142375
2060 Reviewed by Michael Catanzaro.
2062 Remove all the hacks to emit delayed load events now that the
2063 page cache resource load delegates are consistent with all other
2066 * UIProcess/API/gtk/WebKitWebView.cpp:
2067 (webkitWebViewLoadChanged):
2068 (webkitWebViewResourceLoadStarted):
2069 (webkit_web_view_get_tls_info): Add a g_return_val_if_fail to
2070 prevent this function from being misused.
2071 (webkitWebViewDisconnectMainResourceResponseChangedSignalHandler): Deleted.
2072 (webkitWebViewDispose): Deleted.
2073 (webkitWebViewEmitLoadChanged): Deleted.
2074 (webkitWebViewEmitDelayedLoadEvents): Deleted.
2075 (mainResourceResponseChangedCallback): Deleted.
2076 (waitForMainResourceResponseIfWaitingForResource): Deleted.
2078 2016-01-11 Carlos Garcia Campos <cgarcia@igalia.com>
2080 REGRESSION(r190717): [GTK] Popup menus stop working after being dismissed without selecting an item
2081 https://bugs.webkit.org/show_bug.cgi?id=152977
2083 Reviewed by Michael Catanzaro.
2085 This happens since r190717 when you open a popup menu and without
2086 selecting any option it's dismissed (press ESC or click somewhere
2087 else). This is because I removed the code to track when the menu
2088 is unmapped, thinking that it was no longer necessary. But we need
2089 to send the DidChangeSelectedIndexForActivePopupMenu to the
2090 WebProcess with -1 as index to keep the web process in sync.
2092 * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
2093 (WebKit::WebPopupMenuProxyGtk::WebPopupMenuProxyGtk):
2094 (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
2095 (WebKit::WebPopupMenuProxyGtk::cancelTracking):
2096 (WebKit::WebPopupMenuProxyGtk::menuItemActivated):
2097 (WebKit::WebPopupMenuProxyGtk::dismissMenuTimerFired):
2098 (WebKit::WebPopupMenuProxyGtk::menuUnmappedCallback):
2099 * UIProcess/gtk/WebPopupMenuProxyGtk.h:
2101 2016-01-09 Andy Estes <aestes@apple.com>
2103 [Cocoa] Add SPI to opt out a URL scheme from the memory cache
2104 https://bugs.webkit.org/show_bug.cgi?id=152950
2105 rdar://problem/24066652
2107 Reviewed by Tim Horton.
2109 Added a alwaysRevalidatedURLSchemes property to _WKProcessPoolConfiguration. Taught WebProcess to add these
2110 schemes to SchemeRegistry when initializing a new web process.
2112 * Shared/API/Cocoa/WKFoundation.h: Added a newline to force re-postprocessing.
2113 * Shared/WebProcessCreationParameters.cpp:
2114 (WebKit::WebProcessCreationParameters::encode):
2115 (WebKit::WebProcessCreationParameters::decode):
2116 * Shared/WebProcessCreationParameters.h:
2117 * UIProcess/API/APIProcessPoolConfiguration.cpp:
2118 (API::ProcessPoolConfiguration::copy):
2119 * UIProcess/API/APIProcessPoolConfiguration.h:
2120 * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
2121 * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
2122 (-[_WKProcessPoolConfiguration alwaysRevalidatedURLSchemes]):
2123 (-[_WKProcessPoolConfiguration setAlwaysRevalidatedURLSchemes:]):
2124 * UIProcess/WebProcessPool.cpp:
2125 (WebKit::WebProcessPool::createNewWebProcess):
2126 * UIProcess/WebProcessPool.h:
2127 * WebProcess/WebProcess.cpp:
2128 (WebKit::WebProcess::initializeWebProcess):
2129 (WebKit::WebProcess::registerURLSchemeAsAlwaysRevalidated):
2130 * WebProcess/WebProcess.h:
2132 2016-01-11 Anders Carlsson <andersca@apple.com>
2134 Get rid of CFMakeCollectable, it is a no-op
2135 https://bugs.webkit.org/show_bug.cgi?id=152988
2137 Reviewed by Sam Weinig.
2139 * Shared/Cocoa/WKNSString.mm:
2140 * Shared/Cocoa/WKNSURL.mm:
2141 (-[WKNSURL _web_createTarget]):
2143 2016-01-11 Commit Queue <commit-queue@webkit.org>
2145 Unreviewed, rolling out r194866.
2146 https://bugs.webkit.org/show_bug.cgi?id=152986
2148 This change broke the mac build (Requested by ryanhaddad on
2153 "[Cocoa] Add SPI to opt out a URL scheme from the memory
2155 https://bugs.webkit.org/show_bug.cgi?id=152950
2156 http://trac.webkit.org/changeset/194866
2158 2016-01-11 Andy Estes <aestes@apple.com>
2160 [Cocoa] Add SPI to opt out a URL scheme from the memory cache
2161 https://bugs.webkit.org/show_bug.cgi?id=152950
2162 rdar://problem/24066652
2164 Reviewed by Tim Horton.
2166 Added a alwaysRevalidatedURLSchemes property to _WKProcessPoolConfiguration. Taught WebProcess to add these
2167 schemes to SchemeRegistry when initializing a new web process.
2169 * Shared/WebProcessCreationParameters.cpp:
2170 (WebKit::WebProcessCreationParameters::encode):
2171 (WebKit::WebProcessCreationParameters::decode):
2172 * Shared/WebProcessCreationParameters.h:
2173 * UIProcess/API/APIProcessPoolConfiguration.cpp:
2174 (API::ProcessPoolConfiguration::copy):
2175 * UIProcess/API/APIProcessPoolConfiguration.h:
2176 * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
2177 * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
2178 (-[_WKProcessPoolConfiguration alwaysRevalidatedURLSchemes]):
2179 (-[_WKProcessPoolConfiguration setAlwaysRevalidatedURLSchemes:]):
2180 * UIProcess/WebProcessPool.cpp:
2181 (WebKit::WebProcessPool::createNewWebProcess):
2182 * UIProcess/WebProcessPool.h:
2183 * WebProcess/WebProcess.cpp:
2184 (WebKit::WebProcess::initializeWebProcess):
2185 (WebKit::WebProcess::registerURLSchemeAsAlwaysRevalidated):
2186 * WebProcess/WebProcess.h:
2188 2016-01-11 Alex Christensen <achristensen@webkit.org>
2190 Fix Mac CMake build after r194810.
2192 * PlatformMac.cmake:
2193 PendingDownload isn't needed until NETWORK_SESSION is used by default.
2194 I'll figure this out when I make the switch.
2196 2016-01-11 Mario Sanchez Prada <mario@endlessm.com>
2198 [WK2][GTK] Propagate motion-notify-event signals from the WebView
2199 https://bugs.webkit.org/show_bug.cgi?id=152974
2201 Reviewed by Carlos Garcia Campos.
2203 Always propagate motion-notify-event signals, regardless of what the
2204 web process does, so that we can listen for those events (which does
2205 not act on specific targets inside the webview) from the container
2206 widget too, and not just from the WebView itself.
2208 * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2209 (webkitWebViewBaseMotionNotifyEvent): Ensure the signal gets propagated.
2211 2016-01-10 Dan Bernstein <mitz@apple.com>
2213 [Cocoa] Disable header postprocessing when building for El Capitan
2214 https://bugs.webkit.org/show_bug.cgi?id=152962
2216 Reviewed by Anders Carlsson.
2218 * Configurations/WebKit.xcconfig:
2220 2016-01-09 Dan Bernstein <mitz@apple.com>
2222 [Cocoa] Allow overriding the frameworks directory independently of using a staging install path
2223 https://bugs.webkit.org/show_bug.cgi?id=152926
2225 Reviewed by Tim Horton.
2227 Introduce a new build setting, WK_OVERRIDE_FRAMEWORKS_DIR. When not empty, it determines
2228 where the frameworks are installed. Setting USE_STAGING_INSTALL_PATH to YES sets
2229 WK_OVERRIDE_FRAMEWORKS_DIR to $(SYSTEM_LIBRARY_DIR)/StagedFrameworks/Safari.
2231 Account for the possibility of WK_OVERRIDE_FRAMEWORKS_DIR containing spaces.
2233 * Configurations/BaseTarget.xcconfig:
2234 - Add quotes to account for spaces.
2235 - Define WEBKIT_FRAMEWORKS_DIR and UMBRELLA_FRAMEWORKS_DIR based on
2236 WK_OVERRIDE_FRAMEWORKS_DIR.
2238 * WebKit2.xcodeproj/project.pbxproj:
2239 - In the Migrate WebKitLegacy Headers build phase, work around make’s inability to handle
2240 spaces in paths by creating a symlink to WEBKIT_LEGACY_PRIVATE_HEADERS_DIR under
2241 BUILT_PRODUCTS_DIR and using the symlink as the value of
2242 WEBKIT_LEGACY_PRIVATE_HEADERS_DIR.
2243 - In the Postprocess WKBase.h and Postprocess WKFoundation.h build phases, add quotes to
2246 * mac/MigrateHeadersFromWebKitLegacy.make:
2247 Use a BUILT_PRODUCTS_DIR-based path to the framework instead of a TARGET_BUILD_DIR-based
2248 one in order to avoid spaces.
2250 * mac/postprocess-framework-headers.sh:
2251 Add quotes to account for spaces.
2253 2016-01-08 Alex Christensen <achristensen@webkit.org>
2255 Implement download authentication with NetworkSession
2256 https://bugs.webkit.org/show_bug.cgi?id=152878
2258 Reviewed by Brady Eidson.
2260 * DerivedSources.make:
2261 * NetworkProcess/Downloads/Download.h:
2262 * NetworkProcess/Downloads/DownloadManager.cpp:
2263 (WebKit::DownloadManager::startDownload):
2264 * NetworkProcess/Downloads/PendingDownload.cpp: Added.
2265 (WebKit::PendingDownload::PendingDownload):
2266 (WebKit::PendingDownload::willSendRedirectedRequest):
2267 (WebKit::PendingDownload::continueWillSendRequest):
2268 (WebKit::PendingDownload::canAuthenticateAgainstProtectionSpaceAsync):
2269 (WebKit::PendingDownload::continueCanAuthenticateAgainstProtectionSpace):
2270 (WebKit::PendingDownload::didConvertToDownload):
2271 (WebKit::PendingDownload::messageSenderConnection):
2272 (WebKit::PendingDownload::messageSenderDestinationID):
2273 * NetworkProcess/Downloads/PendingDownload.h:
2274 (WebKit::PendingDownload::PendingDownload): Deleted.
2275 * NetworkProcess/Downloads/PendingDownload.messages.in: Added.
2276 * NetworkProcess/NetworkLoad.cpp:
2277 (WebKit::NetworkLoad::continueWillSendRequest):
2278 The completion handler should always be called. If m_currentRequest is null, then the request will not proceed, which is the same as canceling it.
2279 (WebKit::NetworkLoad::setPendingDownloadID):
2280 (WebKit::NetworkLoad::setPendingDownload):
2281 (WebKit::NetworkLoad::willPerformHTTPRedirection):
2282 (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace):
2283 If this load is going to become a download, then call the PendingDownload version of didReceiveAuthenticationChallenge to communicate with the
2284 UI process directly because there wasn't necessarily a web process associated with this request that will become a download.
2285 * NetworkProcess/NetworkLoad.h:
2286 (WebKit::NetworkLoad::pendingDownloadID):
2287 * NetworkProcess/NetworkSession.h:
2288 (WebKit::NetworkDataTask::client):
2289 (WebKit::NetworkDataTask::pendingDownloadID):
2290 (WebKit::NetworkDataTask::pendingDownload):
2291 (WebKit::NetworkDataTask::setPendingDownloadID):
2292 (WebKit::NetworkDataTask::setPendingDownload):
2293 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2294 * PlatformMac.cmake:
2295 * Shared/Authentication/AuthenticationManager.cpp:
2296 (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):
2297 * Shared/Authentication/AuthenticationManager.h:
2298 * WebKit2.xcodeproj/project.pbxproj:
2299 * WebProcess/Network/WebResourceLoader.cpp:
2300 (WebKit::WebResourceLoader::canAuthenticateAgainstProtectionSpace):
2301 Removed unnecessary protection and move null check to before using the pointer it checks.
2303 2016-01-07 Simon Fraser <simon.fraser@apple.com>
2305 Use an appropriate buffer format for swipe snapshots
2306 https://bugs.webkit.org/show_bug.cgi?id=152880
2307 rdar://problem/23728299
2309 Reviewed by Tim Horton.
2311 Choose an appropriate buffer format for swipe snapshots, and avoid converting
2314 * UIProcess/API/Cocoa/WKWebView.mm:
2315 (WebKit::bufferFormat):
2316 (-[WKWebView _takeViewSnapshot]):
2318 2016-01-07 Alex Christensen <achristensen@webkit.org>
2320 Progress towards implementing downloads with NetworkSession
2321 https://bugs.webkit.org/show_bug.cgi?id=152760
2323 Reviewed by Brady Eidson.
2325 * NetworkProcess/Downloads/Download.cpp:
2326 (WebKit::Download::Download):
2327 There's no need to store the unused NetworkSession&.
2328 (WebKit::Download::didStart):
2329 (WebKit::Download::didReceiveAuthenticationChallenge):
2330 Downloads with NetworkSession are NetworkLoads until the response is received, which is after authentication
2331 challenges are handled by NetworkLoad's code.
2332 (WebKit::Download::didReceiveResponse):
2333 * NetworkProcess/Downloads/Download.h:
2334 * NetworkProcess/Downloads/DownloadManager.cpp:
2335 (WebKit::DownloadManager::startDownload):
2336 Create a PendingDownload, which is basically a NetworkLoad that knows that it will become a Download
2337 when the response is received, regardless of whether or not there is a Content-Disposition header.
2338 (WebKit::DownloadManager::dataTaskBecameDownloadTask):
2339 * NetworkProcess/Downloads/DownloadManager.h:
2340 * NetworkProcess/Downloads/PendingDownload.h: Added.
2341 (WebKit::PendingDownload::PendingDownload):
2342 Added a new NetworkLoadClient for requests that will become downloads.
2343 A PendingDownload contains a NetworkLoad so we can always keep them together
2344 and so it can handle setting its pending download id.
2345 * WebKit2.xcodeproj/project.pbxproj:
2346 * NetworkProcess/NetworkLoad.cpp:
2347 (WebKit::NetworkLoad::NetworkLoad):
2348 Avoid dereferencing a pointer if the NetworkSession hadn't been created when a NetworkLoad starts.
2349 This shouldn't be possible, but it's good to not assume that all pointers are non-null.
2350 (WebKit::NetworkLoad::cancel):
2351 Add a null check in case the constructor doesn't make m_task.
2352 (WebKit::NetworkLoad::convertTaskToDownload):
2353 (WebKit::NetworkLoad::setPendingDownloadID):
2354 Added for downloads that start with startDownload. The pending DownloadID is used to indicate that
2355 this request should always become a download, regardless of whether or not the response has a
2356 Content-Disposition header.
2357 (WebKit::NetworkLoad::willPerformHTTPRedirection):
2358 (WebKit::NetworkLoad::didReceiveResponse):
2359 * NetworkProcess/NetworkLoad.h:
2360 There's no need to store a DownloadID here. It's stored in the NetworkDataTask (m_task).
2361 * NetworkProcess/NetworkSession.h:
2362 (WebKit::NetworkDataTask::client):
2363 (WebKit::NetworkDataTask::pendingDownloadID):
2364 (WebKit::NetworkDataTask::setPendingDownloadID):
2365 (WebKit::NetworkDataTask::downloadID): Deleted.
2366 (WebKit::NetworkDataTask::setDownloadID): Deleted.
2367 Renamed downloadID and setDownloadID to pendingDownloadID and setPendingDownloadID, respectively,
2368 to indicate their use. They are not the current downloadID, but they are the downloadID of the download
2369 that will happen once the response is received and PolicyDownload will be returned in the completion handler.
2370 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2371 (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
2372 Call dataTaskBecameDownloadTask after didBecomeDownload because the networkDataTask is deleted by removing it
2373 from m_pendingDownloads in dataTaskBecameDownloadTask.
2375 2016-01-06 Simon Fraser <simon.fraser@apple.com>
2377 Add a setting and preferences to enable display-list drawing. Does nothing yet.
2378 https://bugs.webkit.org/show_bug.cgi?id=152807
2380 Reviewed by Zalan Bujtas.
2382 WK2 debug pref for display-list drawing, defaults to off.
2384 * Shared/WebPreferencesDefinitions.h:
2385 * UIProcess/API/Cocoa/WKPreferences.mm:
2386 (-[WKPreferences _displayListDrawingEnabled]):
2387 (-[WKPreferences _setDisplayListDrawingEnabled:]):
2388 * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
2389 * WebProcess/WebPage/WebPage.cpp:
2390 (WebKit::WebPage::updatePreferences):
2392 2016-01-06 Daniel Bates <dabates@apple.com>
2394 Use code signed identifier as part of user directory suffix
2395 https://bugs.webkit.org/show_bug.cgi?id=152310
2396 <rdar://problem/13352225>
2398 As pointed out by Sam Weinig, the year is 2016! I inadvertently added the copyright year 2015 instead of 2016.
2400 * Shared/mac/ChildProcessMac.mm:
2402 2016-01-06 Simon Fraser <simon.fraser@apple.com>
2404 [iOS] Revert overflow:hidden on the body affecting viewport scale (r186786)
2405 https://bugs.webkit.org/show_bug.cgi?id=152803
2406 rdar://problem/22242515
2408 Reviewed by Tim Horton.
2410 You can't assume that if an author uses overflow:hidden on the body, they have no
2411 content outside the body that is important. Sites like Google Translate put
2412 abspos elements outside the body.
2414 So revert the change.
2416 * WebProcess/WebPage/WebPage.cpp:
2417 (WebKit::WebPage::mainFrameDidLayout): Go back to using contents size.
2419 2016-01-06 Anders Carlsson <andersca@apple.com>
2421 Add a smart block pointer
2422 https://bugs.webkit.org/show_bug.cgi?id=152799
2424 Reviewed by Tim Horton.
2428 * UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
2429 (-[WKWebsiteDataStore fetchDataRecordsOfTypes:completionHandler:]):
2430 (-[WKWebsiteDataStore removeDataOfTypes:modifiedSince:completionHandler:]):
2431 (-[WKWebsiteDataStore removeDataOfTypes:forDataRecords:completionHandler:]):
2433 2016-01-06 Daniel Bates <dabates@apple.com>
2435 Use code signed identifier as part of user directory suffix
2436 https://bugs.webkit.org/show_bug.cgi?id=152310
2437 <rdar://problem/13352225>
2439 Reviewed by Brent Fulgham.
2441 * Shared/mac/ChildProcessMac.mm:
2442 (WebKit::findSecCodeForProcess): Added.
2443 (WebKit::ChildProcess::initializeSandbox): Modified to use an identifier
2444 from the code signature of the app/tool as part of the user directory suffix.
2446 2016-01-06 Brian Burg <bburg@apple.com>
2448 Add a WebKit SPI for registering an automation controller with RemoteInspector
2449 https://bugs.webkit.org/show_bug.cgi?id=151576
2451 Reviewed by Dan Bernstein and Joseph Pecoraro.
2453 _WKAutomationDelegate is a new SPI that allows WKProcessPool clients to decide
2454 policy and implement actions for remote automation.
2456 The SPI's implementation connects the client's delegate to RemoteInspector::Client.
2457 This allows the delegate to handle some commands, such as requestAutomationSession,
2458 that come over XPC from an external test runner but are not associated with a specific
2461 * PlatformMac.cmake:
2462 * UIProcess/API/APIAutomationClient.h: Added. Boilerplate for WebKit::AutomationClient.
2463 (API::AutomationClient::~AutomationClient):
2464 (API::AutomationClient::allowsRemoteAutomation):
2465 (API::AutomationClient::requestAutomationSession):
2466 * UIProcess/API/Cocoa/WKProcessPool.mm:
2467 (-[WKProcessPool _automationDelegate]): Added.
2468 (-[WKProcessPool _setAutomationDelegate:]): Added.
2469 (-[WKProcessPool _automationCapabilitiesDidChange]): Added.
2470 * UIProcess/API/Cocoa/WKProcessPoolPrivate.h: Add delegate.
2471 * UIProcess/API/Cocoa/_WKAutomationDelegate.h: Added.
2473 This is a new delegate SPI of WKProcessPool; it corresponds to AutomationClient.
2475 * UIProcess/Cocoa/AutomationClient.h: Added.
2476 * UIProcess/Cocoa/AutomationClient.mm: Added.
2478 This implements a bridge between RemoteInspector::Client and _WKAutomationDelegate.
2479 Since the delegate can be called from JavaScriptCore, save the delegating
2480 WKProcessPool and pass it as the self parameter to delegate methods.
2482 (WebKit::AutomationClient::AutomationClient):
2483 (WebKit::AutomationClient::~AutomationClient):
2485 This client automatically registers and unregisters as a RemoteInspector::Client.
2487 (WebKit::AutomationClient::remoteAutomationAllowed):
2488 (WebKit::AutomationClient::requestAutomationSession):
2490 Forward requests from RemoteInspector to the automation delegate.
2492 * UIProcess/WebProcessPool.cpp:
2493 (WebKit::WebProcessPool::WebProcessPool):
2494 (WebKit::WebProcessPool::setAutomationClient): Added.
2495 (WebKit::WebProcessPool::updateAutomationCapabilities): Added, it notifies RemoteInspector.
2496 * UIProcess/WebProcessPool.h:
2497 * WebKit2.xcodeproj/project.pbxproj:
2499 2016-01-06 Gyuyoung Kim <gyuyoung.kim@webkit.org>
2501 [EFL] Set WebKit2 process output name
2502 https://bugs.webkit.org/show_bug.cgi?id=152773
2504 Reviewed by Benjamin Poulain.
2506 If we add *WebKit* prefix to each WK2 process, it is more clear when checking what process is running.
2507 So this patch sets wk2 process output name.
2509 * PlatformEfl.cmake:
2511 2016-01-05 Alex Christensen <achristensen@webkit.org>
2513 Implement defersLoading with NetworkSession
2514 https://bugs.webkit.org/show_bug.cgi?id=151818
2516 Reviewed by Darin Adler.
2518 * NetworkProcess/NetworkLoad.cpp:
2519 (WebKit::NetworkLoad::NetworkLoad):
2520 (WebKit::NetworkLoad::setDefersLoading):
2521 * NetworkProcess/NetworkSession.h:
2522 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2523 (WebKit::NetworkDataTask::resume):
2524 (WebKit::NetworkDataTask::suspend):
2526 2016-01-05 Tim Horton <timothy_horton@apple.com>
2528 REGRESSION (r192432): Keyboard repeat doesn't work anymore for arrow keys/spacebar
2529 https://bugs.webkit.org/show_bug.cgi?id=152767
2530 <rdar://problem/24017380>
2532 Reviewed by Dan Bernstein.
2534 * UIProcess/ios/WKContentViewInteraction.mm:
2535 (-[WKContentView _didHandleKeyEvent:eventWasHandled:]):
2536 Instead of always bailing, call [super _handleKeyUIEvent:] if we aren't
2537 in an editable area, because we won't have done so in _handleKeyUIEvent.
2539 It's important that the event makes it to the root UIResponder (even if
2540 we handled it!) for key repeat to function.
2542 The double-scrolling case is still fixed because we notice the resent
2543 event coming back in to us and bail if we've already seen it.
2545 2016-01-05 Jer Noble <jer.noble@apple.com>
2547 [Mac] Exiting fullscreen via Mission Control leaves fullcreen window frontmost on desktop
2548 https://bugs.webkit.org/show_bug.cgi?id=152733
2550 Reviewed by Eric Carlson.
2552 Rather than ignore -windowDidExitFullScreen: notifications when fullscreen exit was
2553 not initiated by WebKit (and the -window:startCustomAnimationToEnterFullScreenWithDuration:
2554 method was not called), continue to exit fullscreen normally.
2556 * UIProcess/mac/WKFullScreenWindowController.mm:
2557 (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
2559 2016-01-05 Alex Christensen <achristensen@webkit.org>
2561 Clean up download code
2562 https://bugs.webkit.org/show_bug.cgi?id=152739
2564 Reviewed by Brady Eidson.
2566 * NetworkProcess/Downloads/DownloadManager.cpp:
2567 (WebKit::DownloadManager::DownloadManager):
2568 (WebKit::DownloadManager::didCreateDownload):
2569 (WebKit::DownloadManager::didDestroyDownload):
2570 (WebKit::DownloadManager::downloadProxyConnection):
2571 (WebKit::DownloadManager::downloadsAuthenticationManager):
2572 * NetworkProcess/Downloads/DownloadManager.h:
2573 Keep a Client& instead of a Client*.
2574 * NetworkProcess/NetworkProcess.cpp:
2575 (WebKit::NetworkProcess::downloadManager):
2576 * NetworkProcess/NetworkSession.h:
2577 m_sessionID is not used. There is no need to store the sessionID if it is only used in the NetworkSession constructor.
2578 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2579 (WebKit::NetworkSession::defaultSession):
2580 (WebKit::NetworkSession::NetworkSession):
2582 2016-01-04 Carlos Garcia Campos <cgarcia@igalia.com>
2584 [GTK] Allow to save and restore session
2585 https://bugs.webkit.org/show_bug.cgi?id=115600
2587 Reviewed by Michael Catanzaro.
2589 Add new API to get and resore the web view session state.
2591 * PlatformGTK.cmake: Add new files to compilation.
2592 * UIProcess/API/gtk/WebKitWebView.cpp:
2593 (webkit_web_view_get_session_state): Create a new
2594 WebKitWebViewSessionState representing the current session state.
2595 (webkit_web_view_restore_session_state): Restore the web view
2596 session state from the given WebKitWebViewSessionState.
2597 * UIProcess/API/gtk/WebKitWebView.h:
2598 * UIProcess/API/gtk/WebKitWebViewSessionState.cpp: Added.
2599 (_WebKitWebViewSessionState::_WebKitWebViewSessionState):
2600 (toExternalURLsPolicy):
2601 (toWebCoreExternalURLsPolicy):
2602 (toHTMLBodyElementType):
2603 (toHTTPBodyElementType):
2607 (encodeBackForwardListItemState):
2608 (encodeBackForwardListState):
2609 (encodeSessionState):
2612 (decodeBackForwardListItemState):
2613 (decodeSessionState):
2614 (webkitWebViewSessionStateCreate):
2615 (webkitWebViewSessionStateGetSessionState):
2616 (webkit_web_view_session_state_new): Create a
2617 WebKitWebViewSessionState from serialized data.
2618 (webkit_web_view_session_state_ref):
2619 (webkit_web_view_session_state_unref):
2620 (webkit_web_view_session_state_serialize): Serialize the WebKitWebViewSessionState.
2621 * UIProcess/API/gtk/WebKitWebViewSessionState.h: Added.
2622 * UIProcess/API/gtk/WebKitWebViewSessionStatePrivate.h: Added.
2623 * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
2624 * UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Add webkit_web_view_session_state_get_type.
2625 * UIProcess/API/gtk/webkit2.h: Include WebKitWebViewSessionState.h.
2627 2016-01-04 Alex Christensen <achristensen@webkit.org>
2629 Use unique_ptr for NetworkDataTasks and references for NetworkSessionTaskClients
2630 https://bugs.webkit.org/show_bug.cgi?id=152724
2632 Reviewed by Andy Estes.
2634 There is no reason to have a NetworkSessionTaskClient* instead of a
2635 NetworkSessionTaskClient& just so we can clear it in the NetworkLoad destructor,
2636 which immediately calls ~NetworkDataTask.
2637 Also, NetworkDataTasks are owned only by the NetworkLoad, so there's no reason to refcount them.
2639 * NetworkProcess/Downloads/Download.h:
2640 * NetworkProcess/Downloads/DownloadManager.h:
2641 * NetworkProcess/NetworkLoad.cpp:
2642 (WebKit::NetworkLoad::~NetworkLoad):
2643 * NetworkProcess/NetworkLoad.h:
2644 * NetworkProcess/NetworkSession.h:
2645 (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
2646 (WebKit::NetworkDataTask::client):
2647 (WebKit::NetworkDataTask::downloadID):
2648 (WebKit::NetworkDataTask::setDownloadID):
2649 (WebKit::NetworkDataTask::clearClient): Deleted.
2650 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2651 (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
2652 (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
2653 (-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]):
2654 (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]):
2655 (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveData:]):
2656 (-[WKNetworkSessionDelegate URLSession:downloadTask:didFinishDownloadingToURL:]):
2657 (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
2658 (WebKit::NetworkSession::~NetworkSession):
2659 (WebKit::NetworkSession::createDataTaskWithRequest):
2660 (WebKit::NetworkSession::dataTaskForIdentifier):
2661 (WebKit::NetworkDataTask::NetworkDataTask):
2663 2016-01-04 Alex Christensen <achristensen@webkit.org>
2665 Progress towards implementing downloads with NetworkSession
2666 https://bugs.webkit.org/show_bug.cgi?id=152716
2668 Reviewed by Brady Eidson.
2670 * NetworkProcess/Downloads/Download.h:
2671 * NetworkProcess/Downloads/DownloadID.h:
2672 (WebKit::DownloadID::DownloadID):
2673 (WebKit::DownloadID::operator==):
2674 (WebKit::DownloadID::operator!=):
2675 (WebKit::DownloadID::downloadID):
2676 * NetworkProcess/Downloads/DownloadManager.cpp:
2677 (WebKit::DownloadManager::startDownload):
2678 * NetworkProcess/Downloads/DownloadManager.h:
2679 (WebKit::DownloadManager::download):
2680 (WebKit::DownloadManager::isDownloading):
2681 * NetworkProcess/Downloads/cocoa/DownloadCocoa.mm:
2682 (WebKit::Download::resume):
2683 (WebKit::Download::platformInvalidate):
2684 (WebKit::Download::platformDidFinish):
2685 (WebKit::Download::start): Deleted.
2686 * NetworkProcess/NetworkSession.h:
2687 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2688 (-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
2689 (-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
2690 (-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]):
2691 (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]):
2692 (-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveData:]):
2693 (-[WKNetworkSessionDelegate URLSession:downloadTask:didFinishDownloadingToURL:]):
2694 (-[WKNetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]):
2695 (-[WKNetworkSessionDelegate URLSession:downloadTask:didResumeAtOffset:expectedTotalBytes:]):
2696 (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
2698 When using NSURLSession, a data task is converted to a download task after the connection has already
2699 been established, the headers have been received, and WebCore looks at the response and decides that
2700 this connection should become a download. We call the didReceiveResponse to match the behavior of
2701 NSURLDownload, but this could be cleaned up later to match what is actually happening. We also do not
2702 need to tell the download to start because it has already started.
2704 (WebKit::NetworkSession::dataTaskForIdentifier):
2705 (WebKit::NetworkSession::addDownloadID):
2706 (WebKit::NetworkSession::downloadID):
2707 (WebKit::NetworkSession::takeDownloadID):
2708 (WebKit::NetworkDataTask::NetworkDataTask):
2710 NSURLSessionDownloadTask taskIdentifiers are unique to that NSURLSession, but we have one global DownloadManager
2711 in the NetworkProcess. We need to have each NetworkSession keep a map of taskIdentifiers to global DownloadID.
2713 2016-01-04 Tim Horton <timothy_horton@apple.com>
2715 Turn on gesture events when building for Yosemite
2716 https://bugs.webkit.org/show_bug.cgi?id=152704
2717 rdar://problem/24042472
2719 Reviewed by Anders Carlsson.
2721 * Configurations/FeatureDefines.xcconfig:
2723 2016-01-04 Tim Horton <timothy_horton@apple.com>
2725 Hardware keyboard key-commands stop responding when viewing PDFs
2726 https://bugs.webkit.org/show_bug.cgi?id=152712
2727 <rdar://problem/23014457>
2729 Reviewed by Dan Bernstein.
2731 Maintain first responder status through any content view swapping, by
2732 making WKWebView become first responder if needed, and pushing first
2733 responder status down to the swapped-in content view if possible.
2735 * UIProcess/API/Cocoa/WKWebView.mm:
2736 (-[WKWebView becomeFirstResponder]):
2737 Make the current content view first responder instead of the WKContentView,
2738 in case we have a custom content view installed.
2740 (-[WKWebView canBecomeFirstResponder]):
2741 WKWebView can always become first responder, even if none of its children can.
2742 This makes it so that if a custom content view can't become first responder,
2743 WKWebView will take the responsibility.
2745 (-[WKWebView _setHasCustomContentView:loadedMIMEType:]):
2746 Return the responsibility of being first responder to the newly-installed
2747 content view if WKWebView is currently the first responder (either because
2748 of tab switching or because the previous content view did not support
2749 being first responder), if it supports being first responder.
2751 2016-01-04 Commit Queue <commit-queue@webkit.org>
2753 Unreviewed, rolling out r194544.
2754 https://bugs.webkit.org/show_bug.cgi?id=152711
2756 This change caused assertions in existing inspector tests
2757 (Requested by ryanhaddad on #webkit).
2761 "Web Inspector: reproducible debug ASSERT when inspecting the
2763 https://bugs.webkit.org/show_bug.cgi?id=152080
2764 http://trac.webkit.org/changeset/194544
2766 2016-01-04 Alex Christensen <achristensen@webkit.org>
2768 Fix Mac CMake build after r194378.
2772 2016-01-04 Brian Burg <bburg@apple.com>
2774 Web Inspector: reproducible debug ASSERT when inspecting the inspector (WK2)
2775 https://bugs.webkit.org/show_bug.cgi?id=152080
2777 Reviewed by Timothy Hatcher.
2779 We hit an assert underneath ChildProcessProxy::addMessageReceiver when opening Inspector[2]
2780 because we try to add WebInpectorProxy as a message receiver twice for the same process.
2782 On investigating, I found several interrelated issues that caused this state of affairs:
2784 - WebInspectorProxy adds message receivers for inspector page's WebProcess and the
2785 inspected page's WebProcess. When inspecting the inspector, we mistakenly add a receiver
2786 again because the inspector is now the inspected page.
2787 - We mixed up process ids when adding message receivers.
2788 - invalidate() is re-entrant, causing us to try and double-remove the message receiver.
2790 Fix this by removing add/remove of message recievers for the inspector page when then
2791 inspected page is itself an inspector page. In that case, the receivers are managed by
2792 the inspector page's WebInspectorProxy instance.
2794 * UIProcess/WebInspectorProxy.cpp:
2795 (WebKit::WebInspectorProxy::invalidate): Re-arrange to guard against useless reentrancy.
2796 (WebKit::WebInspectorProxy::didRelaunchInspectorPageProcess):
2797 (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage):
2798 (WebKit::WebInspectorProxy::didClose):
2800 2016-01-04 Alex Christensen <achristensen@webkit.org>
2802 Build fix after r194536 when using NetworkSession.
2804 * NetworkProcess/Downloads/DownloadManager.cpp:
2805 (WebKit::DownloadManager::dataTaskBecameDownloadTask):
2806 (WebKit::DownloadManager::convertHandleToDownload):
2807 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2808 (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
2809 WTFMove changed underneath me.
2811 2016-01-04 Alex Christensen <achristensen@webkit.org>
2813 Progress towards implementing downloads with NetworkSession
2814 https://bugs.webkit.org/show_bug.cgi?id=152576
2816 Reviewed by Brady Eidson.
2818 * NetworkProcess/Downloads/Download.cpp:
2819 (WebKit::Download::Download):
2820 (WebKit::Download::~Download):
2821 (WebKit::Download::didStart):
2822 (WebKit::Download::didReceiveAuthenticationChallenge):
2823 * NetworkProcess/Downloads/Download.h:
2824 (WebKit::Download::downloadID):
2825 * NetworkProcess/Downloads/DownloadManager.cpp:
2826 (WebKit::DownloadManager::startDownload):
2827 (WebKit::DownloadManager::dataTaskBecameDownloadTask):
2828 (WebKit::DownloadManager::convertHandleToDownload):
2829 * NetworkProcess/Downloads/DownloadManager.h:
2830 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
2831 (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
2832 * NetworkProcess/NetworkLoad.cpp:
2833 (WebKit::NetworkLoad::convertTaskToDownload):
2834 * NetworkProcess/NetworkLoad.h:
2835 * NetworkProcess/NetworkSession.h:
2836 (WebKit::NetworkDataTask::client):
2837 (WebKit::NetworkDataTask::clearClient):
2838 (WebKit::NetworkDataTask::downloadID):
2839 (WebKit::NetworkDataTask::setDownloadID):
2840 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2841 (-[WKNetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]):
2842 (-[WKNetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
2844 2016-01-04 Michael Catanzaro <mcatanzaro@igalia.com>
2846 [GTK] Rename _WebKitWebContextPrivate.context to _WebKitWebContextPrivate.processPool
2847 https://bugs.webkit.org/show_bug.cgi?id=152672
2849 Reviewed by Carlos Garcia Campos.
2851 * UIProcess/API/gtk/WebKitDownloadClient.cpp:
2852 (attachDownloadClientToContext):
2853 * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
2854 (attachInjectedBundleClientToContext):
2855 * UIProcess/API/gtk/WebKitSecurityManager.cpp:
2856 (registerSecurityPolicyForURIScheme):
2857 * UIProcess/API/gtk/WebKitWebContext.cpp:
2858 (webkitWebContextConstructed):
2859 (webkitWebContextDispose):
2860 (webkit_web_context_set_cache_model):
2861 (webkit_web_context_get_cache_model):
2862 (webkit_web_context_clear_cache):
2863 (webkit_web_context_get_cookie_manager):
2864 (ensureFaviconDatabase):
2865 (webkit_web_context_set_favicon_database_directory):
2866 (webkit_web_context_set_additional_plugins_directory):
2867 (webkitWebContextGetPluginThread):
2868 (webkit_web_context_set_tls_errors_policy):
2869 (webkit_web_context_set_disk_cache_directory):
2870 (webkit_web_context_prefetch_dns):
2871 (webkit_web_context_allow_tls_certificate_for_host):
2872 (webkit_web_context_set_process_model):
2873 (webkit_web_context_set_web_process_count_limit):
2874 (webkitWebContextStartDownload):
2875 (webkitWebContextGetProcessPool):
2876 (webkitWebContextCreatePageForWebView):
2877 (webkitWebContextGetContext): Deleted.
2878 * UIProcess/API/gtk/WebKitWebContextPrivate.h:
2880 2016-01-03 Simon Fraser <simon.fraser@apple.com>
2882 Rename scrollPosition(Scrollbar*) to scrollOffset(ScrollbarOrientation)
2883 https://bugs.webkit.org/show_bug.cgi?id=152666
2885 Reviewed by Dan Bernstein.
2887 Scrollbar values take offsets (zero-based), so rename the accessor used
2888 by scrollbars to set their value, and pass in an orientation, rather than
2889 a pointer to the scrollbar.
2891 * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.h:
2892 * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
2893 (WebKit::PDFPlugin::scrollOffset):
2894 (WebKit::PDFPlugin::scrollPosition): Renamed.
2896 2015-12-31 Andy Estes <aestes@apple.com>
2898 Replace WTF::move with WTFMove
2899 https://bugs.webkit.org/show_bug.cgi?id=152601
2901 Reviewed by Brady Eidson.
2903 * DatabaseProcess/DatabaseProcess.cpp:
2904 (WebKit::DatabaseProcess::postDatabaseTask):
2905 (WebKit::DatabaseProcess::fetchWebsiteData):
2906 (WebKit::DatabaseProcess::deleteWebsiteData):
2907 (WebKit::DatabaseProcess::deleteWebsiteDataForOrigins):
2908 (WebKit::DatabaseProcess::indexedDatabaseOrigins):
2909 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
2910 (WebKit::UniqueIDBDatabase::postTransactionOperation):
2911 (WebKit::UniqueIDBDatabase::postMainThreadTask):
2912 (WebKit::UniqueIDBDatabase::postDatabaseTask):
2913 * NetworkProcess/Downloads/DownloadManager.cpp:
2914 (WebKit::DownloadManager::startDownload):
2915 (WebKit::DownloadManager::convertHandleToDownload):
2916 (WebKit::DownloadManager::resumeDownload):
2917 * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:
2918 (WebKit::NetworkServiceInitializerDelegate::NetworkServiceInitializerDelegate):
2919 * NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
2920 (WebKit::NetworkBlobRegistry::registerBlobURL):
2921 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
2922 (WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):
2923 (WebKit::NetworkConnectionToWebProcess::registerBlobURL):
2924 * NetworkProcess/NetworkLoad.cpp:
2925 (WebKit::NetworkLoad::didReceiveData):
2926 (WebKit::NetworkLoad::didReceiveBuffer):
2927 (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace):
2928 * NetworkProcess/NetworkProcess.cpp:
2929 (WebKit::fetchDiskCacheEntries):
2930 (WebKit::NetworkProcess::fetchWebsiteData):
2931 (WebKit::NetworkProcess::deleteWebsiteData):
2932 (WebKit::clearDiskCacheEntries):
2933 (WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
2934 * NetworkProcess/NetworkResourceLoader.cpp:
2935 (WebKit::NetworkResourceLoader::SynchronousLoadData::SynchronousLoadData):
2936 (WebKit::NetworkResourceLoader::NetworkResourceLoader):
2937 (WebKit::NetworkResourceLoader::retrieveCacheEntry):
2938 (WebKit::NetworkResourceLoader::didFinishLoading):
2939 (WebKit::NetworkResourceLoader::tryStoreAsCacheEntry):
2940 (WebKit::NetworkResourceLoader::validateCacheEntry):
2941 * NetworkProcess/NetworkResourceLoader.h:
2942 * NetworkProcess/cache/NetworkCache.cpp:
2943 (WebKit::NetworkCache::Cache::retrieve):
2944 (WebKit::NetworkCache::Cache::store):
2945 (WebKit::NetworkCache::Cache::clear):
2946 * NetworkProcess/cache/NetworkCacheCoders.h:
2947 * NetworkProcess/cache/NetworkCacheDataSoup.cpp:
2948 (WebKit::NetworkCache::Data::empty):
2949 (WebKit::NetworkCache::Data::subrange):
2950 (WebKit::NetworkCache::concatenate):
2951 (WebKit::NetworkCache::Data::adoptMap):
2952 * NetworkProcess/cache/NetworkCacheEntry.cpp:
2953 (WebKit::NetworkCache::Entry::Entry):
2954 * NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:
2955 (WebKit::NetworkCache::runTaskInQueue):
2956 (WebKit::NetworkCache::fillDataFromReadBuffer):
2957 (WebKit::NetworkCache::IOChannel::readSyncInThread):
2958 * NetworkProcess/cache/NetworkCacheSpeculativeLoad.cpp:
2959 (WebKit::NetworkCache::SpeculativeLoad::SpeculativeLoad):
2960 (WebKit::NetworkCache::SpeculativeLoad::didFinishLoading):
2961 (WebKit::NetworkCache::SpeculativeLoad::didComplete):
2962 * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp:
2963 (WebKit::NetworkCache::SpeculativeLoadManager::ExpiringEntry::ExpiringEntry):
2964 (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::PreloadedEntry):
2965 (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::takeCacheEntry):
2966 (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::create):
2967 (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::setExistingSubresourcesEntry):
2968 (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::PendingFrameLoad):
2969 (WebKit::NetworkCache::SpeculativeLoadManager::registerLoad):
2970 (WebKit::NetworkCache::SpeculativeLoadManager::addPreloadedEntry):
2971 (WebKit::NetworkCache::SpeculativeLoadManager::retrieveEntryFromStorage):
2972 (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry):
2973 (WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry):
2974 (WebKit::NetworkCache::SpeculativeLoadManager::retrieveSubresourcesEntry):
2975 * NetworkProcess/cache/NetworkCacheStatistics.cpp:
2976 (WebKit::NetworkCache::Statistics::queryWasEverRequested):
2977 * NetworkProcess/cache/NetworkCacheStorage.cpp:
2978 (WebKit::NetworkCache::Storage::ReadOperation::finish):
2979 (WebKit::NetworkCache::Storage::synchronize):
2980 (WebKit::NetworkCache::Storage::dispatchReadOperation):
2981 (WebKit::NetworkCache::Storage::dispatchWriteOperation):
2982 (WebKit::NetworkCache::Storage::retrieve):
2983 (WebKit::NetworkCache::Storage::store):
2984 (WebKit::NetworkCache::Storage::traverse):
2985 (WebKit::NetworkCache::Storage::clear):
2986 * NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp:
2987 (WebKit::NetworkCache::SubresourcesEntry::SubresourcesEntry):
2988 (WebKit::NetworkCache::SubresourcesEntry::updateSubresourceKeys):
2989 * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2990 (WebKit::NetworkDataTask::NetworkDataTask):
2991 * NetworkProcess/soup/NetworkProcessSoup.cpp:
2992 (WebKit::NetworkProcess::clearDiskCache):
2993 * Platform/IPC/ArgumentCoders.h:
2994 (IPC::ArgumentCoder<WTF::Optional<T>>::decode):
2995 * Platform/IPC/ArgumentDecoder.cpp:
2996 (IPC::ArgumentDecoder::ArgumentDecoder):
2997 * Platform/IPC/ArgumentEncoder.cpp:
2998 (IPC::ArgumentEncoder::addAttachment):
2999 (IPC::ArgumentEncoder::releaseAttachments):
3000 * Platform/IPC/Attachment.cpp:
3001 (IPC::Attachment::encode):
3002 * Platform/IPC/Connection.cpp:
3003 (IPC::Connection::SyncMessageState::processIncomingMessage):
3004 (IPC::Connection::SyncMessageState::dispatchMessages):
3005 (IPC::Connection::dispatchWorkQueueMessageReceiverMessage):
3006 (IPC::Connection::sendMessage):
3007 (IPC::Connection::sendSyncReply):
3008 (IPC::Connection::waitForMessage):
3009 (IPC::Connection::sendSyncMessage):
3010 (IPC::Connection::sendSyncMessageFromSecondaryThread):
3011 (IPC::Connection::waitForSyncReply):
3012 (IPC::Connection::processIncomingSyncReply):
3013 (IPC::Connection::processIncomingMessage):
3014 (IPC::Connection::sendOutgoingMessages):
3015 (IPC::Connection::dispatchSyncMessage):
3016 (IPC::Connection::enqueueIncomingMessage):
3017 (IPC::Connection::dispatchOneMessage):
3018 * Platform/IPC/Connection.h:
3019 (IPC::Connection::Identifier::Identifier):
3020 (IPC::Connection::send):
3021 (IPC::Connection::sendSync):
3022 * Platform/IPC/HandleMessage.h:
3023 (IPC::handleMessage):
3024 (IPC::handleMessageDelayed):
3025 * Platform/IPC/MessageDecoder.cpp:
3026 (IPC::MessageDecoder::MessageDecoder):
3027 (IPC::MessageDecoder::setImportanceAssertion):
3028 (IPC::MessageDecoder::unwrapForTesting):
3029 * Platform/IPC/MessageDecoder.h:
3030 (IPC::MessageDecoder::setMessageProcessingToken):
3031 * Platform/IPC/MessageEncoder.cpp:
3032 (IPC::MessageEncoder::wrapForTesting):
3033 * Platform/IPC/MessageRecorder.cpp:
3034 (IPC::MessageRecorder::recordOutgoingMessage):
3035 (IPC::MessageRecorder::recordIncomingMessage):
3036 (IPC::MessageRecorder::MessageProcessingToken::MessageProcessingToken):
3037 * Platform/IPC/MessageSender.cpp:
3038 (IPC::MessageSender::sendMessage):
3039 * Platform/IPC/MessageSender.h:
3040 (IPC::MessageSender::send):
3041 (IPC::MessageSender::sendSync):
3042 * Platform/IPC/glib/GSocketMonitor.cpp:
3043 (IPC::GSocketMonitor::start):
3044 * Platform/IPC/mac/ConnectionMac.mm:
3045 (IPC::Connection::open):
3046 (IPC::createMessageDecoder):
3047 (IPC::Connection::receiveSourceEventHandler):
3048 * Platform/IPC/unix/ConnectionUnix.cpp:
3049 (IPC::Connection::processMessage):
3050 * Platform/unix/SharedMemoryUnix.cpp:
3051 (WebKit::SharedMemory::Handle::decode):
3052 (WebKit::SharedMemory::Handle::releaseAttachment):
3053 (WebKit::SharedMemory::Handle::adoptAttachment):
3054 * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
3055 (WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
3056 * PluginProcess/PluginProcess.cpp:
3057 (WebKit::PluginProcess::initializePluginProcess):
3058 * PluginProcess/WebProcessConnection.cpp:
3059 (WebKit::WebProcessConnection::addPluginControllerProxy):
3060 (WebKit::WebProcessConnection::createPluginInternal):
3061 * PluginProcess/mac/PluginProcessMac.mm:
3062 (WebKit::PluginProcess::platformInitializePluginProcess):
3063 * Scripts/webkit/LegacyMessageReceiver-expected.cpp:
3064 (Messages::WebPage::GetPluginProcessConnection::DelayedReply::DelayedReply):
3065 (Messages::WebPage::GetPluginProcessConnection::DelayedReply::send):
3066 (Messages::WebPage::TestMultipleAttributes::DelayedReply::DelayedReply):
3067 (Messages::WebPage::TestMultipleAttributes::DelayedReply::send):
3068 * Scripts/webkit/MessageReceiver-expected.cpp:
3069 (Messages::WebPage::GetPluginProcessConnection::DelayedReply::DelayedReply):
3070 (Messages::WebPage::GetPluginProcessConnection::DelayedReply::send):
3071 (Messages::WebPage::TestMultipleAttributes::DelayedReply::DelayedReply):
3072 (Messages::WebPage::TestMultipleAttributes::DelayedReply::send):
3073 * Scripts/webkit/messages.py:
3074 (generate_message_handler):
3075 * Shared/API/APIArray.cpp:
3076 (API::Array::create):
3077 (API::Array::createStringArray):
3079 * Shared/API/APIArray.h:
3080 * Shared/API/APIDictionary.cpp:
3081 (API::Dictionary::create):
3082 (API::Dictionary::Dictionary):
3083 (API::Dictionary::keys):
3084 * Shared/API/APIPageGroupHandle.cpp:
3085 (API::PageGroupHandle::create):
3086 (API::PageGroupHandle::PageGroupHandle):
3087 (API::PageGroupHandle::decode):
3088 * Shared/API/APIString.h:
3089 * Shared/API/APIURL.h:
3092 * Shared/API/Cocoa/RemoteObjectInvocation.h:
3093 (WebKit::RemoteObjectInvocation::ReplyInfo::ReplyInfo):
3094 * Shared/API/Cocoa/RemoteObjectInvocation.mm:
3095 (WebKit::RemoteObjectInvocation::RemoteObjectInvocation):
3096 (WebKit::RemoteObjectInvocation::decode):
3097 * Shared/API/Cocoa/WKRemoteObjectCoder.mm:
3098 (ensureObjectStream):
3099 (createEncodedObject):
3100 * Shared/API/Cocoa/_WKRemoteObjectInterface.mm:
3102 (-[_WKRemoteObjectInterface setClasses:forSelector:argumentIndex:ofReply:]):
3103 * Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
3104 (-[_WKRemoteObjectRegistry _sendInvocation:interface:]):
3105 * Shared/API/c/WKArray.cpp:
3107 (WKArrayCreateAdoptingValues):
3108 * Shared/API/c/WKDictionary.cpp:
3109 (WKDictionaryCreate):
3110 * Shared/API/c/WKSharedAPICast.h:
3111 (WebKit::ProxyingRefPtr::ProxyingRefPtr):
3112 * Shared/APIWebArchive.mm:
3113 (API::WebArchive::WebArchive):
3114 (API::WebArchive::subresources):
3115 (API::WebArchive::subframeArchives):
3116 * Shared/AsyncRequest.cpp:
3117 (WebKit::AsyncRequest::AsyncRequest):
3118 (WebKit::AsyncRequest::setAbortHandler):
3119 * Shared/AsyncRequest.h:
3120 * Shared/BlockingResponseMap.h:
3121 (BlockingResponseMap::didReceiveResponse):
3122 * Shared/ChildProcessProxy.cpp:
3123 (WebKit::ChildProcessProxy::sendMessage):
3124 (WebKit::ChildProcessProxy::didFinishLaunching):
3125 * Shared/ChildProcessProxy.h:
3126 (WebKit::ChildProcessProxy::send):
3127 (WebKit::ChildProcessProxy::sendSync):
3128 * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
3129 (WebKit::CoordinatedGraphicsScene::dispatchOnMainThread):
3130 (WebKit::CoordinatedGraphicsScene::dispatchOnClientRunLoop):
3131 (WebKit::CoordinatedGraphicsScene::createLayer):
3132 (WebKit::CoordinatedGraphicsScene::syncRemoteContent):
3133 (WebKit::CoordinatedGraphicsScene::appendUpdate):
3134 * Shared/CoordinatedGraphics/threadedcompositor/ThreadSafeCoordinatedSurface.cpp:
3135 (WebKit::ThreadSafeCoordinatedSurface::create):
3136 (WebKit::ThreadSafeCoordinatedSurface::ThreadSafeCoordinatedSurface):
3137 * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
3138 (WebKit::CompositingRunLoop::CompositingRunLoop):
3139 (WebKit::CompositingRunLoop::callOnCompositingRunLoop):
3140 (WebKit::ThreadedCompositor::callOnCompositingThread):
3141 * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
3142 (WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
3143 (WebKit::XPCServiceInitializer):
3144 * Shared/Plugins/Netscape/PluginInformation.cpp:
3145 (WebKit::createPluginInformationDictionary):
3146 * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.h:
3147 (WebKit::RemoteScrollingCoordinatorTransaction::setStateTreeToEncode):
3148 * Shared/SessionTracker.cpp:
3149 (WebKit::SessionTracker::setSession):
3150 * Shared/UserData.cpp:
3151 (WebKit::UserData::UserData):
3152 (WebKit::transformGraph):
3153 (WebKit::UserData::decode):
3154 * Shared/WebBackForwardListItem.cpp:
3155 (WebKit::WebBackForwardListItem::create):
3156 (WebKit::WebBackForwardListItem::WebBackForwardListItem):
3157 * Shared/WebBackForwardListItem.h:
3158 (WebKit::WebBackForwardListItem::setPageState):
3159 * Shared/WebCompiledContentExtension.cpp:
3160 (WebKit::WebCompiledContentExtension::create):
3161 (WebKit::WebCompiledContentExtension::WebCompiledContentExtension):
3162 * Shared/WebCompiledContentExtensionData.h:
3163 (WebKit::WebCompiledContentExtensionData::WebCompiledContentExtensionData):
3164 * Shared/WebContextMenuItem.cpp:
3165 (WebKit::WebContextMenuItem::submenuItemsAsAPIArray):
3166 * Shared/WebCoreArgumentCoders.cpp:
3167 (IPC::ArgumentCoder<UserStyleSheet>::decode):
3168 (IPC::ArgumentCoder<UserScript>::decode):
3169 (IPC::ArgumentCoder<FilterOperations>::decode):
3170 (IPC::ArgumentCoder<BlobPart>::decode):
3171 * Shared/WebKeyboardEvent.cpp:
3172 (WebKit::WebKeyboardEvent::WebKeyboardEvent):
3173 * Shared/WebPreferencesStore.h:
3174 (WebKit::WebPreferencesStore::Value::Value):
3175 * Shared/WebRenderLayer.cpp:
3176 (WebKit::WebRenderLayer::createArrayFromLayerList):
3177 * Shared/WebRenderObject.cpp:
3178 (WebKit::WebRenderObject::WebRenderObject):
3179 * Shared/WebTouchEvent.cpp:
3180 (WebKit::WebTouchEvent::WebTouchEvent):
3181 * Shared/efl/WebEventFactory.cpp:
3182 (WebKit::WebEventFactory::createWebTouchEvent):
3183 * Shared/gtk/NativeWebKeyboardEventGtk.cpp:
3184 (WebKit::NativeWebKeyboardEvent::NativeWebKeyboardEvent):
3185 * Shared/gtk/NativeWebTouchEventGtk.cpp:
3186 (WebKit::NativeWebTouchEvent::NativeWebTouchEvent):
3187 * Shared/gtk/WebContextMenuItemGtk.cpp:
3188 (WebKit::WebContextMenuItemGtk::WebContextMenuItemGtk):
3189 * Shared/gtk/WebEventFactory.cpp:
3190 (WebKit::WebEventFactory::createWebKeyboardEvent):
3191 (WebKit::WebEventFactory::createWebTouchEvent):
3192 * Shared/linux/SeccompFilters/OpenSyscall.cpp:
3193 (WebKit::OpenSyscall::createFromOpenatContext):
3194 (WebKit::OpenSyscall::createFromCreatContext):
3195 (WebKit::OpenSyscallResult::encode):
3196 * Shared/mac/ObjCObjectGraph.mm:
3197 (WebKit::ObjCObjectGraph::decode):
3198 * Shared/mac/RemoteLayerBackingStore.mm:
3199 (WebKit::RemoteLayerBackingStore::takeFrontContextPendingFlush):
3200 (WebKit::RemoteLayerBackingStore::Buffer::discard):
3201 * Shared/mac/RemoteLayerTreeTransaction.h:
3202 (WebKit::RemoteLayerTreeTransaction::setCallbackIDs):
3203 * Shared/mac/RemoteLayerTreeTransaction.mm:
3204 (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
3205 (WebKit::RemoteLayerTreeTransaction::decode):
3206 (WebKit::RemoteLayerTreeTransaction::setCreatedLayers):
3207 (WebKit::RemoteLayerTreeTransaction::setDestroyedLayerIDs):
3208 (WebKit::RemoteLayerTreeTransaction::setLayerIDsWithNewlyUnreachableBackingStore):
3209 * Shared/soup/WebCoreArgumentCodersSoup.cpp:
3210 (IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
3211 * UIProcess/API/APIProcessPoolConfiguration.h:
3212 * UIProcess/API/APISessionState.cpp:
3213 (API::SessionState::create):
3214 (API::SessionState::SessionState):
3215 * UIProcess/API/APIUserContentExtension.cpp:
3216 (API::UserContentExtension::UserContentExtension):
3217 * UIProcess/API/APIUserContentExtension.h:
3218 * UIProcess/API/APIUserContentExtensionStore.cpp:
3219 (API::compiledToFile):
3220 (API::createExtension):
3221 (API::UserContentExtensionStore::compileContentExtension):
3222 * UIProcess/API/APIUserScript.h:
3223 * UIProcess/API/APIWebsiteDataRecord.cpp:
3224 (API::WebsiteDataRecord::create):
3225 (API::WebsiteDataRecord::WebsiteDataRecord):
3226 * UIProcess/API/APIWebsiteDataStore.cpp:
3227 (API::WebsiteDataStore::create):
3228 (API::WebsiteDataStore::WebsiteDataStore):
3229 * UIProcess/API/C/WKApplicationCacheManager.cpp:
3230 (WKApplicationCacheManagerGetApplicationCacheOrigins):
3231 * UIProcess/API/C/WKKeyValueStorageManager.cpp:
3232 (WKKeyValueStorageManagerGetKeyValueStorageOrigins):
3233 (WKKeyValueStorageManagerGetStorageDetailsByOrigin):
3234 * UIProcess/API/C/WKPage.cpp:
3235 (WKPageCopySessionState):
3236 (WKPageRestoreFromSessionState):
3237 (WKPageSetPageContextMenuClient):
3238 (WKPageSetPageFindMatchesClient):
3239 (WKPageSetPageLoaderClient):
3240 (WebKit::RunJavaScriptAlertResultListener::create):
3241 (WebKit::RunJavaScriptAlertResultListener::RunJavaScriptAlertResultListener):
3242 (WebKit::RunJavaScriptConfirmResultListener::create):
3243 (WebKit::RunJavaScriptConfirmResultListener::RunJavaScriptConfirmResultListener):
3244 (WebKit::RunJavaScriptPromptResultListener::create):
3245 (WebKit::RunJavaScriptPromptResultListener::RunJavaScriptPromptResultListener):
3246 (WKPageSetPageUIClient):
3247 (WKPageSetPageNavigationClient):
3248 (WKPageCopyRelatedPages):
3249 * UIProcess/API/C/WKResourceCacheManager.cpp:
3250 (WKResourceCacheManagerGetCacheOrigins):
3251 * UIProcess/API/C/WKSessionStateRef.cpp:
3252 (WKSessionStateCreateFromData):
3253 * UIProcess/API/C/mac/WKContextPrivateMac.mm:
3254 (WKContextGetInfoForInstalledPlugIns):
3255 * UIProcess/API/C/mac/WKPagePrivateMac.mm:
3256 (-[WKObservablePageState initWithPage:]):
3257 * UIProcess/API/Cocoa/WKBrowsingContextGroup.mm:
3259 * UIProcess/API/Cocoa/WKWebView.mm:
3260 (-[WKWebView initWithFrame:configuration:]):
3261 (-[WKWebView _takeViewSnapshot]):
3262 (-[WKWebView _restoreFromSessionStateData:]):
3263 (-[WKWebView _setInputDelegate:]):
3264 * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
3265 (LazyInitialized::set):
3266 * UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
3267 (-[WKWebsiteDataStore fetchDataRecordsOfTypes:completionHandler:]):
3268 * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
3269 (-[_WKProcessPoolConfiguration setCachePartitionedURLSchemes:]):
3270 * UIProcess/API/Cocoa/_WKSessionState.mm:
3271 (-[_WKSessionState _initWithSessionState:]):
3272 * UIProcess/API/Cocoa/_WKUserContentExtensionStore.mm:
3273 (-[_WKUserContentExtensionStore compileContentExtensionForIdentifier:encodedContentExtension:completionHandler:]):
3274 * UIProcess/API/efl/ewk_database_manager.cpp:
3275 (EwkDatabaseManager::getDatabaseOrigins):
3276 * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
3277 (webkitContextMenuItemToWebContextMenuItemGtk):
3278 * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
3279 (webkit_file_chooser_request_select_files):
3280 * UIProcess/API/gtk/WebKitNotificationProvider.cpp:
3281 (WebKitNotificationProvider::notificationCloseCallback):
3282 * UIProcess/API/gtk/WebKitWebContext.cpp:
3283 (webkit_web_context_prefetch_dns):
3284 (webkitWebContextCreatePageForWebView):
3285 * UIProcess/API/gtk/WebKitWebView.cpp:
3286 (webkit_web_view_get_snapshot):
3287 * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3288 (webkitWebViewBaseTouchEvent):
3289 (webkitWebViewBaseCreateWebPage):
3290 * UIProcess/API/gtk/WebKitWebsiteDataManager.cpp:
3291 (webkitWebsiteDataManagerCreate):
3292 (webkitWebsiteDataManagerGetDataStore):
3293 * UIProcess/API/mac/WKView.mm:
3294 (-[WKView initWithFrame:processPool:configuration:webView:]):
3295 (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
3296 (-[WKView initWithFrame:configurationRef:]):
3297 * UIProcess/Cocoa/NavigationState.mm:
3298 (WebKit::tryAppLink):
3299 (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationAction):
3300 (WebKit::NavigationState::NavigationClient::decidePolicyForNavigationResponse):
3301 * UIProcess/Cocoa/WebViewImpl.mm:
3302 (WebKit::WebViewImpl::WebViewImpl):
3303 (WebKit::WebViewImpl::takeViewSnapshot):
3304 * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
3305 (WebKit::CoordinatedLayerTreeHostProxy::dispatchUpdate):
3306 * UIProcess/Databases/DatabaseProcessProxy.cpp:
3307 (WebKit::DatabaseProcessProxy::fetchWebsiteData):
3308 (WebKit::DatabaseProcessProxy::deleteWebsiteData):
3309 (WebKit::DatabaseProcessProxy::deleteWebsiteDataForOrigins):
3310 * UIProcess/GenericCallback.h:
3311 (WebKit::CallbackMap::put):
3312 * UIProcess/InspectorServer/WebSocketServer.cpp:
3313 (WebKit::WebSocketServer::didAcceptConnection):
3314 * UIProcess/InspectorServer/soup/WebSocketServerSoup.cpp:
3315 (WebKit::connectionCallback):
3316 * UIProcess/Network/NetworkProcessProxy.cpp:
3317 (WebKit::NetworkProcessProxy::fetchWebsiteData):
3318 * UIProcess/Notifications/WebNotificationManagerProxy.cpp:
3319 (WebKit::WebNotificationManagerProxy::providerDidCloseNotifications):
3320 * UIProcess/Notifications/WebNotificationProvider.cpp:
3321 (WebKit::WebNotificationProvider::clearNotifications):
3322 * UIProcess/PageLoadState.cpp:
3323 (WebKit::PageLoadState::Transaction::Transaction):
3324 * UIProcess/Plugins/PlugInAutoStartProvider.cpp:
3325 (WebKit::PlugInAutoStartProvider::autoStartOriginsTableCopy):
3326 * UIProcess/Plugins/PluginProcessManager.cpp:
3327 (WebKit::PluginProcessManager::pluginProcessToken):
3328 (WebKit::PluginProcessManager::fetchWebsiteData):
3329 (WebKit::PluginProcessManager::deleteWebsiteData):
3330 (WebKit::PluginProcessManager::deleteWebsiteDataForHostNames):
3331 * UIProcess/Plugins/PluginProcessProxy.cpp:
3332 (WebKit::PluginProcessProxy::fetchWebsiteData):
3333 (WebKit::PluginProcessProxy::deleteWebsiteData):
3334 (WebKit::PluginProcessProxy::deleteWebsiteDataForHostNames):
3335 * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
3336 (WebKit::RemoteScrollingCoordinatorProxy::updateScrollingTree):
3337 * UIProcess/StatisticsRequest.cpp:
3338 (WebKit::StatisticsRequest::completedRequest):
3339 * UIProcess/Storage/LocalStorageDatabase.cpp:
3340 (WebKit::LocalStorageDatabase::create):
3341 (WebKit::LocalStorageDatabase::LocalStorageDatabase):
3342 * UIProcess/Storage/StorageManager.cpp:
3343 (WebKit::StorageManager::TransientLocalStorageNamespace::getOrCreateStorageArea):
3344 (WebKit::StorageManager::StorageArea::create):
3345 (WebKit::StorageManager::StorageArea::StorageArea):
3346 (WebKit::StorageManager::LocalStorageNamespace::getOrCreateStorageArea):
3347 (WebKit::StorageManager::SessionStorageNamespace::getOrCreateStorageArea):
3348 (WebKit::StorageManager::getSessionStorageOrigins):
3349 (WebKit::StorageManager::getLocalStorageOrigins):
3350 (WebKit::StorageManager::getLocalStorageOriginDetails):
3351 (WebKit::StorageManager::createTransientLocalStorageMap):
3352 (WebKit::StorageManager::createSessionStorageMap):
3353 * UIProcess/UserContent/WebScriptMessageHandler.cpp:
3354 (WebKit::WebScriptMessageHandler::create):
3355 (WebKit::WebScriptMessageHandler::WebScriptMessageHandler):
3356 * UIProcess/UserContent/WebUserContentControllerProxy.cpp:
3357 (WebKit::WebUserContentControllerProxy::addUserStyleSheet):
3358 * UIProcess/ViewGestureController.cpp:
3359 (WebKit::ViewGestureController::SnapshotRemovalTracker::start):
3360 (WebKit::ViewGestureController::SnapshotRemovalTracker::fireRemovalCallbackImmediately):
3361 * UIProcess/WebBackForwardList.cpp:
3362 (WebKit::WebBackForwardList::addItem):
3363 (WebKit::WebBackForwardList::backListAsAPIArrayWithLimit):
3364 (WebKit::WebBackForwardList::forwardListAsAPIArrayWithLimit):
3365 (WebKit::WebBackForwardList::removeAllItems):
3366 (WebKit::WebBackForwardList::clear):
3367 (WebKit::WebBackForwardList::restoreFromState):
3368 * UIProcess/WebCookieManagerProxy.cpp:
3369 (WebKit::WebCookieManagerProxy::getHostnamesWithCookies):
3370 (WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy):
3371 * UIProcess/WebFormClient.cpp:
3372 (WebKit::WebFormClient::willSubmitForm):
3373 * UIProcess/WebFrameListenerProxy.h:
3374 (WebKit::WebFrameListenerProxy::setNavigation):
3375 * UIProcess/WebFrameProxy.h:
3376 (WebKit::WebFrameProxy::contentFilterDidBlockLoad):
3377 * UIProcess/WebGrammarDetail.cpp:
3378 (WebKit::WebGrammarDetail::guesses):
3379 * UIProcess/WebInspectorProxy.cpp:
3380 (WebKit::WebInspectorProxy::createInspectorPage):
3381 * UIProcess/WebMediaCacheManagerProxy.cpp:
3382 (WebKit::WebMediaCacheManagerProxy::getHostnamesWithMediaCache):
3383 * UIProcess/WebPageProxy.cpp:
3384 (WebKit::ExceededDatabaseQuotaRecords::add):
3385 (WebKit::WebPageProxy::create):
3386 (WebKit::WebPageProxy::WebPageProxy):
3387 (WebKit::WebPageProxy::setHistoryClient):
3388 (WebKit::WebPageProxy::setNavigationClient):
3389 (WebKit::WebPageProxy::setLoaderClient):
3390 (WebKit::WebPageProxy::setPolicyClient):
3391 (WebKit::WebPageProxy::setFormClient):
3392 (WebKit::WebPageProxy::setUIClient):
3393 (WebKit::WebPageProxy::setFindClient):
3394 (WebKit::WebPageProxy::setFindMatchesClient):
3395 (WebKit::WebPageProxy::setDiagnosticLoggingClient):
3396 (WebKit::WebPageProxy::setContextMenuClient):
3397 (WebKit::WebPageProxy::reattachToWebProcessForReload):
3398 (WebKit::WebPageProxy::reattachToWebProcessWithItem):
3399 (WebKit::WebPageProxy::loadRequest):
3400 (WebKit::WebPageProxy::loadFile):
3401 (WebKit::WebPageProxy::loadData):
3402 (WebKit::WebPageProxy::loadHTMLString):
3403 (WebKit::WebPageProxy::reload):
3404 (WebKit::WebPageProxy::didChangeBackForwardList):
3405 (WebKit::WebPageProxy::setInitialFocus):
3406 (WebKit::WebPageProxy::validateCommand):
3407 (WebKit::WebPageProxy::handleWheelEvent):
3408 (WebKit::WebPageProxy::processNextQueuedWheelEvent):
3409 (WebKit::WebPageProxy::restoreFromSessionState):
3410 (WebKit::WebPageProxy::runJavaScriptInMainFrame):
3411 (WebKit::WebPageProxy::getRenderTreeExternalRepresentation):
3412 (WebKit::WebPageProxy::getSourceForFrame):
3413 (WebKit::WebPageProxy::getContentsAsString):
3414 (WebKit::WebPageProxy::getBytecodeProfile):
3415 (WebKit::WebPageProxy::getContentsAsMHTMLData):
3416 (WebKit::WebPageProxy::getSelectionOrContentsAsString):
3417 (WebKit::WebPageProxy::getSelectionAsWebArchiveData):
3418 (WebKit::WebPageProxy::getMainResourceDataOfFrame):
3419 (WebKit::WebPageProxy::getResourceDataFromFrame):
3420 (WebKit::WebPageProxy::getWebArchiveOfFrame):
3421 (WebKit::WebPageProxy::decidePolicyForNavigationAction):
3422 (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
3423 (WebKit::WebPageProxy::decidePolicyForResponse):
3424 (WebKit::WebPageProxy::sendMessage):
3425 (WebKit::WebPageProxy::exceededDatabaseQuota):
3426 (WebKit::WebPageProxy::getMarkedRangeAsync):
3427 (WebKit::WebPageProxy::getSelectedRangeAsync):
3428 (WebKit::WebPageProxy::characterIndexForPointAsync):
3429 (WebKit::WebPageProxy::firstRectForCharacterRangeAsync):
3430 (WebKit::WebPageProxy::takeSnapshot):
3431 * UIProcess/WebProcessPool.cpp:
3432 (WebKit::WebProcessPool::setHistoryClient):
3433 (WebKit::WebProcessPool::setDownloadClient):
3434 (WebKit::WebProcessPool::createWebPage):
3435 (WebKit::WebProcessPool::getStatistics):