Title: [261403] branches/safari-610.1.12-branch/Source/WebKit
Revision
261403
Author
[email protected]
Date
2020-05-08 12:45:45 -0700 (Fri, 08 May 2020)

Log Message

Revert r260787. rdar://problem/63032130

Modified Paths

Diff

Modified: branches/safari-610.1.12-branch/Source/WebKit/ChangeLog (261402 => 261403)


--- branches/safari-610.1.12-branch/Source/WebKit/ChangeLog	2020-05-08 19:39:43 UTC (rev 261402)
+++ branches/safari-610.1.12-branch/Source/WebKit/ChangeLog	2020-05-08 19:45:45 UTC (rev 261403)
@@ -1,3 +1,7 @@
+2020-05-08  Alan Coon  <[email protected]>
+
+        Revert r260787. rdar://problem/63032130
+
 2020-05-07  Alan Coon  <[email protected]>
 
         Revert r260390. rdar://problem/62998314

Modified: branches/safari-610.1.12-branch/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm (261402 => 261403)


--- branches/safari-610.1.12-branch/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm	2020-05-08 19:39:43 UTC (rev 261402)
+++ branches/safari-610.1.12-branch/Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm	2020-05-08 19:45:45 UTC (rev 261403)
@@ -124,6 +124,7 @@
 #import <WebCore/PlatformScreen.h>
 #import <WebCore/RuntimeApplicationChecks.h>
 #import <WebCore/RuntimeEnabledFeatures.h>
+#import <WebCore/SQLiteDatabaseTracker.h>
 #import <WebCore/Settings.h>
 #import <WebCore/SharedBuffer.h>
 #import <WebCore/StringUtilities.h>
@@ -159,6 +160,8 @@
 #import "WKWebViewContentProviderRegistry.h"
 #import <MobileCoreServices/MobileCoreServices.h>
 #import <UIKit/UIApplication.h>
+#import <WebCore/WebBackgroundTaskController.h>
+#import <WebCore/WebSQLiteDatabaseTrackerClient.h>
 #import <pal/spi/cocoa/QuartzCoreSPI.h>
 #import <pal/spi/ios/GraphicsServicesSPI.h>
 #import <wtf/cocoa/Entitlements.h>
@@ -399,6 +402,8 @@
     _resourceLoadDelegate = makeUnique<WebKit::ResourceLoadDelegate>(self);
     _inspectorDelegate = makeUnique<WebKit::InspectorDelegate>(self);
 
+    [self _setUpSQLiteDatabaseTrackerClient];
+
     for (auto& pair : pageConfiguration->urlSchemeHandlers())
         _page->setURLSchemeHandlerForScheme(WebKit::WebURLSchemeHandlerCocoa::create(static_cast<WebKit::WebURLSchemeHandlerCocoa&>(pair.value.get()).apiHandler()), pair.key);
 
@@ -530,6 +535,27 @@
         pageConfiguration->preferences()->setNeedsSiteSpecificQuirks(false);
 }
 
+- (void)_setUpSQLiteDatabaseTrackerClient
+{
+#if PLATFORM(IOS_FAMILY)
+    WebBackgroundTaskController *controller = [WebBackgroundTaskController sharedController];
+    if (controller.backgroundTaskStartBlock)
+        return;
+
+    controller.backgroundTaskStartBlock = ^NSUInteger (void (^expirationHandler)())
+    {
+        return [[UIApplication sharedApplication] beginBackgroundTaskWithName:@"com.apple.WebKit.DatabaseActivity" expirationHandler:expirationHandler];
+    };
+    controller.backgroundTaskEndBlock = ^(UIBackgroundTaskIdentifier taskIdentifier)
+    {
+        [[UIApplication sharedApplication] endBackgroundTask:taskIdentifier];
+    };
+    controller.invalidBackgroundTaskIdentifier = UIBackgroundTaskInvalid;
+
+    WebCore::SQLiteDatabaseTracker::setClient(&WebCore::WebSQLiteDatabaseTrackerClient::sharedWebSQLiteDatabaseTrackerClient());
+#endif
+}
+
 - (instancetype)initWithFrame:(CGRect)frame configuration:(WKWebViewConfiguration *)configuration
 {
     if (!(self = [super initWithFrame:frame]))
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to