diff options
author | dmichael@chromium.org <dmichael@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-20 18:11:51 +0000 |
---|---|---|
committer | dmichael@chromium.org <dmichael@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-20 18:11:51 +0000 |
commit | a19358d3fc8effc088e5212d11d7ab4eed4a04c9 (patch) | |
tree | 2ea723b39505fba7a77a4d2d31ce21c00d0d7486 /ppapi/shared_impl/ppp_instance_combined.h | |
parent | a45f18300d227334e573e2fde960d1a181757c5a (diff) | |
download | chromium_src-a19358d3fc8effc088e5212d11d7ab4eed4a04c9.zip chromium_src-a19358d3fc8effc088e5212d11d7ab4eed4a04c9.tar.gz chromium_src-a19358d3fc8effc088e5212d11d7ab4eed4a04c9.tar.bz2 |
Reland http://codereview.chromium.org/7452002/
Update chromoting input events. (Clang caught this. Thanks, Clang!)
Note I'm leaving in temporary backwards-compatibility.
brettw, just need a rubber-stamp. This is the same as the last CL. awong/garykac/sergeyu, looking for someone on chromoting team to glance at my changes and make sure I didn't do anything you don't like. This is a high priority for 14, so please look if you can.
BUG=None
TEST=ppapi tests
Review URL: http://codereview.chromium.org/7466002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93223 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/shared_impl/ppp_instance_combined.h')
-rw-r--r-- | ppapi/shared_impl/ppp_instance_combined.h | 42 |
1 files changed, 41 insertions, 1 deletions
diff --git a/ppapi/shared_impl/ppp_instance_combined.h b/ppapi/shared_impl/ppp_instance_combined.h index 33548d5..57b5beb 100644 --- a/ppapi/shared_impl/ppp_instance_combined.h +++ b/ppapi/shared_impl/ppp_instance_combined.h @@ -8,11 +8,51 @@ #include "base/basictypes.h" #include "ppapi/c/ppp_instance.h" +// TODO(dmichael): This is here only for temporary backwards compatibility so +// that NaCl and other plugins aren't broken while the change propagates. This +// needs to be deleted in 14, because we don't intend to support PPP_Instance. +// HandleInputEvent. +// --- Begin backwards compatibility code. +union PP_InputEventData { + struct PP_InputEvent_Key key; + struct PP_InputEvent_Character character; + struct PP_InputEvent_Mouse mouse; + struct PP_InputEvent_Wheel wheel; + char padding[64]; +}; +struct PP_InputEvent { + PP_InputEvent_Type type; + int32_t padding; + PP_TimeTicks time_stamp; + union PP_InputEventData u; +}; +PP_COMPILE_ASSERT_STRUCT_SIZE_IN_BYTES(PP_InputEvent, 80); + +#define PPP_INSTANCE_INTERFACE_0_5 "PPP_Instance;0.5" + +struct PPP_Instance_0_5 { + PP_Bool (*DidCreate)(PP_Instance instance, + uint32_t argc, + const char* argn[], + const char* argv[]); + void (*DidDestroy)(PP_Instance instance); + void (*DidChangeView)(PP_Instance instance, + const struct PP_Rect* position, + const struct PP_Rect* clip); + void (*DidChangeFocus)(PP_Instance instance, PP_Bool has_focus); + PP_Bool (*HandleInputEvent)(PP_Instance instance, + const struct PP_InputEvent* event); + PP_Bool (*HandleDocumentLoad)(PP_Instance instance, PP_Resource url_loader); +}; +// --- End backwards compatibility code. namespace ppapi { -struct PPP_Instance_Combined : public PPP_Instance_0_5 { +struct PPP_Instance_Combined : public PPP_Instance_1_0 { public: + explicit PPP_Instance_Combined(const PPP_Instance_1_0& instance_if); explicit PPP_Instance_Combined(const PPP_Instance_0_5& instance_if); + PP_Bool (*HandleInputEvent_0_5)(PP_Instance instance, + const struct PP_InputEvent* event); DISALLOW_COPY_AND_ASSIGN(PPP_Instance_Combined); }; |