summaryrefslogtreecommitdiffstats
path: root/ppapi/proxy/gamepad_resource.cc
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup: Make gamepad API consistent.teravest@chromium.org2013-03-201-1/+2
| | | | | | | | | | | | | | | | | In the "old proxy model", using EnterInstance<>, code always passed the instance as the first argument. In the "new proxy model", using EnterInstanceAPI<>, code is inconsistent, making it hard to automatically generate thunk files from IDL. This change updates the gamepad API to be consistent with many other interfaces and the old proxy model. BUG= Review URL: https://chromiumcodereview.appspot.com/12568010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@189169 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor the way singleton-style resources are exposed via PPB_Instanceraymes@chromium.org2012-11-291-0/+4
| | | | | | | | | | Currently a lot of boilerplate needs to be added everytime we add a new singleton style resource and as we add more of them this will accumulate. This patch reduces the amount of code needed by exposing a GetSingletonResource function in PPB_Instance_API which takes an ID specifying what type of resource is needed. A new Enter type, EnterInstanceAPI, is provided which is templated on the singleton API you want access to. BUG= Review URL: https://codereview.chromium.org/11359063 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@170221 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid leaking SerializedHandles.yzshen@chromium.org2012-11-021-2/+2
| | | | | | | | | | | | This CL automatically closes SerializedHandles at the receiving side of ResourceMessageParams (the host side for ResourceMessageCallParams; the plugin side for ResourceMessageReplyParams), if they are not taken by message handlers. BUG=None TEST=None Review URL: https://chromiumcodereview.appspot.com/11312017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@165799 0039d316-1c4b-4281-b951-d872f2087c98
* PluginResource: Avoid having two sets of similar methods for talking with ↵yzshen@chromium.org2012-10-161-2/+3
| | | | | | | | | | | | browser and renderer. BUG=None TEST=None Review URL: https://chromiumcodereview.appspot.com/11106019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@162066 0039d316-1c4b-4281-b951-d872f2087c98
* Converted PluginResource reply message handling to use base::Callbackraymes@chromium.org2012-10-041-9/+4
| | | | | | | | | | | | | | | | | | | | Previously each PluginResource had to write a reply handler (|OnReplyReceived|) for any replies to resource messages. This approach had several problems including the fact that the PluginResource had to track the state of any outstanding calls. This change allows you to register a base::Callback when calling CallToBrowser/CallToRenderer. The callback will be run when a reply message is received with a sequence number matching the call. The parameters of the reply will be passed to the callback. An example of usage: CallBrowser<PpapiPluginMsg_MyResourceType_MyReplyMessage>( PpapiHostMsg_MyResourceType_MyRequestMessage(), base::Bind(&MyPluginResource::ReplyHandler, this)); If a reply message to this call is received whose type does not match the expected reply message (for example, in the case of an error), the callback will still be invoked but with the default values of the message parameters. BUG= Review URL: https://chromiumcodereview.appspot.com/11022005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160015 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the gamepad API in the IPC proxybrettw@chromium.org2012-09-101-15/+72
| | | | | | | | | | | | | | This does some reworking of the gamepad system to make it possible to hook in (previously it assumed that it was only talking to renderers) and I did some cleanup. Gamepad files were renamed to match the classes, and I did a bunch of test infrastructure work. IMPORTANT BEHAVIOR CHANGE: This changes the Web gamepad API to report all gamepad data as soon as any of them are interacted with. This is what we need to do for Pepper anyway (since it gets all or none of the share memory) and I think makes more sense for most consumers anyway. I separated out the user gesture detection code into a place where it can be used in the browser process as well, and exposed functionality in the gamepad provider to be notified when a user gesture happens. The existing gamepad test was disabled and had bitrotted. This fixes it. Review URL: https://chromiumcodereview.appspot.com/10912062 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@155676 0039d316-1c4b-4281-b951-d872f2087c98
* Add a skeleton gamepad resource.brettw@chromium.org2012-08-241-0/+58
This implements the skeleton of the gamepad resource for the IPC proxy. It is not actually hooked up. Hooking it up will require moving some gamepad lock code to a shared location. This also hooks up the browser message routing for implementing resource hosts in the browser process. BUG= Review URL: https://chromiumcodereview.appspot.com/10824272 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@153265 0039d316-1c4b-4281-b951-d872f2087c98