summaryrefslogtreecommitdiffstats
path: root/ppapi/thunk/thunk.h
Commit message (Collapse)AuthorAgeFilesLines
* Pepper and WebKit API change to support a plugin knowing if a scrollbar is ↵jam@chromium.org2011-08-101-2/+2
| | | | | | | | | an overlay one. BUG=90530 Review URL: http://codereview.chromium.org/7538006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96244 0039d316-1c4b-4281-b951-d872f2087c98
* Video Capture Pepper APIpiman@chromium.org2011-08-061-0/+2
| | | | | | | | | | | | The API is very simple at this point but works end-to-end. BUG=None TEST=VideoCapture sample (in a later CL) Review URL: http://codereview.chromium.org/7553003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95719 0039d316-1c4b-4281-b951-d872f2087c98
* PPAPI interface for reading the enterprise policy as a big JSON blob.ajwong@chromium.org2011-07-301-0/+2
| | | | | | | | | | | | This includes an implementation that pipes up through PluginDelegate, but stops short of connecting to the actual policy code. BUG=90213 TEST=new unittests + manual testing Review URL: http://codereview.chromium.org/7483019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94824 0039d316-1c4b-4281-b951-d872f2087c98
* Remove untrusted scripting support.dmichael@chromium.org2011-07-141-7/+0
| | | | | | | | | BUG=82606 TEST=ppapi_tests,ppapi_unittests Review URL: http://codereview.chromium.org/7362012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92557 0039d316-1c4b-4281-b951-d872f2087c98
* Reland http://codereview.chromium.org/7292033dmichael@chromium.org2011-07-131-3/+3
| | | | | | | | | | | | | | | | Plus bonus change to a comment in pp_bool.h to try to get the bots to rebuild things properly ------ First pass at revving stable pepper interfaces to 1.0. Missing PPB_Core (pending removal of MemAlloc/MemFree) and new input event interfaces, in case we want to change them in the next ~week. BUG=84519 TEST=ppapi tests TBR=dmichael Review URL: http://codereview.chromium.org/7355014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92312 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 92302 - First pass at revving stable pepper interfaces to 1.0.dmichael@chromium.org2011-07-131-3/+3
| | | | | | | | | | | | | | Missing PPB_Core (pending removal of MemAlloc/MemFree) and new input event interfaces, in case we want to change them in the next ~week. BUG=84519 TEST=ppapi tests Review URL: http://codereview.chromium.org/7292033 TBR=dmichael@chromium.org Review URL: http://codereview.chromium.org/7342032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92304 0039d316-1c4b-4281-b951-d872f2087c98
* First pass at revving stable pepper interfaces to 1.0.dmichael@chromium.org2011-07-131-3/+3
| | | | | | | | | | | Missing PPB_Core (pending removal of MemAlloc/MemFree) and new input event interfaces, in case we want to change them in the next ~week. BUG=84519 TEST=ppapi tests Review URL: http://codereview.chromium.org/7292033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92302 0039d316-1c4b-4281-b951-d872f2087c98
* Migrating PPB_FileIO_Dev, PPB_FileRef_Dev, and PPB_FileSystem_Dev ↵sanga@chromium.org2011-07-071-8/+8
| | | | | | | | | dependencies to PPB_FileIO, PPB_FileRef, and PPB_FileSystem. Also fixed some lint errors. Review URL: http://codereview.chromium.org/7248047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91733 0039d316-1c4b-4281-b951-d872f2087c98
* Add interfaces for requesting and receiving input event resources.brettw@chromium.org2011-07-071-0/+8
| | | | | | | | | | | | | | | | This converts the input event from a C struct to a resource to give us more ability to change over time. This patch includes a proxy and a C++ wrapper for this resource. You now have to register for classes of input events. No events are sent by default. This also allows us to specify whether the events support bubbling or not, which allows us to better-optimize IPC. TEST=none BUG=none Review URL: http://codereview.chromium.org/7285010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91711 0039d316-1c4b-4281-b951-d872f2087c98
* Move PPB_Zoom and PPB_Messageing to the thunk system. Implement PPB_Messagingbrettw@chromium.org2011-07-061-0/+4
| | | | | | | | | | proxy. TEST=none BUG=none Review URL: http://codereview.chromium.org/7283020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91633 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land the reverted CL:yzshen@chromium.org2011-07-011-0/+2
| | | | | | | | | | | | | | http://src.chromium.org/viewvc/chrome?view=rev&revision=91150 Comparing with the previous CL, this CL makes changes to ppapi/proxy/ppapi_proxy_test.{h,cc} TEST=None BUG=None Review URL: http://codereview.chromium.org/7210030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91310 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 91150 - Define PPB_Flash_TCPSocket and PPB_Flash_SSLSocket.dpapad@chromium.org2011-06-301-2/+0
| | | | | | | | | | | | TEST=None BUG=None Review URL: http://codereview.chromium.org/7191005 TBR=yzshen@chromium.org Review URL: http://codereview.chromium.org/7293001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91153 0039d316-1c4b-4281-b951-d872f2087c98
* Define PPB_Flash_TCPSocket and PPB_Flash_SSLSocket.yzshen@chromium.org2011-06-301-0/+2
| | | | | | | | | TEST=None BUG=None Review URL: http://codereview.chromium.org/7191005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91150 0039d316-1c4b-4281-b951-d872f2087c98
* Make scrollbar GetThickness take a resource argument. This allows simlperbrettw@chromium.org2011-06-231-0/+2
| | | | | | | | | | | | | | | routing of the request using the new thunk system. Support for the old interface is kept to keep pdf and nacl building. This removes the old Resource type introspection since this was the last resource using it. TEST=it compiles BUG=non Review URL: http://codereview.chromium.org/7228003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90272 0039d316-1c4b-4281-b951-d872f2087c98
* Convert most remaining resources to use the API/thunk system. The significantbrettw@chromium.org2011-06-221-0/+17
| | | | | | | | | | | | | | | changes here are around the 3D API. Having separate files for the texture mapping interface is no longer necessary for the proxy and the implementation. This also removes the uses of the "old" dynamic casting system (using "GetAs") for other resources that I could find. TEST=ui tests BUG=none Review URL: http://codereview.chromium.org/7206016 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90096 0039d316-1c4b-4281-b951-d872f2087c98
* Move the video decoder and video layer to the new API/thunk system.brettw@chromium.org2011-06-181-2/+6
| | | | | | | | | | | | | | This changes the video decoder API to make GetConfigs be a resource member function so it can be routed with the rest of the resource functions. This patch also removes the font_list_dev API which was never implemented and has been replaced with a function on the Font interface. TEST=manual BUG=none Review URL: http://codereview.chromium.org/7193018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@89610 0039d316-1c4b-4281-b951-d872f2087c98
* Convert the URL loading objects to the API/thunk system.brettw@chromium.org2011-06-171-0/+8
| | | | | | | | TEST=PPAPI UI tests BUG=none Review URL: http://codereview.chromium.org/7192012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@89439 0039d316-1c4b-4281-b951-d872f2087c98
* Move fullscreen and instance to the new thunk system.brettw@chromium.org2011-06-151-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | This takes it in a slightl different direction. Rather than maintaining separate APIs, proxies, and impls for each interface, I think smaller instance-related interfaces can just be added on the Instance_API. There's no need for binary compatibility here and it saves a whole lot of boilerplate. Although PPB_Instance_API will get large, this isn't necessarily bad, and is probably more clear than the alternative (it saves a whole lot of code). This means that the interface IDs no longer have a 1:1 mapping to interface names. But this was already going to be the case when we have multiple versions of different interfaces. Currently the code in dispatcher to deal with this is a bit weird, because of the way the mapping works. Long term, I'm going to change these from interface IDs in the proxy to API IDs in the thunk layer. This adds APIs and thunks for several other interfaces without implementing them yet (this patch was getting too large): URL loading and surface 3D. TEST=ppapi tests BUG=none Review URL: http://codereview.chromium.org/7058015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@89265 0039d316-1c4b-4281-b951-d872f2087c98
* Implement flash menu and net connector resources using the API/thunk model.brettw@chromium.org2011-06-151-0/+6
| | | | | | | | | | Write thunk for image data trusted. BUG=none TEST=ppapi ui tests Review URL: http://codereview.chromium.org/7149026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@89204 0039d316-1c4b-4281-b951-d872f2087c98
* Implement out-of-process proxy for PPB_Buffer_Dev.fischman@chromium.org2011-06-101-2/+2
| | | | | | | | | BUG=85427,85441 TEST=./ninja/ui_tests --gtest_filter=*PPAPITest.Buffer Review URL: http://codereview.chromium.org/7108051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@88630 0039d316-1c4b-4281-b951-d872f2087c98
* Convert more interfaces to the new thunk system. This goes up to and includingbrettw@chromium.org2011-06-011-0/+14
| | | | | | | | | | | | | | | the ones starting with "F". Since this adds a lot more interfaces, I added the macro stuff we used for the old system to generate the various template specializations. This involded a lot of renaming since the As* needs to match the name (I was previously leaving off the "PPB_" part). I did other misc cleanup to the infrastructure. Review URL: http://codereview.chromium.org/7082036 Reland 87415 Review URL: http://codereview.chromium.org/7105013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87444 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 87415 - Convert more interfaces to the new thunk system. This goes up ↵thestig@chromium.org2011-06-011-14/+0
| | | | | | | | | | | | | | | | | to and including the ones starting with "F". Since this adds a lot more interfaces, I added the macro stuff we used for the old system to generate the various template specializations. This involded a lot of renaming since the As* needs to match the name (I was previously leaving off the "PPB_" part). I did other misc cleanup to the infrastructure. Review URL: http://codereview.chromium.org/7082036 TBR=brettw@chromium.org Review URL: http://codereview.chromium.org/7006022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87438 0039d316-1c4b-4281-b951-d872f2087c98
* Convert more interfaces to the new thunk system. This goes up to and includingbrettw@chromium.org2011-06-011-0/+14
| | | | | | | | | | | | the ones starting with "F". Since this adds a lot more interfaces, I added the macro stuff we used for the old system to generate the various template specializations. This involded a lot of renaming since the As* needs to match the name (I was previously leaving off the "PPB_" part). I did other misc cleanup to the infrastructure. Review URL: http://codereview.chromium.org/7082036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87415 0039d316-1c4b-4281-b951-d872f2087c98
* Move Broker, Buffer, CharSet, and CursorControl to use the new thunk/API system.brettw@chromium.org2011-05-271-0/+8
| | | | | | | | | | | This changes the way that the function APIs work in the webkit directory, now they're created per-instance rather than globally, and have their Plugininstance as a class member (this cleans up some code). I had to move the InstanceData member to be a linked_ptr due to copy constructor issues, but this should be more efficient anyway. Review URL: http://codereview.chromium.org/7077024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87094 0039d316-1c4b-4281-b951-d872f2087c98
* Convert audio-related messages to the new thunk/API system for Pepper.brettw@chromium.org2011-05-131-2/+6
| | | | | | | | | | | | | | | | | | | This has a bit of a change from the previous couple of resources that were converted in that the ResourceCreationProxy now calls a static proxy function for actually doing the work. It became too complicated and required that the ResourceCreationProxy know a lot about the internals of the objects. Did a little namespace cleanup. This renames "pp::shared_impl" to just use the "ppapi" namespace. The "shared_impl" was ugly and didn't help anything. Some files in that directory used "ppapi::shared_impl" instead which was even more confusing. Do a little build cleanup. The old ppapi_shared_proxy.gypi is now split into two sub-files, one for ppapi_shared, and one for ppapi_proxy. It's hopefully easier to find stuff now. Review URL: http://codereview.chromium.org/7014024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85303 0039d316-1c4b-4281-b951-d872f2087c98
* Make the Pepper proxy support in-process font rendering.brettw@chromium.org2011-05-101-0/+2
| | | | | | | | | | | | | This implements a WebKit thread in the PPAPI plugin process so we can do the font calls without IPC. The existing font support was refactored into a virtual class (to prevent PPAPI from depending on WebKit and creating a circular GYP dependency). This moves the renderer sandbox support into content/common so that it can be used by the PPAPI process. Review URL: http://codereview.chromium.org/6981001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84856 0039d316-1c4b-4281-b951-d872f2087c98
* This implements the new system for Graphics2D only.brettw@chromium.org2011-05-061-0/+24
This works by adding a new thunk layer that will forward to an "API" that's either per-instance (function APIs) or per-resource (resource APIs). The proxying and such is then implemented in terms of this C++ API. Ideally the trackers of the PP_Resource/PP_Instance -> object mapping would be shared between the plugin and renderer processes. To keep this patch under control, I did this as a virtual base class which is implemented by ppapi::proxy::PluginResourceTracker and webkit::ppapi::ResourceTracker. Later, the functionality of these objects should be shared in a common tracker class. Still to do it a lot of cleanup and merging of things. Also, the namespaces are a bit out of control. Review URL: http://codereview.chromium.org/6905088 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84519 0039d316-1c4b-4281-b951-d872f2087c98