diff options
author | Jan-Michael Brummer <jan.brummer@tabos.org> | 2020-07-27 18:53:18 +0200 |
---|---|---|
committer | Michael Catanzaro <mcatanzaro@gnome.org> | 2020-07-27 17:00:56 +0000 |
commit | 83fe0fff81612d5d546d7a0d75f2d3503f7c3144 (patch) | |
tree | 08984d47bba9413a1e100998c28a2abb8cb13152 /lib | |
parent | 0f507813ad953ef6f22a239a9e4af1dc16048c6e (diff) | |
download | epiphany-83fe0fff81612d5d546d7a0d75f2d3503f7c3144.tar.gz |
Support permission requests for webcam and mic
Currently we are only asking for either webcam or mic permission, but for
video chats it is requesting permission for both. Take care of those
cases.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/ephy-permissions-manager.c | 8 | ||||
-rw-r--r-- | lib/ephy-permissions-manager.h | 1 |
2 files changed, 8 insertions, 1 deletions
diff --git a/lib/ephy-permissions-manager.c b/lib/ephy-permissions-manager.c index 4079c759e..d7c8be82e 100644 --- a/lib/ephy-permissions-manager.c +++ b/lib/ephy-permissions-manager.c @@ -179,7 +179,11 @@ ephy_permissions_manager_get_permission (EphyPermissionsManager *manager, EphyPermissionType type, const char *origin) { - GSettings *settings = ephy_permissions_manager_get_settings_for_origin (manager, origin); + GSettings *settings; + + g_assert (type != EPHY_PERMISSION_TYPE_ACCESS_WEBCAM_AND_MICROPHONE); + + settings = ephy_permissions_manager_get_settings_for_origin (manager, origin); return g_settings_get_enum (settings, permission_type_to_string (type)); } @@ -247,6 +251,8 @@ ephy_permissions_manager_set_permission (EphyPermissionsManager *manager, WebKitSecurityOrigin *webkit_origin; GSettings *settings; + g_assert (type != EPHY_PERMISSION_TYPE_ACCESS_WEBCAM_AND_MICROPHONE); + webkit_origin = webkit_security_origin_new_for_uri (origin); if (webkit_origin == NULL) return; diff --git a/lib/ephy-permissions-manager.h b/lib/ephy-permissions-manager.h index aab47c17c..386d0b64f 100644 --- a/lib/ephy-permissions-manager.h +++ b/lib/ephy-permissions-manager.h @@ -44,6 +44,7 @@ typedef enum { EPHY_PERMISSION_TYPE_ACCESS_WEBCAM, EPHY_PERMISSION_TYPE_SHOW_ADS, EPHY_PERMISSION_TYPE_AUTOPLAY_POLICY, + EPHY_PERMISSION_TYPE_ACCESS_WEBCAM_AND_MICROPHONE, } EphyPermissionType; EphyPermissionsManager *ephy_permissions_manager_new (void); |