Modified: releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/WebKitUIClient.cpp (186442 => 186443)
--- releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/WebKitUIClient.cpp 2015-07-07 11:07:44 UTC (rev 186442)
+++ releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/API/gtk/WebKitUIClient.cpp 2015-07-07 11:09:56 UTC (rev 186443)
@@ -146,6 +146,13 @@
return WebCore::FloatRect(geometry);
}
+ virtual void exceededDatabaseQuota(WebPageProxy*, WebFrameProxy*, API::SecurityOrigin*, const String&, const String&, unsigned long long /*currentQuota*/, unsigned long long /*currentOriginUsage*/, unsigned long long /*currentDatabaseUsage*/, unsigned long long /*expectedUsage*/, std::function<void (unsigned long long)> completionHandler) override
+ {
+ static const unsigned long long defaultQuota = 5 * 1024 * 1204; // 5 MB
+ // FIXME: Provide API for this.
+ completionHandler(defaultQuota);
+ }
+
virtual bool runOpenPanel(WebPageProxy*, WebFrameProxy*, WebOpenPanelParameters* parameters, WebOpenPanelResultListenerProxy* listener) override
{
GRefPtr<WebKitFileChooserRequest> request = adoptGRef(webkitFileChooserRequestCreate(parameters, listener));
Modified: releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/gtk/WebInspectorProxyGtk.cpp (186442 => 186443)
--- releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/gtk/WebInspectorProxyGtk.cpp 2015-07-07 11:07:44 UTC (rev 186442)
+++ releases/WebKitGTK/webkit-2.8/Source/WebKit2/UIProcess/gtk/WebInspectorProxyGtk.cpp 2015-07-07 11:09:56 UTC (rev 186443)
@@ -52,6 +52,11 @@
inspectorProxy->close();
}
+static unsigned long long exceededDatabaseQuota(WKPageRef, WKFrameRef, WKSecurityOriginRef, WKStringRef, WKStringRef, unsigned long long, unsigned long long, unsigned long long currentDatabaseUsage, unsigned long long expectedUsage, const void*)
+{
+ return std::max<unsigned long long>(expectedUsage, currentDatabaseUsage * 1.25);
+}
+
void WebInspectorProxy::initializeInspectorClientGtk(const WKInspectorClientGtkBase* inspectorClient)
{
m_client.initialize(inspectorClient);
@@ -76,7 +81,61 @@
m_inspectorView = GTK_WIDGET(webkitWebViewBaseCreate(&inspectorProcessPool(), preferences.get(), pageGroup.get(), nullptr, nullptr));
g_object_add_weak_pointer(G_OBJECT(m_inspectorView), reinterpret_cast<void**>(&m_inspectorView));
- return webkitWebViewBaseGetPage(WEBKIT_WEB_VIEW_BASE(m_inspectorView));
+ WKPageUIClientV2 uiClient = {
+ { 2, this },
+ nullptr, // createNewPage_deprecatedForUseWithV0
+ nullptr, // showPage
+ nullptr, // closePage
+ nullptr, // takeFocus
+ nullptr, // focus
+ nullptr, // unfocus
+ nullptr, // runJavaScriptAlert
+ nullptr, // runJavaScriptConfirm
+ nullptr, // runJavaScriptPrompt
+ nullptr, // setStatusText
+ nullptr, // mouseDidMoveOverElement_deprecatedForUseWithV0
+ nullptr, // missingPluginButtonClicked_deprecatedForUseWithV0
+ nullptr, // didNotHandleKeyEvent
+ nullptr, // didNotHandleWheelEvent
+ nullptr, // areToolbarsVisible
+ nullptr, // setToolbarsVisible
+ nullptr, // isMenuBarVisible
+ nullptr, // setMenuBarVisible
+ nullptr, // isStatusBarVisible
+ nullptr, // setStatusBarVisible
+ nullptr, // isResizable
+ nullptr, // setResizable
+ nullptr, // getWindowFrame,
+ nullptr, // setWindowFrame,
+ nullptr, // runBeforeUnloadConfirmPanel
+ nullptr, // didDraw
+ nullptr, // pageDidScroll
+ exceededDatabaseQuota,
+ nullptr, // runOpenPanel,
+ nullptr, // decidePolicyForGeolocationPermissionRequest
+ nullptr, // headerHeight
+ nullptr, // footerHeight
+ nullptr, // drawHeader
+ nullptr, // drawFooter
+ nullptr, // printFrame
+ nullptr, // runModal
+ nullptr, // unused
+ nullptr, // saveDataToFileInDownloadsFolder
+ nullptr, // shouldInterruptJavaScript
+ nullptr, // createPage
+ nullptr, // mouseDidMoveOverElement
+ nullptr, // decidePolicyForNotificationPermissionRequest
+ nullptr, // unavailablePluginButtonClicked_deprecatedForUseWithV1
+ nullptr, // showColorPicker
+ nullptr, // hideColorPicker
+ nullptr, // unavailablePluginButtonClicked
+ };
+
+ WebPageProxy* inspectorPage = webkitWebViewBaseGetPage(WEBKIT_WEB_VIEW_BASE(m_inspectorView));
+ ASSERT(inspectorPage);
+ WKPageSetPageUIClient(toAPI(inspectorPage), &uiClient.base);
+
+ return inspectorPage;
}
void WebInspectorProxy::dockButtonClicked(GtkWidget* button, WebInspectorProxy* inspector)