summaryrefslogtreecommitdiffstats
path: root/chrome/plugin/webplugin_proxy.h
diff options
context:
space:
mode:
authormichaeln@google.com <michaeln@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-05-13 19:22:56 +0000
committermichaeln@google.com <michaeln@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-05-13 19:22:56 +0000
commit0167204bc9a6f6873af4b92c8f0969d5ae465088 (patch)
tree95e5e2d475da2c25152ebe31689fc8e1f74acf16 /chrome/plugin/webplugin_proxy.h
parent89518924aa928807e7d5daf4d59fdb969cd19494 (diff)
downloadchromium_src-0167204bc9a6f6873af4b92c8f0969d5ae465088.zip
chromium_src-0167204bc9a6f6873af4b92c8f0969d5ae465088.tar.gz
chromium_src-0167204bc9a6f6873af4b92c8f0969d5ae465088.tar.bz2
CPAPI gears drag drop and renderer IPC....
CPAPI (0.10) functions for gears drag drop; one to extract the drag type/data given an NPObject *event, one to override the drop effect (drag cursor). Gears drag drop API receives a browser event as an NPObject* so the event is untrusted. Provide IPC calls to the renderer so gears can pass the event to renderer/V8 for checking, prior to drag type/data extraction, or the setting of the drop effect. V8 event checking is a TODO(noel), http://mondrian/10947778 for the CPAPI (0.10) change submitted to gears. BUG=7995 Original patch by Noel Gordon via: http://codereview.chromium.org/99240 Review URL: http://codereview.chromium.org/115280 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15986 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/plugin/webplugin_proxy.h')
-rw-r--r--chrome/plugin/webplugin_proxy.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/chrome/plugin/webplugin_proxy.h b/chrome/plugin/webplugin_proxy.h
index 2822fa8..e5594f0 100644
--- a/chrome/plugin/webplugin_proxy.h
+++ b/chrome/plugin/webplugin_proxy.h
@@ -5,6 +5,8 @@
#ifndef CHROME_PLUGIN_PLUGIN_WEBPLUGIN_PROXY_H__
#define CHROME_PLUGIN_PLUGIN_WEBPLUGIN_PROXY_H__
+#include <string>
+
#include "base/hash_tables.h"
#include "base/ref_counted.h"
#include "base/scoped_handle.h"
@@ -55,6 +57,14 @@ class WebPluginProxy : public WebPlugin {
void ShowModalHTMLDialog(const GURL& url, int width, int height,
const std::string& json_arguments,
std::string* json_retval);
+
+ // Called by gears over the CPAPI interface to verify that the given event is
+ // the current (javascript) drag event the browser is dispatching, and return
+ // the drag data, or control the drop effect (drag cursor), if so.
+ bool GetDragData(struct NPObject* event, bool add_data, int32* identity,
+ int32* event_id, std::string* type, std::string* data);
+ bool SetDropEffect(struct NPObject* event, int effect);
+
void OnMissingPluginStatus(int status);
// class-specific methods