summaryrefslogtreecommitdiffstats
path: root/ppapi
Commit message (Collapse)AuthorAgeFilesLines
* - Add a script which:dmichael@google.com2010-11-196-166/+185
| | | | | | | | | | | | | | | --- Checks that all source files are in ppapi.gyp and vice-versa --- Generates test_c_includes.c and test_cc_includes.cc - Removes tests/test_image_data, which appears to be obsolete I want to make the script a gyp action, but it didn't work on Windows last I tried. If desired, I can fix that in this CL, or I can make it automated later. BUG=63527,59791,53451 TEST=None; improves build-time checking Review URL: http://codereview.chromium.org/5190004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66833 0039d316-1c4b-4281-b951-d872f2087c98
* Add c/dev/ppb_widget_dev.h and cpp/non_thread_safe_ref_count.h to ppapi.gyp. ↵dmichael@google.com2010-11-194-30/+86
| | | | | | | | | | | | | Add a simple test to ensure all C++ files compile. Re-sorted the includes in test_c_includes.c that uncovered a problem whereby ppapi headers expect pp_stdint.h to include stddef.h, and it wasn't doing it on Windows. See http://codereview.chromium.org/5190004/ for an attempt at automating the test generation and verification of ppapi.gyp. BUG=66321 TEST=None Review URL: http://codereview.chromium.org/5233002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66781 0039d316-1c4b-4281-b951-d872f2087c98
* Remove pp::Var(int) garianov@google.com2010-11-192-7/+0
| | | | | | Review URL: http://codereview.chromium.org/5215002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66774 0039d316-1c4b-4281-b951-d872f2087c98
* Renames Chrome only GL extension functions to followgman@chromium.org2010-11-181-14/+0
| | | | | | | | | | | GL naming convention. TEST=none BUG=none Review URL: http://codereview.chromium.org/5210001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66695 0039d316-1c4b-4281-b951-d872f2087c98
* Make the GetName() comment more clear.dumi@chromium.org2010-11-181-1/+4
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5179002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66661 0039d316-1c4b-4281-b951-d872f2087c98
* Update cmd buffer script to reflect ppapi reorg.neb@chromium.org2010-11-171-0/+2
| | | | | | | | | | | | Someone moved the files in PPAPI around and hand-modified autogenerated files. This CL moves the change to the .py file used to generate them. BUG=none TEST=generated files identical to hand-modified version. Review URL: http://codereview.chromium.org/5147003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66520 0039d316-1c4b-4281-b951-d872f2087c98
* Update some comments.dumi@chromium.org2010-11-172-3/+11
| | | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5096002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66505 0039d316-1c4b-4281-b951-d872f2087c98
* Change FileRef::GetName() to return the name of the file even fordumi@chromium.org2010-11-171-2/+2
| | | | | | | | | | | external files. BUG=none TEST=none Review URL: http://codereview.chromium.org/5127002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66504 0039d316-1c4b-4281-b951-d872f2087c98
* Kill a #if 0 section as discussed in the meeting.dumi@chromium.org2010-11-171-9/+0
| | | | | | | | | BUG=none TEST=non Review URL: http://codereview.chromium.org/5129001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66503 0039d316-1c4b-4281-b951-d872f2087c98
* A second attempt at forcing 8-byte alignment of the time stamp.dmichael@google.com2010-11-172-8/+6
| | | | | | | | | | | | | | | I used padding this time. pragma pack didn't work on Mac x86-32. It seems to be an issue that only some (very recent?) versions of GCC support it. I could do it with macros, but it would be ugly. See the updated bug for more details. Try was clean: http://build.chromium.org/p/tryserver.chromium/waterfall?committer=dmichael@google.com BUG=62983 TEST=I use a compile assert to ensure the size is consistent. Assuming this goes well, I'll do a future CL to scan other structs and tweak them to get consistent alignment if I find any other problems. Review URL: http://codereview.chromium.org/5001002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66446 0039d316-1c4b-4281-b951-d872f2087c98
* Run Pepper unit tests in Native Clientgarianov@google.com2010-11-167-15/+81
| | | | | | | | | copy of http://codereview.chromium.org/4991006/ had to do it again in 'commitable' version of chrome tree Review URL: http://codereview.chromium.org/4979006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66321 0039d316-1c4b-4281-b951-d872f2087c98
* Fix some bugs in paint manager. Some of the class members were not gettingbrettw@chromium.org2010-11-141-3/+7
| | | | | | | | | | | | | initialized in the constructor. Also, when a manual callback was executed, if a regular fluch happened to come in the intervening time, we would cause an assertion failure because it would always try to paint. Now when we get the callback, we can ignore it if there is already a flush pending. Original review=http://codereview.chromium.org/4886004/ git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66082 0039d316-1c4b-4281-b951-d872f2087c98
* Implement DrawGlyphs and refactor the FontDescription serialization suchbrettw@chromium.org2010-11-147-132/+223
| | | | | | that it can be reused for this code. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66081 0039d316-1c4b-4281-b951-d872f2087c98
* Force 8-byte alignment in PP_InputEvent. Rev PPP_Instance interface to 0.3 ↵dmichael@google.com2010-11-123-4/+40
| | | | | | | | | | | | | | | | because this changes the size of PP_InputEvent on Linux x86-32. Add an assertion for the size of PP_InputEvent. Note I had to tweak the macro to allow for a typename of "struct PP_InputEvent", because I was relying on having no spaces in the typename. Now there's a separate macro for structs. Other options would include: - adding a typedef, e.g. PP_InputEvent_t, and using that in the original macro (this was my initial approach, but I decided I'd rather make a new macro than obfuscate the PP_InputEvent declaration) - Make PP_InputEvent itself a typedef, i.e. typedef struct {...} PP_InputEvent. This would make it impossible to forward-declare PP_InputEvent, and would require code changes elsewhere. - Change the macro some other way so that we don't need 2 macros (e.g., don't use the passed typename when creating a unique name). Use another trick like using the line number. This also has the drawback of making the error message less helpful. BUG=62983 TEST=NaCl tests/ppapi_proxy/event_example (see http://codereview.chromium.org/3767003/show) Review URL: http://codereview.chromium.org/4861002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@66000 0039d316-1c4b-4281-b951-d872f2087c98
* Add a blank line to force this file to be recompiled on Mac on the bots.brettw@chromium.org2010-11-121-0/+1
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65997 0039d316-1c4b-4281-b951-d872f2087c98
* Make the Graphics2D flush call an asynchronous operation. This tracks thebrettw@chromium.org2010-11-129-63/+197
| | | | | | | | | | | | | | | | | | | | callback in the plugin and adds a new message when a flush is complete in the renderer. I adapted the callback factory so it could be used for tracking the flush callbacks in the proxy in the renderer, and also changed the URL loader stuff (which had some custom management) around so that it also uses the factory. This also fixes a bug in font proxying where we would assert if there was a font creation error because the dispatcher wasn't set on the SerializedVar in the font decription. TEST=none BUG=none Review URL: http://codereview.chromium.org/4876003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65995 0039d316-1c4b-4281-b951-d872f2087c98
* Add proxies for some of the PDF & Flash functionality. There are still a fewbrettw@chromium.org2010-11-1216-2/+1034
| | | | | | | | | | | unimplemented parts in the Flash proxy, and I only implemented the necessary part of the PDF one. TEST=none BUG=none Review URL: http://codereview.chromium.org/4752008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65951 0039d316-1c4b-4281-b951-d872f2087c98
* Re-land previous change r65856. Add implementations for Fullscreen and ↵brettw@chromium.org2010-11-128-0/+344
| | | | | | CursorControl interfaces. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65914 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 65856 - Add implementations for Fullscreen and CursorControl interfaces.brettw@chromium.org2010-11-118-344/+0
| | | | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/4809002 TBR=brettw@chromium.org Review URL: http://codereview.chromium.org/4822001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65857 0039d316-1c4b-4281-b951-d872f2087c98
* Add implementations for Fullscreen and CursorControl interfaces.brettw@chromium.org2010-11-118-0/+344
| | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/4809002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65856 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for proxying the font and char set interfaces.brettw@chromium.org2010-11-117-8/+638
| | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/4653006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65847 0039d316-1c4b-4281-b951-d872f2087c98
* Move URLLoader, URLRequestInfo, and URLResponseInfo out of the dev directorybrettw@chromium.org2010-11-1028-290/+245
| | | | | | | | | | | | and rename accordingly. Rename URLResponseInfo.GetBody to GetBodyAsFileRef. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/4747001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65705 0039d316-1c4b-4281-b951-d872f2087c98
* Add a macro (PP_ENUM) that ensures that enums are always 4 bytes. Whereverdmichael@google.com2010-11-103-0/+19
| | | | | | | | | | | | | | | | | possible (Visual Studio C++ and GCC C++0x mode), specify int32_t as the representation type of the enum. For C, where enum gives us no type safety, just typedef an int32_t to the enum name. In all other cases, use a compile-time assertion to ensure that enums are 4 bytes wide. This change only applies the new PP_ENUM macro in 2 commonly used places. This is to make sure that the (possibly contraversial) usage of variadic macro arguments is acceptable before I go change it everywhere. If I can't use variadic macro arguments, I think I will have to separate this in to 2 macros and the enum declarations will look something like this: PP_ENUM_BEGIN(PP_Bool) PP_FALSE=0, PP_TRUE=1 PP_ENUM_END(PP_Bool) BUG=61004 TEST=This should be exercised by all tests that use PP_Bool and PP_Var. Suggestions for improvement are welcome, as always. Review URL: http://codereview.chromium.org/4720005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65704 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unused function.thakis@chromium.org2010-11-101-16/+0
| | | | | | | | BUG=None TEST=None TBR=brettw git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65685 0039d316-1c4b-4281-b951-d872f2087c98
* Fix clang build by removing redundant "const"brettw@chromium.org2010-11-101-2/+2
| | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/4729002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65632 0039d316-1c4b-4281-b951-d872f2087c98
* Implement a new process type for running PPAPI plugins. The process itself isbrettw@chromium.org2010-11-108-10/+99
| | | | | | | | | | | | | | | quite simple and just sets up the PPAPI dispatcher and loads the library. There is a new command line switch --ppapi-out-of-process which runs PPAPI plugins out of process using the new code path. There is some logic in RenderView and PepperPluginModule for setting up this connection, but it should be straightforward. TEST=none BUG=none Review URL: http://codereview.chromium.org/3915002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65614 0039d316-1c4b-4281-b951-d872f2087c98
* Add forgotten file from previous PPAPI CL.brettw@chromium.org2010-11-091-1/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65544 0039d316-1c4b-4281-b951-d872f2087c98
* Random updates for all added proxy interfaces I've done in the past week.brettw@chromium.org2010-11-0911-68/+342
| | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/4609001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65543 0039d316-1c4b-4281-b951-d872f2087c98
* Change the private image data shared memory handle code to return a nativebrettw@chromium.org2010-11-091-2/+5
| | | | | | | | | | memory handle and a size rather than the internal TransportDIB structure. TEST=none BUG=none Review URL: http://codereview.chromium.org/4611001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65482 0039d316-1c4b-4281-b951-d872f2087c98
* * Add follow_redirects_ field to pepper::URLRequestInfo, follow_redirects() ↵brettw@chromium.org2010-11-082-0/+33
| | | | | | | | | | | | | accessor, modified SetProperty to support this * Add status_text_, redirect_url_ fields to pepper::URLResponseInfo, modified GetProperty to return these * Add URL redirect auditing to pepper::URLLoader. BUG=49790 BUG=51345 TEST=ui_tests --gtest_filter=PPAPI* Review=http://codereview.chromium.org/4394003/show git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65443 0039d316-1c4b-4281-b951-d872f2087c98
* Convert Chrome PPAPI proxy from bool to PP_Bool.brettw@chromium.org2010-11-0817-94/+144
| | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/4659001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65381 0039d316-1c4b-4281-b951-d872f2087c98
* Reland r65152 with mac and linux fix.apatrick@chromium.org2010-11-062-0/+12
| | | | | | | | | | | Original review URL: http://codereview.chromium.org/3531008 TEST=try, ui_tests BUG=none Review URL: http://codereview.chromium.org/4545003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65283 0039d316-1c4b-4281-b951-d872f2087c98
* Add proxies for URLResponseInfo, URLRequestInfo, and Testing. The URLLoaderbrettw@chromium.org2010-11-056-0/+534
| | | | | | | | | | | tests now pass, except for the one that uses FileRef which isn't implemented yet. BUG=none TEST=URLLoader pepper test Review URL: http://codereview.chromium.org/4605001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65268 0039d316-1c4b-4281-b951-d872f2087c98
* Var serialization-related proxy stuff. This allows vars to be sent over IPCbrettw@chromium.org2010-11-057-0/+1252
| | | | | | | | | | | | | | | | | | | | | | and received with proper refcounting semantics. The basic design is that the SerializedVar is the thing actually handled by IPC. Then you use one of the many helper classes depending on whether you are sending or receiving and what the ownership semantics are. The helper classes, along with the VarSerialization interface makes the right thing happen for string conversion & refcounting. The VarSerialization class is implemented differently on the browser and plugin side and is where the differences in refcounting & strings are handled. This allows the rest of the code to be the same on both the plugin and browser side and allows vars to be sent back and forth. This patch references some files not in it like the dispatcher and various tracker classes. This is the cleanest cut I could make for a reasonably reviewable chunk. Review URL: http://codereview.chromium.org/4096008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65262 0039d316-1c4b-4281-b951-d872f2087c98
* Add proxies for core and class (for calling from WebKit to the plugin). Thesebrettw@chromium.org2010-11-054-0/+551
| | | | | | | | | | | don't build by themselves, this is part of a larger patch. You can see most of the serialization mechanics already checked in to the same directory. TEST=none BUG=none Review URL: http://codereview.chromium.org/4345003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65261 0039d316-1c4b-4281-b951-d872f2087c98
* Instance interface implementation. These don't build by themselves, this isbrettw@chromium.org2010-11-056-0/+944
| | | | | | | | | | | part of a larger patch. You can see most of the serialization mechanics already checked in to the same directory. TEST=none BUG=none Review URL: http://codereview.chromium.org/4289005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65260 0039d316-1c4b-4281-b951-d872f2087c98
* Make PPAPI headers compile with C compilers (gcc on Linux & Mac and MSVS on ↵dmichael@google.com2010-11-0574-507/+832
| | | | | | | | | | | | | | Windows). This includes changing bool to PP_Bool and adding a PP_INLINE macro. TEST=tests/test_c_includes.c BUG=59791,53451 The first patch set is a straight copy of http://codereview.chromium.org/4019010/show which got LGTMed when PPAPI was in its own repo, but had to be rolled back in order to include chrome changes. IMPORTANT: This change will break plugin implementations that use the C interface, and might break others as well. Review URL: http://codereview.chromium.org/4310002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65200 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 65152 - Integrated Pepper3D v2 with the accelerated compositor.apatrick@chromium.org2010-11-052-11/+0
| | | | | | | | | | | | | | | | | | | - It now uses GGL instead of a child window. - Fixed a bug where GLES2 decoder set texture state without updating TextureInfo. - Fixed Pepper3D demos and added awesome 3D CSS programmer art. - Removed ggl::GetCurrentContext to prevent further abuse. Fixed said abuse :) - GGL exposes GLES2Implementation to allow issue of GL calls on a particular context without making that context globally current. - Removed redundant "this context" argument from GGL SwapBuffers completion callback. - Temporarily removed context lost notification. I need to figure out the best semantics. TEST=Run Pepper3D and WebGL demos and YouTube videos on Windows and Mac. BUG=none Review URL: http://codereview.chromium.org/3531008 TBR=apatrick@chromium.org Review URL: http://codereview.chromium.org/4561001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65169 0039d316-1c4b-4281-b951-d872f2087c98
* Integrated Pepper3D v2 with the accelerated compositor.apatrick@chromium.org2010-11-052-0/+11
| | | | | | | | | | | | | | | | - It now uses GGL instead of a child window. - Fixed a bug where GLES2 decoder set texture state without updating TextureInfo. - Fixed Pepper3D demos and added awesome 3D CSS programmer art. - Removed ggl::GetCurrentContext to prevent further abuse. Fixed said abuse :) - GGL exposes GLES2Implementation to allow issue of GL calls on a particular context without making that context globally current. - Removed redundant "this context" argument from GGL SwapBuffers completion callback. - Temporarily removed context lost notification. I need to figure out the best semantics. TEST=Run Pepper3D and WebGL demos and YouTube videos on Windows and Mac. BUG=none Review URL: http://codereview.chromium.org/3531008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65152 0039d316-1c4b-4281-b951-d872f2087c98
* Add callback ability for URLLoader so an asynchronous proxy can send thebrettw@chromium.org2010-11-043-11/+56
| | | | | | | | | | | | | | current progress to another process. Adds a DOWNLOADPROGRESS flag to track download progress to be symetrical with the upload progress. I implemented the backend of these two flags and made it refuse to provide progress unless these flags were set. TEST=none BUG=none Review URL: http://codereview.chromium.org/4423001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65098 0039d316-1c4b-4281-b951-d872f2087c98
* Add proxies for ImageData and Graphics2D. These don't build by themselves, thisbrettw@chromium.org2010-11-044-0/+548
| | | | | | | | | | | is part of a larger patch. You can see most of the serialization mechanics already checked in to the same directory. TEST=none BUG=none Review URL: http://codereview.chromium.org/4265002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65097 0039d316-1c4b-4281-b951-d872f2087c98
* Fixing a stupid typo.dumi@chromium.org2010-11-041-1/+1
| | | | | | | | | | BUG=none TEST=none TBR=darin Review URL: http://codereview.chromium.org/4426004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65023 0039d316-1c4b-4281-b951-d872f2087c98
* Including <stdin.h> to hopefully fix a build error on the ChromeOS bots.dumi@chromium.org2010-11-041-0/+2
| | | | | | | | | | BUG=none TEST=none TBR=darin Review URL: http://codereview.chromium.org/4469001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65022 0039d316-1c4b-4281-b951-d872f2087c98
* Pepper's directory reader implementation + test.dumi@chromium.org2010-11-0415-213/+301
| | | | | | | | | BUG=none TEST=test_directory_reader.cc Review URL: http://codereview.chromium.org/4107004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65002 0039d316-1c4b-4281-b951-d872f2087c98
* Add proxies for Var deprecated and some additional tracking information. Thesebrettw@chromium.org2010-11-034-0/+679
| | | | | | | | | | | don't build by themselves, this is part of a larger patch. You can see most of the serialization mechanics already checked in to the same directory. TEST=none BUG=none Review URL: http://codereview.chromium.org/4369001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64955 0039d316-1c4b-4281-b951-d872f2087c98
* Remove serialized var file from previous check that shouldn't have been there.brettw@chromium.org2010-11-031-457/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64875 0039d316-1c4b-4281-b951-d872f2087c98
* Core PPAPI proxy files. This includes the dispatcher which is the control pointbrettw@chromium.org2010-11-0321-0/+2293
| | | | | | | | | | | | on each end of the IPC channel. It includes the IPC message definitions. It also includes the base class for the interface proxying, and the core resource and var tracking. BUG=none TEST=none Review=http://codereview.chromium.org/4229002/show git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64874 0039d316-1c4b-4281-b951-d872f2087c98
* Revert previous accidental change to the gyp file.brettw@chromium.org2010-11-031-73/+0
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64873 0039d316-1c4b-4281-b951-d872f2087c98
* Revert PPAPI proxy change with too many files in it.brettw@chromium.org2010-11-0348-6325/+73
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64870 0039d316-1c4b-4281-b951-d872f2087c98
* Core PPAPI proxy files. This includes the dispatcher which is the control pointbrettw@chromium.org2010-11-0347-0/+6325
| | | | | | | | | | | | on each end of the IPC channel. It includes the IPC message definitions. It also includes the base class for the interface proxying, and the core resource and var tracking. BUG=none TEST=none Review URL: http://codereview.chromium.org/4229002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64869 0039d316-1c4b-4281-b951-d872f2087c98