| Index: content/public/browser/browser_plugin_guest_delegate.h
|
| diff --git a/content/public/browser/browser_plugin_guest_delegate.h b/content/public/browser/browser_plugin_guest_delegate.h
|
| index df98e4fd7ed7dd0fb66a024bcc23660007a815da..d97cbb7f7ea5efc2ad46c454e680d594e3f00946 100644
|
| --- a/content/public/browser/browser_plugin_guest_delegate.h
|
| +++ b/content/public/browser/browser_plugin_guest_delegate.h
|
| @@ -5,9 +5,12 @@
|
| #ifndef CONTENT_PUBLIC_BROWSER_BROWSER_PLUGIN_GUEST_DELEGATE_H_
|
| #define CONTENT_PUBLIC_BROWSER_BROWSER_PLUGIN_GUEST_DELEGATE_H_
|
|
|
| +#include "base/callback_forward.h"
|
| #include "base/process/kill.h"
|
| #include "base/strings/string16.h"
|
| +#include "base/values.h"
|
| #include "content/common/content_export.h"
|
| +#include "content/public/common/browser_plugin_message_enums.h"
|
|
|
| namespace content {
|
|
|
| @@ -17,6 +20,10 @@ struct NativeWebKeyboardEvent;
|
| // WebContents and to provide necessary functionality.
|
| class CONTENT_EXPORT BrowserPluginGuestDelegate {
|
| public:
|
| + typedef base::Callback<void(bool /* allow */,
|
| + const std::string& /* user_input */)>
|
| + PermissionResponseCallback;
|
| +
|
| virtual ~BrowserPluginGuestDelegate() {}
|
|
|
| // Add a message to the console.
|
| @@ -41,6 +48,15 @@ class CONTENT_EXPORT BrowserPluginGuestDelegate {
|
|
|
| // Notification that the guest is hung.
|
| virtual void RendererUnresponsive() {}
|
| +
|
| + // Request permission from the delegate to perform an action of the provided
|
| + // |permission_type|. Details of the permission request are found in
|
| + // |request_info|. A |callback| is provided to make the decision.
|
| + // Returns whether the delegate has, or will handle the permission request.
|
| + virtual bool RequestPermission(
|
| + BrowserPluginPermissionType permission_type,
|
| + const base::DictionaryValue& request_info,
|
| + const PermissionResponseCallback& callback);
|
| };
|
|
|
| } // namespace content
|
|
|