diff options
Diffstat (limited to 'src/core/quota_permission_controller.h')
-rw-r--r-- | src/core/quota_permission_controller.h | 39 |
1 files changed, 28 insertions, 11 deletions
diff --git a/src/core/quota_permission_controller.h b/src/core/quota_permission_controller.h index e584d7b52..cdd5e226a 100644 --- a/src/core/quota_permission_controller.h +++ b/src/core/quota_permission_controller.h @@ -41,28 +41,45 @@ #define QUOTA_PERMISSION_CONTROLLER_H #include "qtwebenginecoreglobal.h" -#include <QtCore/qscopedpointer.h> #include <QtCore/qurl.h> namespace QtWebEngineCore { -class QuotaPermissionContextQt; -class QuotaPermissionControllerPrivate; - class QWEBENGINE_EXPORT QuotaPermissionController { public: - QuotaPermissionController(QuotaPermissionControllerPrivate *controllerPrivate); - ~QuotaPermissionController(); + QuotaPermissionController(QUrl origin, qint64 requestedSize) + : m_answered(false) + , m_origin(std::move(origin)) + , m_requestedSize(requestedSize) + {} + + QUrl origin() const { return m_origin; } + qint64 requestedSize() const { return m_requestedSize; } + + void accept() { + if (!m_answered) { + m_answered = true; + accepted(); + } + } + + void reject() { + if (!m_answered) { + m_answered = true; + rejected(); + } + } - void accept(); - void reject(); + virtual ~QuotaPermissionController() {} - QUrl origin(); - qint64 requestedSize(); +protected: + virtual void accepted() = 0; + virtual void rejected() = 0; private: - QScopedPointer<QuotaPermissionControllerPrivate> d; bool m_answered; + QUrl m_origin; + qint64 m_requestedSize; }; } // namespace QtWebEngineCore |