diff options
author | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-19 19:33:55 +0000 |
---|---|---|
committer | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-19 19:33:55 +0000 |
commit | aa0c865d8f2824f60013ace1c60b3e5fa4c2210a (patch) | |
tree | d8124920b63ea2466fb9642a19471bf0c14fe06c /ppapi/thunk | |
parent | afa3c18d08b411bda2975a5ae6f33a4ed939875f (diff) | |
download | chromium_src-aa0c865d8f2824f60013ace1c60b3e5fa4c2210a.zip chromium_src-aa0c865d8f2824f60013ace1c60b3e5fa4c2210a.tar.gz chromium_src-aa0c865d8f2824f60013ace1c60b3e5fa4c2210a.tar.bz2 |
Allow creation of input events. Revert changes to testing interface for
creating keyboard events.
TEST=manual
Review URL: http://codereview.chromium.org/7443005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93076 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/thunk')
-rw-r--r-- | ppapi/thunk/ppb_input_event_thunk.cc | 46 | ||||
-rw-r--r-- | ppapi/thunk/resource_creation_api.h | 23 |
2 files changed, 69 insertions, 0 deletions
diff --git a/ppapi/thunk/ppb_input_event_thunk.cc b/ppapi/thunk/ppb_input_event_thunk.cc index 501502c..4fee1a1 100644 --- a/ppapi/thunk/ppb_input_event_thunk.cc +++ b/ppapi/thunk/ppb_input_event_thunk.cc @@ -80,6 +80,21 @@ const PPB_InputEvent g_ppb_input_event_thunk = { // Mouse ----------------------------------------------------------------------- +PP_Resource CreateMouseInputEvent(PP_Instance instance, + PP_InputEvent_Type type, + PP_TimeTicks time_stamp, + uint32_t modifiers, + PP_InputEvent_MouseButton mouse_button, + PP_Point mouse_position, + int32_t click_count) { + EnterFunction<ResourceCreationAPI> enter(instance, true); + if (enter.failed()) + return 0; + return enter.functions()->CreateMouseInputEvent(instance, type, time_stamp, + modifiers, mouse_button, + mouse_position, click_count); +} + PP_Bool IsMouseInputEvent(PP_Resource resource) { if (!IsInputEvent(resource)) return PP_FALSE; // Prevent warning log in GetType. @@ -114,6 +129,7 @@ int32_t GetMouseClickCount(PP_Resource mouse_event) { } const PPB_MouseInputEvent g_ppb_mouse_input_event_thunk = { + &CreateMouseInputEvent, &IsMouseInputEvent, &GetMouseButton, &GetMousePosition, @@ -122,6 +138,20 @@ const PPB_MouseInputEvent g_ppb_mouse_input_event_thunk = { // Wheel ----------------------------------------------------------------------- +PP_Resource CreateWheelInputEvent(PP_Instance instance, + PP_TimeTicks time_stamp, + uint32_t modifiers, + PP_FloatPoint wheel_delta, + PP_FloatPoint wheel_ticks, + PP_Bool scroll_by_page) { + EnterFunction<ResourceCreationAPI> enter(instance, true); + if (enter.failed()) + return 0; + return enter.functions()->CreateWheelInputEvent(instance, time_stamp, + modifiers, wheel_delta, + wheel_ticks, scroll_by_page); +} + PP_Bool IsWheelInputEvent(PP_Resource resource) { if (!IsInputEvent(resource)) return PP_FALSE; // Prevent warning log in GetType. @@ -151,6 +181,7 @@ PP_Bool GetWheelScrollByPage(PP_Resource wheel_event) { } const PPB_WheelInputEvent g_ppb_wheel_input_event_thunk = { + &CreateWheelInputEvent, &IsWheelInputEvent, &GetWheelDelta, &GetWheelTicks, @@ -159,6 +190,20 @@ const PPB_WheelInputEvent g_ppb_wheel_input_event_thunk = { // Keyboard -------------------------------------------------------------------- +PP_Resource CreateKeyboardInputEvent(PP_Instance instance, + PP_InputEvent_Type type, + PP_TimeTicks time_stamp, + uint32_t modifiers, + uint32_t key_code, + struct PP_Var character_text) { + EnterFunction<ResourceCreationAPI> enter(instance, true); + if (enter.failed()) + return 0; + return enter.functions()->CreateKeyboardInputEvent(instance, type, time_stamp, + modifiers, key_code, + character_text); +} + PP_Bool IsKeyboardInputEvent(PP_Resource resource) { if (!IsInputEvent(resource)) return PP_FALSE; // Prevent warning log in GetType. @@ -183,6 +228,7 @@ PP_Var GetCharacterText(PP_Resource character_event) { } const PPB_KeyboardInputEvent g_ppb_keyboard_input_event_thunk = { + &CreateKeyboardInputEvent, &IsKeyboardInputEvent, &GetKeyCode, &GetCharacterText diff --git a/ppapi/thunk/resource_creation_api.h b/ppapi/thunk/resource_creation_api.h index 15641c3..3ac84b2 100644 --- a/ppapi/thunk/resource_creation_api.h +++ b/ppapi/thunk/resource_creation_api.h @@ -15,6 +15,7 @@ #include "ppapi/c/ppb_audio_config.h" #include "ppapi/c/ppb_file_system.h" #include "ppapi/c/ppb_image_data.h" +#include "ppapi/c/ppb_input_event.h" #include "ppapi/proxy/interface_id.h" struct PP_Flash_Menu; @@ -83,6 +84,21 @@ class ResourceCreationAPI { PP_ImageDataFormat format, const PP_Size& size, PP_Bool init_to_zero) = 0; + virtual PP_Resource CreateKeyboardInputEvent( + PP_Instance instance, + PP_InputEvent_Type type, + PP_TimeTicks time_stamp, + uint32_t modifiers, + uint32_t key_code, + struct PP_Var character_text) = 0; + virtual PP_Resource CreateMouseInputEvent( + PP_Instance instance, + PP_InputEvent_Type type, + PP_TimeTicks time_stamp, + uint32_t modifiers, + PP_InputEvent_MouseButton mouse_button, + PP_Point mouse_position, + int32_t click_count) = 0; virtual PP_Resource CreateScrollbar(PP_Instance instance, PP_Bool vertical) = 0; virtual PP_Resource CreateSurface3D(PP_Instance instance, @@ -96,6 +112,13 @@ class ResourceCreationAPI { virtual PP_Resource CreateVideoDecoder(PP_Instance instance) = 0; virtual PP_Resource CreateVideoLayer(PP_Instance instance, PP_VideoLayerMode_Dev mode) = 0; + virtual PP_Resource CreateWheelInputEvent( + PP_Instance instance, + PP_TimeTicks time_stamp, + uint32_t modifiers, + PP_FloatPoint wheel_delta, + PP_FloatPoint wheel_ticks, + PP_Bool scroll_by_page) = 0; static const ::pp::proxy::InterfaceID interface_id = ::pp::proxy::INTERFACE_ID_RESOURCE_CREATION; |