blob: c03dc1efaf6b81460c9d0f338f66a485e29d190e (
plain) (
tree)
|
|
<!-- ##### SECTION Title ##### -->
EphyPermissionManager
<!-- ##### SECTION Short_Description ##### -->
Sets webpages' cookie, image and popup permissions.
<!-- ##### SECTION Long_Description ##### -->
<para>
The #EphyPermissionManager keeps a list of websites and their permissions. For
example, the user may want a certain website to display images but block
cookies and popup windows; this could correspond to three entries in the
#EphyPermissionManager.
</para>
<para>
Use ephy_permission_manager_add() to set permissions for a website,
ephy_permission_manager_remove() to remove the permissions, and
ephy_permission_manager_test() to test them. Note that
ephy_permission_manager_test() may return %EPHY_PERMISSION_DEFAULT, which
means the caller might need to find the default permission some other way.
</para>
<para>
The #EphyPermissionManager stores a list of site-specific permissions, but not
defaults. For popups, the default permission is determined by the GConf key
/apps/epiphany/web/allow_popups, which in turn determines Mozilla's
dom.disable_open_during_load preference. For cookies, the GConf key
/apps/epiphany/web/cookie_accept determines Mozilla's
network.cookie.cookieBehavior preference. For images, the default is determined
by Mozilla's network.image.imageBehavior preference.
</para>
<para>
The predefined permission types are EPT_COOKIE ("cookie"), EPT_IMAGE ("image")
and EPT_POPUP ("popup"). You can also make up your own type string.
</para>
<para>
Though the word "host" is used in many function descriptions, Mozilla
does not act as one would expect. Always pass a URL to any functions which
need have a "host" parameter. However, the "host" in an
#EphyPermissionInfo is a simple DNS hostname.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
<!-- ##### STRUCT EphyPermissionInfo ##### -->
<para>
Details a specific permission of a specific website.
</para>
@host: The hostname of the website to which this permission applies.
@qtype:
@permission: An #EphyPermission (either allow or deny).
<!-- ##### ENUM EphyPermission ##### -->
<para>
Determines whether the website is allowed or denied access.
</para>
@EPHY_PERMISSION_ALLOWED:
The website is unconditionally allowed to perform the desired action.
@EPHY_PERMISSION_DENIED:
The website is unconditionally denied to perform the desired action.
@EPHY_PERMISSION_DEFAULT:
The user has not set a preference for this particular website; the
caller should therefore fall back to default settings.
<!-- ##### FUNCTION ephy_permission_info_free ##### -->
<para>
</para>
@info:
<!-- ##### FUNCTION ephy_permission_manager_add ##### -->
<para>
</para>
@manager:
@host:
@type:
@permission:
<!-- ##### FUNCTION ephy_permission_manager_remove ##### -->
<para>
</para>
@manager:
@host:
@type:
<!-- ##### FUNCTION ephy_permission_manager_clear ##### -->
<para>
</para>
@manager:
<!-- ##### FUNCTION ephy_permission_manager_test ##### -->
<para>
</para>
@manager:
@host:
@type:
@Returns:
<!-- ##### FUNCTION ephy_permission_manager_list ##### -->
<para>
</para>
@manager:
@type:
@Returns:
|