blob: c9c006c230b486ce88b8452b81c21895fc49bec2 [file] [log] [blame]
Jinho Bang22de3a92018-02-27 18:16:221// Copyright 2018 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_PAYMENTS_PAYMENT_HANDLER_PERMISSION_CONTEXT_H_
6#define CHROME_BROWSER_PAYMENTS_PAYMENT_HANDLER_PERMISSION_CONTEXT_H_
7
8#include "base/macros.h"
Clark DuValla11361ad32020-02-20 22:14:279#include "components/permissions/permission_context_base.h"
Jinho Bang22de3a92018-02-27 18:16:2210
Jinho Bangbad9b9292018-03-06 00:04:5711class GURL;
Jinho Bang22de3a92018-02-27 18:16:2212
Clark DuVall484c2562020-01-23 22:05:0913namespace permissions {
14class PermissionRequestID;
15}
16
Jinho Bangbad9b9292018-03-06 00:04:5717namespace content {
18class WebContents;
19} // namespace content
20
Jinho Bang22de3a92018-02-27 18:16:2221namespace payments {
22
Clark DuValla11361ad32020-02-20 22:14:2723class PaymentHandlerPermissionContext
24 : public permissions::PermissionContextBase {
Jinho Bang22de3a92018-02-27 18:16:2225 public:
Clark DuValla11361ad32020-02-20 22:14:2726 explicit PaymentHandlerPermissionContext(
27 content::BrowserContext* browser_context);
Jinho Bang22de3a92018-02-27 18:16:2228 ~PaymentHandlerPermissionContext() override;
29
30 private:
31 // PermissionContextBase
Clark DuValla11361ad32020-02-20 22:14:2732 void DecidePermission(
33 content::WebContents* web_contents,
34 const permissions::PermissionRequestID& id,
35 const GURL& requesting_origin,
36 const GURL& embedding_origin,
37 bool user_gesture,
38 permissions::BrowserPermissionCallback callback) override;
Jinho Bang22de3a92018-02-27 18:16:2239 bool IsRestrictedToSecureOrigins() const override;
40
41 DISALLOW_COPY_AND_ASSIGN(PaymentHandlerPermissionContext);
42};
43
44} // namespace payments
45
46#endif // CHROME_BROWSER_PAYMENTS_PAYMENT_HANDLER_PERMISSION_CONTEXT_H_