summaryrefslogtreecommitdiffstats
path: root/third_party/npapi
Commit message (Collapse)AuthorAgeFilesLines
* New experimental Pepper device API.apatrick@chromium.org2010-04-161-0/+218
| | | | | | | | | | | | | | | - makes device contexts opaque to the plugin - can get / set multiple attributes and flush with a single call (and underlying IPC message exchange) - currently works in parallel with old API - adapted pepper test plugin to use new API if use_new_npdevice_api=1 TEST=trybots, visual confirmation that pepper test plugin works with new API BUG=none Review URL: http://codereview.chromium.org/1529005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44840 0039d316-1c4b-4281-b951-d872f2087c98
* Remove trailing comma to make enum compile for native clientnfullagar@google.com2010-04-141-1/+1
| | | | | | Review URL: http://codereview.chromium.org/1551030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44518 0039d316-1c4b-4281-b951-d872f2087c98
* Extend the file browser/chooser to support more modes of operation, and plumbbrettw@chromium.org2010-03-301-0/+59
| | | | | | | | | | | | | it through to the pepper API. This pepper API just supports adding the filename to the "upload files" whitelist and returning it to the plugin, but it does not actually give any ability for a sandboxed plugin to read the file (this will come in a separate changelist). TEST=none BUG=none Review URL: http://codereview.chromium.org/1094004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43123 0039d316-1c4b-4281-b951-d872f2087c98
* Add zooming notifications to Pepper. This allows the plugin to respond to ↵jam@chromium.org2010-03-261-0/+6
| | | | | | | | full page zooms without hardcoding the shortcuts for each platform/browser and allows the menus to work. Review URL: http://codereview.chromium.org/1320007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42799 0039d316-1c4b-4281-b951-d872f2087c98
* Chrome side of adding search support to Pepper.jam@chromium.org2010-03-251-17/+62
| | | | | | Review URL: http://codereview.chromium.org/1075011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42585 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed the Pepper print interface to take in the print dimensions and printer ↵sanjeevr@chromium.org2010-03-121-11/+6
| | | | | | | | | | | DPI only in the PrintBegin method. The plugin is expected to remember this until PrintEnd is called. BUG=None TEST=Test printing with plugins that support the new interface Review URL: http://codereview.chromium.org/858007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41453 0039d316-1c4b-4281-b951-d872f2087c98
* Added functions to the Pepper interface to allow plugins to participate in ↵sanjeevr@chromium.org2010-03-111-1/+57
| | | | | | | | | | | | the browser's print workflow. For now, added an interface for raster print output. Also modified vector_platform_device_win.cc to allow the caller to set a bitmap compression mode for use in the internalDrawBitmap method. Supported compression modes are JPEG and PNG. BUG=none TEST=Test printing with new plugins that support this interface. Review URL: http://codereview.chromium.org/669280 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41321 0039d316-1c4b-4281-b951-d872f2087c98
* Minor tweaks to get the NaCl tool-chain to build with the latest GPU stuff.dspringer@google.com2010-03-091-3/+5
| | | | | | | | | BUG=none TEST=none (Build the NaCl tool chain). Review URL: http://codereview.chromium.org/741001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41069 0039d316-1c4b-4281-b951-d872f2087c98
* Add theming API to Pepper. For now, this only handles scrollbars.jam@chromium.org2010-03-081-0/+52
| | | | | | Review URL: http://codereview.chromium.org/660158 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40969 0039d316-1c4b-4281-b951-d872f2087c98
* Committing change from Gene Gutnik <gene@chromium.org>. Original change at ↵jam@chromium.org2010-03-051-0/+7
| | | | | | | | | | | | | | | | | http://codereview.chromium.org/667011. Add function to Pepper API to copy text from plugin to clipboard. This functionality is necessary for good user experience, since plugin may have a custom copy button, menu, shortcut for copy functionality. This is a simple text copy interface first, and later we might need more complex format (HTML maybe) as well as cut/paste functionality. BUG=none TEST=Call CopyClipboard from plugin. Try to paste in the text editor. Verify that paste inserts the same characters. Review URL: http://codereview.chromium.org/669187 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40791 0039d316-1c4b-4281-b951-d872f2087c98
* checksum computation that returns the least significant 32-bits of the ↵abetul@google.com2010-03-041-1/+4
| | | | | | | | | | 128-bit MD5 digest BUG=none TEST=none Review URL: http://codereview.chromium.org/666012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40650 0039d316-1c4b-4281-b951-d872f2087c98
* I just put the code that does not compile on ARM. Trybots will fail because ↵apatrick@chromium.org2010-02-241-0/+10
| | | | | | | | | | | | | | I had to remove these from the CL to make gcl upload properly accept it. A + base\scoped_open_process.h A + chrome\plugin\command_buffer_stub_win.cc TEST=try BUG=none Review URL: http://codereview.chromium.org/661022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39937 0039d316-1c4b-4281-b951-d872f2087c98
* Move nphostapi.h to be with the rest of the NPAPI headers.jam@chromium.org2010-02-242-0/+326
| | | | | | Review URL: http://codereview.chromium.org/652161 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39852 0039d316-1c4b-4281-b951-d872f2087c98
* Missed OpenBSD ifdef in third_partypvalchev@google.com2010-02-231-1/+1
| | | | | | Review URL: http://codereview.chromium.org/652130 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39781 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 39530 - GPU plugin forwards repaint events to Pepper plugin.apatrick@chromium.org2010-02-201-10/+0
| | | | | | | | | | | | | | | | WM_PAINT results in a call to Pepper repaint callback. Implemented WM_ERASEBKGND to prevent flickering on repaint. Implemented PGL_NO_CONTEXT (copied from EGL spec). This is already reviewed by alokp but unfortunately got entangled with this CL. TEST=none BUG=none Review URL: http://codereview.chromium.org/571018 TBR=alokp@chromium.org Review URL: http://codereview.chromium.org/650100 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39535 0039d316-1c4b-4281-b951-d872f2087c98
* GPU plugin forwards repaint events to Pepper plugin.apatrick@chromium.org2010-02-201-0/+10
| | | | | | | | | | | | | WM_PAINT results in a call to Pepper repaint callback. Implemented WM_ERASEBKGND to prevent flickering on repaint. Implemented PGL_NO_CONTEXT (copied from EGL spec). This is already reviewed by alokp but unfortunately got entangled with this CL. TEST=none BUG=none Review URL: http://codereview.chromium.org/571018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39530 0039d316-1c4b-4281-b951-d872f2087c98
* solaris: minor ifdefsevan@chromium.org2010-02-171-1/+1
| | | | | | | | | | | | | base/process_util_posix.cc, base/third_party/nspr/prcpucfg.h, third_party/npapi/bindings/npapi.h: added alternate Solaris OS choice BUG=30101 TEST=compiles Patch by James Choi <jchoi42@pha.jhu.edu>. Review URL: http://codereview.chromium.org/606069 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39220 0039d316-1c4b-4281-b951-d872f2087c98
* Fix some issues with compiling Mac plugin code with deprecation defines setstuartmorgan@chromium.org2010-02-161-0/+2
| | | | | | | | | | | | Makes the code compile under NP_NO_QUICKDRAW and NP_NO_CARBON (modulo some gyp stuff that 64-bit builds will need to prevent compiling the shim library), and makes the tweaking of DYLD_INSERT_LIBRARIES 32-bit only. Also removes a QuickDraw variable left over from an earlier version of the QuickDraw support. BUG=none TEST=none; supports future 64-bit compilation Review URL: http://codereview.chromium.org/597053 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39096 0039d316-1c4b-4281-b951-d872f2087c98
* base::SharedMemory does not set the size in other than the creatingsehr@google.com2010-02-101-1/+4
| | | | | | | | process. Create an API to get the size of the audio shared memory region. Review URL: http://codereview.chromium.org/596038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38665 0039d316-1c4b-4281-b951-d872f2087c98
* Audio support for native client requires some additional featuressehr@google.com2010-02-092-1/+5
| | | | | | | | | | | | | | | | from pepper. Notably, the existing pepper implementation was, by default, creating a high-priority producer thread. For the NaCl version this thread should be in the NaCl module, and hence we need to separate thread creation from pre-filling with the callback. The latter is used to send an RPC to NaCl to pass the shared memory and sync socket. Getting the shared memory was done by the first reserved state value. Getting the sync socket required allocating a second. Also changed the pepper test plugin to use the new startThread member. Review URL: http://codereview.chromium.org/593023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38544 0039d316-1c4b-4281-b951-d872f2087c98
* Implemented async flushes for Pepper 3D.apatrick@chromium.org2010-02-091-0/+10
| | | | | | | | | | | Added waitForProgress field to NPDeviceContext3D to select between a flush (that pushes more work to the GPU process and waits for at least some of it to have been completed) and getting the current state as quickly as possible. The previous method of checking to see if the put offset had advanced was incorrect. TEST=trybots BUG=none Review URL: http://codereview.chromium.org/561058 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38540 0039d316-1c4b-4281-b951-d872f2087c98
* Added support for lost context recovery on the client side. None of our ↵apatrick@chromium.org2010-02-031-0/+15
| | | | | | | | | | | | | | | | | | | service side GL implementations actually report lost contexts (yet). Added pglGetError to PGL library. pglSwapBuffers returns false on a lost context or other non-recoverable error and pglGetError reports PGL_CONTEXT_LOST. Updated demo plugins to reset their PGL contexts on context lost. Standalone plugins cannot currently recover from lost context because they don't use PGL. Added error code to NPDeviceContext3D for lost context. TEST=none BUG=none Review URL: http://codereview.chromium.org/566021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38039 0039d316-1c4b-4281-b951-d872f2087c98
* Dropping unconnected obsolete vsprops files.bradnelson@google.com2010-02-031-11/+0
| | | | | | | | | BUG=8042 TEST=None Review URL: http://codereview.chromium.org/567033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38016 0039d316-1c4b-4281-b951-d872f2087c98
* To implement Pepper in Native Client we need access to the implementation of thesehr@google.com2010-02-032-2/+20
| | | | | | | | | | | | | | Pepper APIs in Chrome. Specifically, we need to be able to get the base::SharedMemory or TransportDIB memory regions used to communicate with devices. To enable doing this, especially in 64-bit Chrome, I needed to change the GetStateContext and SetStateContext functions to manipulate 64-bit values. This CL does not include the Native Client hookup to the new APIs, but is needed to do so. BUG=none TEST=none Review URL: http://codereview.chromium.org/569004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37975 0039d316-1c4b-4281-b951-d872f2087c98
* Remove yet another comma that gets in the way of the NaCl build.sehr@google.com2010-02-021-1/+1
| | | | | | Review URL: http://codereview.chromium.org/568003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37780 0039d316-1c4b-4281-b951-d872f2087c98
* Renamed ParseError -> Error, parse_error -> error, kParseNoError -> ↵apatrick@chromium.org2010-02-011-3/+12
| | | | | | | | | | | | kNoError, commandBufferEntries -> commandBufferSize. Added NPDevice3DContextError enumeration. TEST=none BUG=none Review URL: http://codereview.chromium.org/558054 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37751 0039d316-1c4b-4281-b951-d872f2087c98
* Redesigned CommandBuffer and NPDevice3D interfaces.apatrick@chromium.org2010-01-291-14/+6
| | | | | | | | | | | | All status is now in the Device3D context. It can be retreived with fewer IPC messages. It can be now be accessed off the main plugin thread, which is necessary to run OpenGL in another thread. TEST=none BUG=none Review URL: http://codereview.chromium.org/555020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37545 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor Pepper device APIneb@chromium.org2010-01-251-3/+2
| | | | | | | | | Track Pepper DeviceContexts using ID (and reclaim them upon shutdown) Refactor device-specific code into pepper_devices.h Review URL: http://codereview.chromium.org/548100 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37060 0039d316-1c4b-4281-b951-d872f2087c98
* Working rudimentary audio in Pepper.brettw@chromium.org2010-01-121-0/+85
| | | | | | | | | BUG=28292 TEST=none Patch by neb@chromium.org Original review: http://codereview.chromium.org/524006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36043 0039d316-1c4b-4281-b951-d872f2087c98
* Clarify the byte ordering and premultiplied-ness of the Pepper 2D data.brettw@chromium.org2010-01-111-0/+15
| | | | | | | | BUG=none TEST=none (no code change) Review URL: http://codereview.chromium.org/524074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35918 0039d316-1c4b-4281-b951-d872f2087c98
* Removed trailing comma in enum to fix nacl build.apatrick@google.com2009-12-231-1/+1
| | | | | | | | | TEST=none BUG=none Review URL: http://codereview.chromium.org/516002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35191 0039d316-1c4b-4281-b951-d872f2087c98
* Added Pepper 3D device that instantiates the GPU plugin and sends GLES2 ↵apatrick@google.com2009-12-221-2/+53
| | | | | | | | | | | | | | | | | | | | | | | commands to it via a command buffer. Added API for managing buffers to Pepper 3D device. Removed DCHECK from WebPluginImpl::SetWindow that checks against a windowless plugin being given a window handle. Please check this! Now an initially windowless plugin instance gets a handle when it requests a Pepper 3D context. Perhaps the window handle should be concealed from the underlying plugin isntance. Removed enable_gpu gyp variable and C macro. GPU code is always built on windows but not mac or linux. It is enabled at runtime with the --enable-gpu-plugin switch. Redesigned CommandBuffer interface so it exposes shared memory through a Buffer. This was necessary because Pepper has no notion of shared memory handles. The Buffer exposes the shared memory as both a handle (through base::SharedMemory) and the mapped address and size. Refactored CommandBufferEngine so mapped shared memory addresses and sizes are returned with a single call rather than two separate calls. Added 3D demo to pepper test plugin. TEST=try servers BUG=none Review URL: http://codereview.chromium.org/367002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35185 0039d316-1c4b-4281-b951-d872f2087c98
* Add a Python script which analyzes information about steams from NPSPY's ↵jam@chromium.org2009-12-151-0/+105
| | | | | | | | logs. I figured I'd commit it in case someone finds it useful in the future. Review URL: http://codereview.chromium.org/491055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34592 0039d316-1c4b-4281-b951-d872f2087c98
* Beef up NPSPY a bit while tracking down bug 28809. This adds proper logging ↵jam@chromium.org2009-12-1115-311/+548
| | | | | | | | to the new NPAPI functions along with the UI to disable it. I also started to use std::string in places which used fixed buffers, since they caused crashes. Review URL: http://codereview.chromium.org/486017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34372 0039d316-1c4b-4281-b951-d872f2087c98
* The union and first level nested struct were vestiges of the previoussehr@google.com2009-12-111-18/+16
| | | | | | | | device context design. Remove them and shorten the paths to 2D members. Also add "reserved" void* to allow quick access to implementation data. Review URL: http://codereview.chromium.org/490009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34359 0039d316-1c4b-4281-b951-d872f2087c98
* Stray , at the end of one of the enums causes a fail with pedanticsehr@google.com2009-12-091-1/+1
| | | | | | | | warnings turned on (such as for Native Client). Review URL: http://codereview.chromium.org/482005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34191 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor the pepper API implementation to make it more scalable as we add morebrettw@chromium.org2009-12-071-5/+13
| | | | | | | | | | | device types. Implement a stub of the 3D device API. Fix style in some of the plugin related code. TEST=run the pepper_test_plugin BUG=none Review URL: http://codereview.chromium.org/468012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33989 0039d316-1c4b-4281-b951-d872f2087c98
* Update the Pepper APIs to the latest spec for the 2D demo plugin.brettw@chromium.org2009-12-013-7/+245
| | | | | | | | | | | | | | | | | | | | | This also adds the npapi headers to the npapi.gyp file since I got tired of Visual Studio not finding the files. This removes the "open file in sandbox" feature which it doesn't look like we will use. One more significant change is that I changed to including pepper.h in all cases, even when pepper is disabled. We used to have a forward declare in npapi.h for the structs in question, but we'll be adding a lot more structs for the different contexts and I don't think this will scale. I think its OK fo rthe pepper API declarations to be available when Pepper isn't enabled. BUT=none TEST=none Review URL: http://codereview.chromium.org/453015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33501 0039d316-1c4b-4281-b951-d872f2087c98
* testjam@chromium.org2009-11-231-1/+1
| | | | | | Review URL: http://codereview.chromium.org/434021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32855 0039d316-1c4b-4281-b951-d872f2087c98
* testjam@chromium.org2009-11-211-1/+1
| | | | | | Review URL: http://codereview.chromium.org/430005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32751 0039d316-1c4b-4281-b951-d872f2087c98
* make npspy look for flash binariesjam@chromium.org2009-11-191-58/+68
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32548 0039d316-1c4b-4281-b951-d872f2087c98
* One more nit discovered by the NaCl build's higher warning level.sehr@google.com2009-11-031-1/+1
| | | | | | Review URL: http://codereview.chromium.org/355004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30785 0039d316-1c4b-4281-b951-d872f2087c98
* A few small changes to make npapi header files useful in thesehr@google.com2009-11-022-7/+9
| | | | | | | | | native client build (and in the toolchain, which is where the #ifdef stuff comes from). Review URL: http://codereview.chromium.org/342079 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30759 0039d316-1c4b-4281-b951-d872f2087c98
* To facilitate apatrick's work on the 3D renderer for Pepper,sehr@google.com2009-10-311-154/+1
| | | | | | | | | | I am splitting out the pepper-specific portions of npapi.h. This is because his code currently relies on a version of npapi.h different from third_party\npapi\bindings. Review URL: http://codereview.chromium.org/343069 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30671 0039d316-1c4b-4281-b951-d872f2087c98
* Make Pepper NPN variable return a pointer to an allocatedsehr@google.com2009-10-271-31/+43
| | | | | | | | | | structure rather than using several variables. Added a stub DestroyRendererContext function. Updates the test to work with the changes. Review URL: http://codereview.chromium.org/322003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30213 0039d316-1c4b-4281-b951-d872f2087c98
* Implemented NPN_ScheduleTimer and NPN_UnscheduleTimer.apatrick@google.com2009-10-261-1/+1
| | | | | | | | | TEST=none BUG=18020 Review URL: http://codereview.chromium.org/329013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30105 0039d316-1c4b-4281-b951-d872f2087c98
* Moved Pepper delegate definition to chrome\renderer to allow it to usesehr@google.com2009-10-171-0/+4
| | | | | | | | | | | code from chrome\common. Also added canvas support and hooked up NPAPI interface functions. No tests have been added yet, so this is probably not fully ready. Review URL: http://codereview.chromium.org/291001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29380 0039d316-1c4b-4281-b951-d872f2087c98
* Hooked up the WebInputEvent data structure to the webplugin_delegatesehr@google.com2009-10-141-2/+2
| | | | | | | | | | interface for passing events to the module. Slightly tweaked the definition of keyboard events from Nicholas' specification because the characters have become wchar_t. Review URL: http://codereview.chromium.org/266054 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@29023 0039d316-1c4b-4281-b951-d872f2087c98
* First version of pepper api implementation:sehr@google.com2009-10-121-0/+144
| | | | | | | | | | | | | | | Adds a severely pared down version of webplugin_delegate files that are not currently used to create any instances. Also adds calls for render APIs that remain to be connected to the impelementation. The function pointers are returned by NPN_GetValue calls with new enumerated values. I have also added Nicholas' NPEvent definitions. These changes are to permit further collaboration between sehr, brettw, and cpu. Review URL: http://codereview.chromium.org/270024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28730 0039d316-1c4b-4281-b951-d872f2087c98
* Implement NPN_GetValueForURL and NPN_SetValueForURL and add a stub for ↵jam@chromium.org2009-10-071-1/+1
| | | | | | | | | NPN_GetAuthenticationInfo. With these NPAPI functions there's no need to simulate being in Firefox and implement NPN_GetValue for NPNVserviceManager. TEST=run manual test that Ken added in test\data\plugin over http Review URL: http://codereview.chromium.org/251101 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28200 0039d316-1c4b-4281-b951-d872f2087c98