MōBrowser API
Loading...
Searching...
No Matches
permissions.hpp
1// Copyright (c) 2000-2024 TeamDev. All rights reserved.
2// TeamDev PROPRIETARY and CONFIDENTIAL.
3// Use is subject to license terms.
4
5#ifndef MOBROWSER_PERMISSIONS_HPP
6#define MOBROWSER_PERMISSIONS_HPP
7
8#include <memory>
9
10#include "mobrowser/permission/permissions_delegates.hpp"
11
12namespace mobrowser {
13
14class Profile;
15
19enum class PermissionType {
20 kUnspecified,
21 kNotifications,
22 kGeolocation,
23 kAudioCapture,
24 kVideoCapture,
28 kClipboardReadWrite,
29 kProtectedMediaIdentifier,
30 kMidi,
31 kMidiSysex,
32 kDurableStorage,
33 kBackgroundSync,
38 kSensors,
45 kAccessibilityEvents,
46 kClipboardSanitizedWrite,
51 kLocalFonts,
52 kWakeLockScreen,
53 kWakeLockSystem
54};
55
59enum class PermissionStatus { kGranted, kDenied, kAsk };
60
69 public:
73 virtual std::shared_ptr<Profile> profile() = 0;
74
78 virtual PermissionStatus getPermissionStatus(PermissionType permission_type,
79 const std::string& url) = 0;
80
84 virtual void resetPermission(PermissionType permission_type,
85 const std::string& url) = 0;
86};
87} // namespace mobrowser
88
89#endif // MOBROWSER_PERMISSIONS_HPP
A class that contains all permission delegates.
Definition permissions_delegates.hpp:71
Allows managing permissions for secure web pages.
Definition permissions.hpp:68
virtual void resetPermission(PermissionType permission_type, const std::string &url)=0
Sets the permission back to its default for the given URL.
virtual std::shared_ptr< Profile > profile()=0
The profile of this service.
virtual PermissionStatus getPermissionStatus(PermissionType permission_type, const std::string &url)=0
Returns the permission status for the given URL.