From 674662d37844d6c77388053168e7f7b8432e6f59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BCri=20Valdmann?= Date: Fri, 2 Mar 2018 11:06:54 +0100 Subject: Use wrappers in QtWebEngineCore public interface Stop exporting quota / RegisterProtocolHandler request controller classes, and use the public wrapper classes in WebContentsAdapterClient instead. Change-Id: Iaa380b6ceb4f9464fc05dd012ee5df219f11f189 Reviewed-by: Kai Koehne --- src/core/quota_permission_context_qt.cpp | 6 ++++-- src/core/quota_request_controller.h | 2 +- src/core/register_protocol_handler_request_controller.h | 2 +- src/core/request_controller.h | 2 +- src/core/web_contents_adapter_client.h | 10 +++++----- src/core/web_contents_delegate_qt.cpp | 9 +++++---- src/webengine/api/qquickwebengineview.cpp | 6 ++---- src/webengine/api/qquickwebengineview_p_p.h | 4 ++-- src/webenginewidgets/api/qwebenginepage.cpp | 6 ++---- src/webenginewidgets/api/qwebenginepage_p.h | 4 ++-- 10 files changed, 25 insertions(+), 26 deletions(-) diff --git a/src/core/quota_permission_context_qt.cpp b/src/core/quota_permission_context_qt.cpp index 4e9293447..f00b2008a 100644 --- a/src/core/quota_permission_context_qt.cpp +++ b/src/core/quota_permission_context_qt.cpp @@ -43,6 +43,7 @@ #include "content/public/browser/render_frame_host.h" #include "content/public/browser/web_contents.h" #include "quota_request_controller_impl.h" +#include "qwebenginequotarequest.h" #include "web_contents_delegate_qt.h" #include "web_contents_view_qt.h" @@ -82,8 +83,9 @@ void QuotaPermissionContextQt::RequestQuotaPermission(const StorageQuotaParams & if (!client) return; - QSharedPointer request(new QuotaRequestControllerImpl(this, params, callback)); - client->runQuotaRequest(request); + QWebEngineQuotaRequest request( + QSharedPointer::create(this, params, callback)); + client->runQuotaRequest(std::move(request)); } void QuotaPermissionContextQt::dispatchCallbackOnIOThread(const PermissionCallback &callback, diff --git a/src/core/quota_request_controller.h b/src/core/quota_request_controller.h index f5c7a3f04..0bb0cbff3 100644 --- a/src/core/quota_request_controller.h +++ b/src/core/quota_request_controller.h @@ -44,7 +44,7 @@ namespace QtWebEngineCore { -class QWEBENGINE_EXPORT QuotaRequestController : public RequestController { +class QuotaRequestController : public RequestController { public: QuotaRequestController(QUrl origin, qint64 requestedSize) : RequestController(std::move(origin)) diff --git a/src/core/register_protocol_handler_request_controller.h b/src/core/register_protocol_handler_request_controller.h index be60619f5..2f9c9fc49 100644 --- a/src/core/register_protocol_handler_request_controller.h +++ b/src/core/register_protocol_handler_request_controller.h @@ -44,7 +44,7 @@ namespace QtWebEngineCore { -class QWEBENGINE_EXPORT RegisterProtocolHandlerRequestController : public RequestController { +class RegisterProtocolHandlerRequestController : public RequestController { public: RegisterProtocolHandlerRequestController(QUrl origin, QString scheme) : RequestController(std::move(origin)) diff --git a/src/core/request_controller.h b/src/core/request_controller.h index 83827a888..5bd621282 100644 --- a/src/core/request_controller.h +++ b/src/core/request_controller.h @@ -45,7 +45,7 @@ namespace QtWebEngineCore { -class QWEBENGINE_EXPORT RequestController { +class RequestController { public: RequestController(QUrl origin) : m_answered(false) diff --git a/src/core/web_contents_adapter_client.h b/src/core/web_contents_adapter_client.h index ad9c240e2..4c5133772 100644 --- a/src/core/web_contents_adapter_client.h +++ b/src/core/web_contents_adapter_client.h @@ -49,9 +49,11 @@ #include #include +QT_FORWARD_DECLARE_CLASS(CertificateErrorController) QT_FORWARD_DECLARE_CLASS(QKeyEvent) QT_FORWARD_DECLARE_CLASS(QVariant) -QT_FORWARD_DECLARE_CLASS(CertificateErrorController) +QT_FORWARD_DECLARE_CLASS(QWebEngineQuotaRequest) +QT_FORWARD_DECLARE_CLASS(QWebEngineRegisterProtocolHandlerRequest) namespace content { struct DropData; @@ -64,8 +66,6 @@ class BrowserContextAdapter; class ColorChooserController; class FilePickerController; class JavaScriptDialogController; -class QuotaRequestController; -class RegisterProtocolHandlerRequestController; class RenderWidgetHostViewQt; class RenderWidgetHostViewQtDelegate; class RenderWidgetHostViewQtDelegateClient; @@ -438,8 +438,8 @@ public: virtual void runGeolocationPermissionRequest(const QUrl &securityOrigin) = 0; virtual void runMediaAccessPermissionRequest(const QUrl &securityOrigin, MediaRequestFlags requestFlags) = 0; virtual void runMouseLockPermissionRequest(const QUrl &securityOrigin) = 0; - virtual void runQuotaRequest(QSharedPointer) = 0; - virtual void runRegisterProtocolHandlerRequest(QSharedPointer) = 0; + virtual void runQuotaRequest(QWebEngineQuotaRequest) = 0; + virtual void runRegisterProtocolHandlerRequest(QWebEngineRegisterProtocolHandlerRequest) = 0; virtual WebEngineSettings *webEngineSettings() const = 0; RenderProcessTerminationStatus renderProcessExitStatus(int); virtual void renderProcessTerminated(RenderProcessTerminationStatus terminationStatus, int exitCode) = 0; diff --git a/src/core/web_contents_delegate_qt.cpp b/src/core/web_contents_delegate_qt.cpp index ab398ec44..40fc0934d 100644 --- a/src/core/web_contents_delegate_qt.cpp +++ b/src/core/web_contents_delegate_qt.cpp @@ -51,6 +51,8 @@ #include "file_picker_controller.h" #include "media_capture_devices_dispatcher.h" #include "net/network_delegate_qt.h" +#include "qwebengineregisterprotocolhandlerrequest.h" +#include "register_protocol_handler_request_controller_impl.h" #include "render_widget_host_view_qt.h" #include "type_conversion.h" #include "visited_links_manager_qt.h" @@ -58,7 +60,6 @@ #include "web_contents_adapter_p.h" #include "web_engine_context.h" #include "web_engine_settings.h" -#include "register_protocol_handler_request_controller_impl.h" #include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h" #include "components/web_cache/browser/web_cache_manager.h" @@ -638,9 +639,9 @@ void WebContentsDelegateQt::RegisterProtocolHandler(content::WebContents *webCon if (registry->SilentlyHandleRegisterHandlerRequest(handler)) return; - QSharedPointer controller( - new RegisterProtocolHandlerRequestControllerImpl(webContents, handler)); - m_viewClient->runRegisterProtocolHandlerRequest(std::move(controller)); + QWebEngineRegisterProtocolHandlerRequest request( + QSharedPointer::create(webContents, handler)); + m_viewClient->runRegisterProtocolHandlerRequest(std::move(request)); } void WebContentsDelegateQt::UnregisterProtocolHandler(content::WebContents *webContents, const std::string &protocol, const GURL &url, bool) diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp index eeb3157a2..8d5a30016 100644 --- a/src/webengine/api/qquickwebengineview.cpp +++ b/src/webengine/api/qquickwebengineview.cpp @@ -590,17 +590,15 @@ void QQuickWebEngineViewPrivate::runMouseLockPermissionRequest(const QUrl &secur adapter->grantMouseLockPermission(false); } -void QQuickWebEngineViewPrivate::runQuotaRequest(QSharedPointer controller) +void QQuickWebEngineViewPrivate::runQuotaRequest(QWebEngineQuotaRequest request) { Q_Q(QQuickWebEngineView); - QWebEngineQuotaRequest request(std::move(controller)); Q_EMIT q->quotaRequested(request); } -void QQuickWebEngineViewPrivate::runRegisterProtocolHandlerRequest(QSharedPointer controller) +void QQuickWebEngineViewPrivate::runRegisterProtocolHandlerRequest(QWebEngineRegisterProtocolHandlerRequest request) { Q_Q(QQuickWebEngineView); - QWebEngineRegisterProtocolHandlerRequest request(std::move(controller)); Q_EMIT q->registerProtocolHandlerRequested(request); } diff --git a/src/webengine/api/qquickwebengineview_p_p.h b/src/webengine/api/qquickwebengineview_p_p.h index 1af46f917..73607aa59 100644 --- a/src/webengine/api/qquickwebengineview_p_p.h +++ b/src/webengine/api/qquickwebengineview_p_p.h @@ -132,8 +132,8 @@ public: void authenticationRequired(QSharedPointer) override; void runMediaAccessPermissionRequest(const QUrl &securityOrigin, MediaRequestFlags requestFlags) override; void runMouseLockPermissionRequest(const QUrl &securityOrigin) override; - void runQuotaRequest(QSharedPointer) override; - void runRegisterProtocolHandlerRequest(QSharedPointer) override; + void runQuotaRequest(QWebEngineQuotaRequest) override; + void runRegisterProtocolHandlerRequest(QWebEngineRegisterProtocolHandlerRequest) override; QObject *accessibilityParentObject() override; QtWebEngineCore::WebEngineSettings *webEngineSettings() const override; void allowCertificateError(const QSharedPointer &errorController) override; diff --git a/src/webenginewidgets/api/qwebenginepage.cpp b/src/webenginewidgets/api/qwebenginepage.cpp index 5f0238dc0..a8a860f16 100644 --- a/src/webenginewidgets/api/qwebenginepage.cpp +++ b/src/webenginewidgets/api/qwebenginepage.cpp @@ -588,17 +588,15 @@ void QWebEnginePagePrivate::runMouseLockPermissionRequest(const QUrl &securityOr Q_EMIT q->featurePermissionRequested(securityOrigin, QWebEnginePage::MouseLock); } -void QWebEnginePagePrivate::runQuotaRequest(QSharedPointer controller) +void QWebEnginePagePrivate::runQuotaRequest(QWebEngineQuotaRequest request) { Q_Q(QWebEnginePage); - QWebEngineQuotaRequest request(controller); Q_EMIT q->quotaRequested(request); } -void QWebEnginePagePrivate::runRegisterProtocolHandlerRequest(QSharedPointer controller) +void QWebEnginePagePrivate::runRegisterProtocolHandlerRequest(QWebEngineRegisterProtocolHandlerRequest request) { Q_Q(QWebEnginePage); - QWebEngineRegisterProtocolHandlerRequest request(std::move(controller)); Q_EMIT q->registerProtocolHandlerRequested(request); } diff --git a/src/webenginewidgets/api/qwebenginepage_p.h b/src/webenginewidgets/api/qwebenginepage_p.h index fcd7a2039..dc7d02b73 100644 --- a/src/webenginewidgets/api/qwebenginepage_p.h +++ b/src/webenginewidgets/api/qwebenginepage_p.h @@ -131,8 +131,8 @@ public: void runMediaAccessPermissionRequest(const QUrl &securityOrigin, MediaRequestFlags requestFlags) override; void runGeolocationPermissionRequest(const QUrl &securityOrigin) override; void runMouseLockPermissionRequest(const QUrl &securityOrigin) override; - void runQuotaRequest(QSharedPointer) override; - void runRegisterProtocolHandlerRequest(QSharedPointer) override; + void runQuotaRequest(QWebEngineQuotaRequest) override; + void runRegisterProtocolHandlerRequest(QWebEngineRegisterProtocolHandlerRequest) override; QObject *accessibilityParentObject() override; QtWebEngineCore::WebEngineSettings *webEngineSettings() const override; void allowCertificateError(const QSharedPointer &controller) override; -- cgit v1.2.3