Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(267)

Unified Diff: content/ppapi_plugin/broker_process_dispatcher.h

Issue 10479015: Pepper Flash settings integration - camera and microphone. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/ppapi_plugin/broker_process_dispatcher.h
diff --git a/content/ppapi_plugin/broker_process_dispatcher.h b/content/ppapi_plugin/broker_process_dispatcher.h
index b33a4e815b610a262aec72dbea1f5166e3ca101f..7da07bf89f6a71826e46183cd43686f9f5625c4a 100644
--- a/content/ppapi_plugin/broker_process_dispatcher.h
+++ b/content/ppapi_plugin/broker_process_dispatcher.h
@@ -6,13 +6,17 @@
#define CONTENT_PPAPI_PLUGIN_BROKER_PROCESS_DISPATCHER_H_
#include "base/basictypes.h"
+#include "base/memory/weak_ptr.h"
#include "ppapi/c/ppp.h"
#include "ppapi/proxy/broker_dispatcher.h"
+#include "ppapi/shared_impl/ppp_flash_browser_operations_shared.h"
// Wrapper around a BrokerDispatcher that provides the necessary integration
// for plugin process management. This class is to avoid direct dependencies
// from the PPAPI proxy on the Chrome multiprocess infrastructure.
-class BrokerProcessDispatcher : public ppapi::proxy::BrokerSideDispatcher {
+class BrokerProcessDispatcher
+ : public ppapi::proxy::BrokerSideDispatcher,
+ public base::SupportsWeakPtr<BrokerProcessDispatcher> {
public:
BrokerProcessDispatcher(PP_GetInterface_Func get_plugin_interface,
PP_ConnectInstance_Func connect_instance);
@@ -21,14 +25,34 @@ class BrokerProcessDispatcher : public ppapi::proxy::BrokerSideDispatcher {
// IPC::Channel::Listener overrides.
virtual bool OnMessageReceived(const IPC::Message& msg) OVERRIDE;
+ void OnGetPermissionSettingsCompleted(
+ uint32 request_id,
+ bool success,
+ PP_Flash_BrowserOperations_Permission default_permission,
+ const ppapi::FlashSiteSettings& sites);
+
private:
void OnMsgClearSiteData(const FilePath& plugin_data_path,
const std::string& site,
uint64 flags,
uint64 max_age);
-
void OnMsgDeauthorizeContentLicenses(uint32 request_id,
const FilePath& plugin_data_path);
+ void OnMsgGetPermissionSettings(
+ uint32 request_id,
+ const FilePath& plugin_data_path,
+ PP_Flash_BrowserOperations_SettingType setting_type);
+ void OnMsgSetDefaultPermission(
+ uint32 request_id,
+ const FilePath& plugin_data_path,
+ PP_Flash_BrowserOperations_SettingType setting_type,
+ PP_Flash_BrowserOperations_Permission permission,
+ bool clear_site_specific);
+ void OnMsgSetSitePermission(
+ uint32 request_id,
+ const FilePath& plugin_data_path,
+ PP_Flash_BrowserOperations_SettingType setting_type,
+ const ppapi::FlashSiteSettings& sites);
// Requests that the plugin clear data, returning true on success.
bool ClearSiteData(const FilePath& plugin_data_path,
@@ -36,9 +60,19 @@ class BrokerProcessDispatcher : public ppapi::proxy::BrokerSideDispatcher {
uint64 flags,
uint64 max_age);
bool DeauthorizeContentLicenses(const FilePath& plugin_data_path);
+ bool SetDefaultPermission(const FilePath& plugin_data_path,
+ PP_Flash_BrowserOperations_SettingType setting_type,
+ PP_Flash_BrowserOperations_Permission permission,
+ bool clear_site_specific);
+ bool SetSitePermission(const FilePath& plugin_data_path,
+ PP_Flash_BrowserOperations_SettingType setting_type,
+ const ppapi::FlashSiteSettings& sites);
PP_GetInterface_Func get_plugin_interface_;
+ const PPP_Flash_BrowserOperations_1_1* flash_browser_operations_1_1_;
+ const PPP_Flash_BrowserOperations_1_0* flash_browser_operations_1_0_;
+
DISALLOW_COPY_AND_ASSIGN(BrokerProcessDispatcher);
};

Powered by Google App Engine
This is Rietveld 408576698