| Index: ppapi/api/private/ppp_flash_browser_operations.idl
|
| diff --git a/ppapi/api/private/ppp_flash_browser_operations.idl b/ppapi/api/private/ppp_flash_browser_operations.idl
|
| index f7dcd8cc2046e63b5c99712c6b3f1dc2b2e12005..f4b4e65b48ae90cdb05ee0cd3ad2f4d7c87fe17a 100644
|
| --- a/ppapi/api/private/ppp_flash_browser_operations.idl
|
| +++ b/ppapi/api/private/ppp_flash_browser_operations.idl
|
| @@ -8,9 +8,40 @@
|
| */
|
|
|
| label Chrome {
|
| - M20 = 1.0
|
| + M20 = 1.0,
|
| + M21 = 1.1
|
| };
|
|
|
| +[assert_size(4)]
|
| +enum PP_Flash_BrowserOperations_SettingType {
|
| + PP_FLASH_BROWSEROPERATIONS_SETTINGTYPE_CAMERAMIC = 0,
|
| + PP_FLASH_BROWSEROPERATIONS_SETTINGTYPE_PEERNETWORKING = 1
|
| +};
|
| +
|
| +[assert_size(4)]
|
| +enum PP_Flash_BrowserOperations_Permission {
|
| + // This value is only used with <code>SetSitePermission()</code>.
|
| + PP_FLASH_BROWSEROPERATIONS_PERMISSION_DEFAULT = 0,
|
| + PP_FLASH_BROWSEROPERATIONS_PERMISSION_ALLOW = 1,
|
| + PP_FLASH_BROWSEROPERATIONS_PERMISSION_BLOCK = 2,
|
| + PP_FLASH_BROWSEROPERATIONS_PERMISSION_ASK = 3
|
| +};
|
| +
|
| +[assert_size(24)]
|
| +struct PP_Flash_BrowserOperations_SiteSetting {
|
| + PP_Var site;
|
| + PP_Flash_BrowserOperations_Permission permission;
|
| + // Makes the size consistent across compilers.
|
| + int32_t padding;
|
| +};
|
| +
|
| +typedef void PPB_Flash_BrowserOperations_GetSettingsCallback(
|
| + [inout] mem_t user_data,
|
| + [in] PP_Bool success,
|
| + [in] PP_Flash_BrowserOperations_Permission default_permission,
|
| + [in] uint32_t site_count,
|
| + [in, size_is(site_count)] PP_Flash_BrowserOperations_SiteSetting[] sites);
|
| +
|
| /**
|
| * This interface allows the browser to request the plugin do things.
|
| */
|
| @@ -41,5 +72,76 @@ interface PPP_Flash_BrowserOperations {
|
| str_t site,
|
| uint64_t flags,
|
| uint64_t max_age);
|
| -};
|
|
|
| + /**
|
| + * Requests the plugin to deauthorize content licenses. It prevents Flash from
|
| + * playing protected content, such as movies and music the user may have
|
| + * rented or purchased.
|
| + *
|
| + * @param[in] plugin_data_path String containing the directory where the
|
| + * plugin settings are stored.
|
| + *
|
| + * @return <code>PP_TRUE</code> on success, <code>PP_FALSE</code> on failure.
|
| + */
|
| + [version=1.1]
|
| + PP_Bool DeauthorizeContentLicenses([in] str_t plugin_data_path);
|
| +
|
| + /**
|
| + * Gets permission settings. <code>callback</code> will be called exactly once
|
| + * to return the settings.
|
| + *
|
| + * @param[in] plugin_data_path String containing the directory where the
|
| + * plugin settings are stored.
|
| + * @param[in] setting_type What type of setting to retrieve.
|
| + * @param[in] callback The callback to return retrieved data.
|
| + * @param[inout] user_data An opaque pointer that will be passed to
|
| + * <code>callback</code>.
|
| + */
|
| + [version=1.1]
|
| + void GetPermissionSettings(
|
| + [in] str_t plugin_data_path,
|
| + [in] PP_Flash_BrowserOperations_SettingType setting_type,
|
| + [in] PPB_Flash_BrowserOperations_GetSettingsCallback callback,
|
| + [inout] mem_t user_data);
|
| +
|
| + /**
|
| + * Sets default permission. It applies to all sites except those with
|
| + * site-specific settings.
|
| + *
|
| + * @param[in] plugin_data_path String containing the directory where the
|
| + * plugin settings are stored.
|
| + * @param[in] setting_type What type of setting to set.
|
| + * @param[in] permission The default permission.
|
| + * @param[in] clear_site_specific Whether to remove all site-specific
|
| + * settings.
|
| + *
|
| + * @return <code>PP_TRUE</code> on success, <code>PP_FALSE</code> on failure.
|
| + */
|
| + [version=1.1]
|
| + PP_Bool SetDefaultPermission(
|
| + [in] str_t plugin_data_path,
|
| + [in] PP_Flash_BrowserOperations_SettingType setting_type,
|
| + [in] PP_Flash_BrowserOperations_Permission permission,
|
| + [in] PP_Bool clear_site_speicifc);
|
| +
|
| + /**
|
| + * Sets site-specific permission. If a site has already got site-specific
|
| + * permission and it is not in <code>sites</code>, it won't be affected.
|
| + *
|
| + * @param[in] plugin_data_path String containing the directory where the
|
| + * plugin settings are stored.
|
| + * @param[in] setting_type What type of setting to set.
|
| + * @param[in] site_count How many items are there in <code>sites</code>.
|
| + * @param[in] sites The site-specific settings. If a site is specified with
|
| + * <code>PP_FLASH_BROWSEROPERATIONS_PERMISSION_DEFAULT</code> permission, it
|
| + * will be removed from the site-specific list.
|
| + *
|
| + * @return <code>PP_TRUE</code> on success, <code>PP_FALSE</code> on failure.
|
| + */
|
| + [version=1.1]
|
| + PP_Bool SetSitePermission(
|
| + [in] str_t plugin_data_path,
|
| + [in] PP_Flash_BrowserOperations_SettingType setting_type,
|
| + [in] uint32_t site_count,
|
| + [in, size_is(site_count)] PP_Flash_BrowserOperations_SiteSetting[] sites);
|
| +};
|
|
|