summaryrefslogtreecommitdiffstats
path: root/chrome/plugin
Commit message (Collapse)AuthorAgeFilesLines
* Move app/gfx/canvas and app/gfx/font to gfx/.ben@chromium.org2010-03-231-1/+1
| | | | | | | | | | TBR=darin BUG=none TEST=none Review URL: http://codereview.chromium.org/1132006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42312 0039d316-1c4b-4281-b951-d872f2087c98
* Remove dependency from webkit on chrome/common by moving files to src/app.pinkerton@chromium.org2010-03-193-3/+3
| | | | | | | | BUG=37985 TEST=no functional change. Review URL: http://codereview.chromium.org/1060001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42101 0039d316-1c4b-4281-b951-d872f2087c98
* Move more files to toplevel gfx.ben@chromium.org2010-03-191-1/+3
| | | | | | | | | TBR=darin BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42071 0039d316-1c4b-4281-b951-d872f2087c98
* Don't auto-close the renderer-side plugin channel file descriptor in themark@chromium.org2010-03-183-28/+46
| | | | | | | | | | | | | | | | | renderer process. Wait until the renderer has proved that it has access to its end of the socket before closing it manually. BUG=38459 TEST=Test case from bug 26754 comment 9 (affected Macs only): 1. Have lots of bookmarks (import Safari defaults) 2. Right-click on bookmark bar, and choose "Open All Bookmarks" Expect: no crash, no sad tabs, none of the following messages logged: a. LOG(ERROR) << "Refusing use of missing IPC channel " ... b. LOG(FATAL) << "Denying attempt to reuse initial IPC channel for " ... This test should be repeated many times. Review URL: http://codereview.chromium.org/1066001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41957 0039d316-1c4b-4281-b951-d872f2087c98
* Move some more files to toplevel gfx dir.ben@chromium.org2010-03-175-5/+5
| | | | | | | | | TBR=darin BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41812 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed problem with Pepper 3D plugins not rendering on Mac OS X if theykbr@google.com2010-03-162-8/+14
| | | | | | | | | | | only expect to repaint once. BUG=37961 TEST=OS X: ran Pepper test plugin, GLES2 book demos as trusted Pepper plugins Review URL: http://codereview.chromium.org/1023001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41751 0039d316-1c4b-4281-b951-d872f2087c98
* Move base/gfx contents to gfx/ben@chromium.org2010-03-141-1/+1
| | | | | | | | | TBR=darin BUG=none TEST=none git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41559 0039d316-1c4b-4281-b951-d872f2087c98
* Rename uses of GPUPlugin in class names and IPC to AcceleratedSurface.pinkerton@chromium.org2010-03-124-22/+23
| | | | | | | | BUG=none TEST=Purely cleanup, no functional changes. Review URL: http://codereview.chromium.org/855003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41435 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the CoreAnimation drawing model for plug-ins, sharing IPC and some ↵pinkerton@chromium.org2010-03-103-1/+32
| | | | | | | | | rendering code with the GPU Plug-in. The drawing model negotiation is currently disabled so this should have no visible impact to plug-ins. BUG=32012 TEST=make sure the pepper GPU plug-ins still work. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41194 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 41158 - Implement the CoreAnimation drawing model for plugins, ↵pinkerton@chromium.org2010-03-103-32/+1
| | | | | | | | | | | | sharing IPC and some rendering code with the GPU Plugin. The drawing model negotiation is currently disabled so this should have no visible impact to plugins. BUG=32012 TEST=make sure the pepper GPU plugins still work. Review URL: http://codereview.chromium.org/673001 TBR=pinkerton@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41159 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the CoreAnimation drawing model for plug-ins, sharing IPC and some ↵pinkerton@chromium.org2010-03-103-1/+32
| | | | | | | | | | rendering code with the GPU Plug-in. The drawing model negotiation is currently disabled so this should have no visible impact to plug-ins. BUG=32012 TEST=make sure the pepper GPU plug-ins still work. Review URL: http://codereview.chromium.org/673001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41158 0039d316-1c4b-4281-b951-d872f2087c98
* BSD ifdefs, etc. necessary for chrome/pvalchev@google.com2010-03-093-36/+36
| | | | | | Review URL: http://codereview.chromium.org/656009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41067 0039d316-1c4b-4281-b951-d872f2087c98
* Make plugin buffer changes robust against synchronous plugin call nestingstuartmorgan@chromium.org2010-03-062-24/+33
| | | | | | | | | | | | | Makes SetWindowlessBuffer take a rect argument so it doesn't depend on the delegate being updated, then makes UpdateGeometry call that first so that changes can't accidentally be handled in reverse order if calling into the plugin's SetWindow results in nesting. Also combines updating the plugin geometry and context on the Mac into one call, since we don't want the plugin to have mismatched context and size information. Unblacklists Move Networks player on the Mac since these changes fix its crash. BUG=28298 TEST=Open the Move Networks sample on the Mac, and resize it. It should play without crashing. Review URL: http://codereview.chromium.org/668186 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40841 0039d316-1c4b-4281-b951-d872f2087c98
* Added support for opening a GPU command buffer from a renderer processes ↵apatrick@chromium.org2010-03-054-14/+24
| | | | | | | | | | | | through a GPU channel. Probably only works in windows only so far. TEST=none BUG=none Review URL: http://codereview.chromium.org/657046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40783 0039d316-1c4b-4281-b951-d872f2087c98
* Mac Plugin context handling cleanupstuartmorgan@chromium.org2010-03-051-1/+9
| | | | | | | | | | | | | | | | Fixes a number of things about how the shared buffer context is handled for plugins on the Mac: - Explicitly send paint events to QuickDraw plugins. This was being done before only because of a missing break in a switch statement, but we do actually want to send them since that's the only way those plugins know when we have invalidated part of their content (e.g., on first paint, or because the window focus changed). Also moves the window-scraping to after the paint event, instead of before, so we get the latest bits (and moves that code to a new method for clarity). - Remove context save/restore from HandleInputEvent, since CoreGraphics plugins are not allowed to paint outside of handling a paint event. - Add safety checks to context save/restore in WindowlessPaint and WebPluginProxy's paint, to correctly handle resizes that happen during paint handling (using a new member variable that is independent of event model). Also renames cg_context_ for clarity. BUG=none TEST=QuickDraw plugins (e.g., QuickTime) should no longer have a flicker of painting artifacts when they are first drawn. Review URL: http://codereview.chromium.org/668113 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40739 0039d316-1c4b-4281-b951-d872f2087c98
* Fixes to 10.6 port of GPU plugin after recent backport to 10.5 andkbr@google.com2010-03-021-9/+9
| | | | | | | | | | | (apparently) other recent changes. BUG=none TEST=ran Pepper test plugin with both 10.6 and 10.5 code paths Review URL: http://codereview.chromium.org/661391 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40417 0039d316-1c4b-4281-b951-d872f2087c98
* Fix formatting nits.wtc@chromium.org2010-02-272-2/+2
| | | | | | | | | R=eroman BUG=none TEST=No compilation errors. Review URL: http://codereview.chromium.org/660223 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40201 0039d316-1c4b-4281-b951-d872f2087c98
* Deprecate file_util::AppendToPath() on non-Windows.evan@chromium.org2010-02-261-5/+7
| | | | | | | | | | | | We still have ~150 callers to AppendToPath in our code, but most of them are in the installer and I'm reluctant to fiddle with that code without having an easy way to test it. BUG=24672 Review URL: http://codereview.chromium.org/654013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40120 0039d316-1c4b-4281-b951-d872f2087c98
* Give Mac plugin processes descriptive names for Activity Monitorstuartmorgan@chromium.org2010-02-242-0/+21
| | | | | | | | | BUG=none TEST=Open Activity Monitor, and visit a page with a plugin. The plugin process should show the name of the plugin. Review URL: http://codereview.chromium.org/659007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39950 0039d316-1c4b-4281-b951-d872f2087c98
* I just put the code that does not compile on ARM. Trybots will fail because ↵apatrick@chromium.org2010-02-243-24/+149
| | | | | | | | | | | | | | 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-241-2/+2
| | | | | | Review URL: http://codereview.chromium.org/652161 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39852 0039d316-1c4b-4281-b951-d872f2087c98
* Add 3D support for the Mac on Leopard (OS X 10.5) and earlier. This CL usesdspringer@google.com2010-02-232-1/+33
| | | | | | | | | | | | | | | | | FBO rendering with glGetTexImage() into a TransportDIB that is then used as a texture for rendering the final image in the render view in the browser. While not optimal, it works and can be optimized later, after the new GPU process work is completed. This CL also enables stencil buffer support on the Mac. All the Pepper3D demos run on the Mac with these changes. BUG=none TEST=3D rendering unit tests. Review URL: http://codereview.chromium.org/647043 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39744 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 39530 - GPU plugin forwards repaint events to Pepper plugin.apatrick@chromium.org2010-02-203-149/+24
| | | | | | | | | | | | | | | | 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-203-24/+149
| | | | | | | | | | | | | 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
* Pulled out Callback code into base/callback.h. This is the first step ↵akalin@chromium.org2010-02-191-0/+1
| | | | | | | | | | | | | towards redoing the Callback interfaces. Added and removed includes as needed. BUG=35223 TEST=trybots Review URL: http://codereview.chromium.org/646061 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39419 0039d316-1c4b-4281-b951-d872f2087c98
* Make SharedMemory use uint32 instead of size_t. This removes the remaining ↵jam@chromium.org2010-02-164-6/+6
| | | | | | | | size_t's from the IPC code. Review URL: http://codereview.chromium.org/581001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39164 0039d316-1c4b-4281-b951-d872f2087c98
* Fix some issues with compiling Mac plugin code with deprecation defines setstuartmorgan@chromium.org2010-02-162-0/+4
| | | | | | | | | | | | 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
* Implemented async flushes for Pepper 3D.apatrick@chromium.org2010-02-092-18/+32
| | | | | | | | | | | 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
* Send window frame information to Mac plugins via IPCstuartmorgan@chromium.org2010-02-082-5/+25
| | | | | | | | | | | | | | | | | | | Sends any window frame and relevent content view location changes to the plugin process via IPC, so that the plugin process always knows where the plugin is rather than only knowing when the mouse is within the plugin area. This will be necessary for supporting NPN_ConvertPoint, and for supporting Java2 as currently implemented. Related changes: - Now that window information is being sent on init and un-hide, use that to get correct initial window focus information. - Add a missing window focus change notification uncovered by the above. - Use live mouse location for idle events, instead of a cached location, now that we have live plugin frame information. - Refactor and simplify the logic for moving the plugin. Note that containing_window_frame_ is currently unused, but will be shortly for NPN_ConvertPoint, and is so closely related to the added IPC that I added it now rather than having to immediately change the new messages and functions. BUG=34046,31858,31543,29457 TEST=Mouse tracking in Carbon plugins should still work correctly, even across window moves, info/bookmark bar show/hides, etc. (Automated tests of location tracking will follow shortly with full NPN_ConvertPoint implementation.) Review URL: http://codereview.chromium.org/573015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38361 0039d316-1c4b-4281-b951-d872f2087c98
* [GPU] Get GPU process running on the mackbr@google.com2010-02-034-2/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Initial port of GPU process / plugin to Mac OS X. Uses new IOSurface APIs and therefore currently runs only on 10.6. Alternate strategy will need to be devised for 10.5. Slight UI issues remain such as GPU plugins initially showing up in the wrong place on the page. These will be fixed in follow-on bugs. Minimal changes made to command buffer code to get it to compile on Mac OS X. Commented out use of nested anonymous namespaces in gles2_cmd_decoder.cc which were causing the linker to crash with a seg fault. Refactored gyp files so the OS test enabling the GPU plugin is in one place, common.gypi, and other files test only the variable enable_gpu. Slight change to gles2_demo_cc.cc to add some simple animation to verify that updates from the GPU plugin are reaching the screen. Changed Pepper test plugin to use 3D view by default and commented out use of audio context because of recent issues. TEST=none (ran Pepper Test Plugin with 3D view enabled) BUG=http://crbug.com/25988 Review URL: http://codereview.chromium.org/558035 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37934 0039d316-1c4b-4281-b951-d872f2087c98
* Hide/show cursor according to NSCursor requests.avi@chromium.org2010-02-021-9/+42
| | | | | | | | | BUG=http://crbug.com/32703 TEST=when hiding cursor (Flash 10.1), cursor hides (but doesn't stay hidden; that's a different bug) Review URL: http://codereview.chromium.org/560003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37841 0039d316-1c4b-4281-b951-d872f2087c98
* Add tab switch notification to the Mac plugin plumbing.stuartmorgan@chromium.org2010-02-013-3/+11
| | | | | | | | | | | | | | | | | | | Using the new notification: - Update plugin clip rect when it's not in a visible tab. - Update plugin idle event rate when it's not in a visible tab. - Switch the unfocus-on-tab-switch event to be based on the this new notification, instead of a browser-level broadcast. Related changes: - Stop sending redundant focus events to plugins. - Send window activation to Carbon event plugins too, not just Cocoa. - Now that plugins are getting window and tab de-focus events directly, remove the older hack to force all plugins to lose focus any window or tab loses focus. BUG=29371, 32229, 30838 TEST=Flash should still only register keystrokes when it is in the active window+tab. Plugins in background tabs should use less CPU. Review URL: http://codereview.chromium.org/548224 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37743 0039d316-1c4b-4281-b951-d872f2087c98
* Propagate window focus changes to plugins on the Macstuartmorgan@chromium.org2010-02-012-0/+14
| | | | | | | | | | | This gives plugins mostly correct window activation information; there are still a few loose ends like initial focus state and changes that happen while plugins are in background tabs, but those will be handled in follow-up bugs. BUG=31847 TEST=Plugins that are in background windows should act accordingly (e.g., Silverlight hover effects shouldn't trigger) Review URL: http://codereview.chromium.org/549194 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37694 0039d316-1c4b-4281-b951-d872f2087c98
* Fix passing pointers between processes.jam@chromium.org2010-01-294-96/+56
| | | | | | | BUG=31880 Review URL: http://codereview.chromium.org/558036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37555 0039d316-1c4b-4281-b951-d872f2087c98
* Redesigned CommandBuffer and NPDevice3D interfaces.apatrick@chromium.org2010-01-292-32/+10
| | | | | | | | | | | | 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
* Plumb Carbon SetCursor through.avi@chromium.org2010-01-252-0/+10
| | | | | | | | | BUG=http://crbug.com/32703 TEST=when hiding cursor (Flash 10.0), cursor hides (but doesn't stay hidden; that gets fixed later) Review URL: http://codereview.chromium.org/552132 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37028 0039d316-1c4b-4281-b951-d872f2087c98
* Committing change by Thatcher Ulrich <tulrich@google.com> from ↵jam@chromium.org2010-01-222-4/+14
| | | | | | | | | | | | | | http://codereview.chromium.org/543097 Check NPClass::structVersion before accessing fields that don't exist in all versions: NPClass::constructor and NPClass::enumerate BUG=32387 TESTED=manual and in debugger Review URL: http://codereview.chromium.org/545176 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36911 0039d316-1c4b-4281-b951-d872f2087c98
* Send Cocoa NPAPI plugins an initial window activation eventstuartmorgan@chromium.org2010-01-212-0/+8
| | | | | | | | | | | | | Until we have real window activation status, just send a window focus event so that Cocoa plugins always think their window is active (as is currently the case with Carbon plugins). Also wire up the Carbon interposing on window activation checks to talk to the delegate, so once the delegate has correct information Carbon will Just Work. BUG=31847 TEST=Flash 10.1 should track the mouse when the plugin is loaded, without having to click in it first. Review URL: http://codereview.chromium.org/552067 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36754 0039d316-1c4b-4281-b951-d872f2087c98
* The renderer and plugin processes can send over raw NPObjects valid in the ↵ananta@chromium.org2010-01-2010-56/+135
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | other side's address space. Basically the way this works is if an NPObject is marshaled over to the other side, an NPObjectStub is created in the caller address space and a NPObjectProxy is created on the other side. The NPObjectProxy is passed the raw NPObject pointer which is used as a cookie. If the original NPObject needs to be passed back we pass the underlying NPObject saved in the NPObjectProxy. The receiver does not validate whether this NPObject is valid before invoking on it. While this is mostly fine, in the case of a compromised renderer invalid addresses could be passed back to the plugin which would invoke on these addresses and crash. Fix is to never pass raw object pointers across and just pass the corresponding routing id of the NPObjectStub. The receiver validates this object by invoking a new method GetNPObjectListenerForRoute on the PluginChannelBase. This method returns the corresponding NPObject listener for the routing id. We then retrieve the underlying NPObject from the listener and use it. The map of NPObjectListeners which is maintained by PluginChannelBase has been changed to hold NPObjectBase pointers instead. NPObjectStub and NPObjectProxy implement the new NPObjectBase interface which provides methods to return the underlying NPObject and the IPC::Channel::Listener pointer. Fixes bug http://code.google.com/p/chromium/issues/detail?id=31880 I verified with the steps outlined in the bug that this fix does address the underlying crash. Bug=31880 Test=We need a framework to test PluginChannel and NPObjectProxy/Stub. Will add a test case for this once we have this in place. Review URL: http://codereview.chromium.org/548046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36618 0039d316-1c4b-4281-b951-d872f2087c98
* (Mac) Intercept (Cocoa) cursor setting by plugins and forward it on properly.avi@chromium.org2010-01-191-1/+20
| | | | | | | | | BUG=http://crbug.com/20717 TEST=as in bug; this covers new Flash Review URL: http://codereview.chromium.org/554003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36554 0039d316-1c4b-4281-b951-d872f2087c98
* (Mac) Allow the tracking of the "active" plugin delegate separate from the ↵avi@chromium.org2010-01-192-0/+8
| | | | | | | | | | | fake windows. BUG=http://crbug.com/20717 TEST=none; no visible change Review URL: http://codereview.chromium.org/549085 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36533 0039d316-1c4b-4281-b951-d872f2087c98
* (Mac) Intercept (Carbon) cursor setting by plugins and forward it on properly.avi@chromium.org2010-01-152-0/+14
| | | | | | | | | BUG=http://crbug.com/20717 TEST=as in bug; this covers old Flash Review URL: http://codereview.chromium.org/550062 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36416 0039d316-1c4b-4281-b951-d872f2087c98
* Set disabled style on GPU window and plugin intermediate window so mouse ↵apatrick@chromium.org2010-01-151-0/+6
| | | | | | | | | | | messages pass through to the browser window. TEST=trybots BUG=none Review URL: http://codereview.chromium.org/549025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36311 0039d316-1c4b-4281-b951-d872f2087c98
* linux: implement gpu pluginpiman@chromium.org2010-01-062-6/+6
| | | | | | | | Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=35509 Review URL: http://codereview.chromium.org/500132 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35612 0039d316-1c4b-4281-b951-d872f2087c98
* linux: work around LAHF bug in Flashevan@chromium.org2010-01-052-1/+81
| | | | | | | | | | | | | 64-bit Flash uses the LAHF instruction, which isn't available on some CPUs. Work around this by catching SIGILL and emulating the instruction. BUG=29789 TEST=flash works on more computers than before, nothing else changes Review URL: http://codereview.chromium.org/517031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35536 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 35509 - linux: implement gpu pluginpiman@chromium.org2010-01-052-6/+6
| | | | | | | | | Review URL: http://codereview.chromium.org/500132 TBR=piman@chromium.org Review URL: http://codereview.chromium.org/525022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35511 0039d316-1c4b-4281-b951-d872f2087c98
* linux: implement gpu pluginpiman@chromium.org2010-01-052-6/+6
| | | | | | Review URL: http://codereview.chromium.org/500132 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35509 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: use readlink() and prctl() in SetProcTitle() to fix "exe" showing in ↵mdm@chromium.org2010-01-031-1/+6
| | | | | | | | | | | process listings. BUG=29118 TEST=none Review URL: http://codereview.chromium.org/490028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35441 0039d316-1c4b-4281-b951-d872f2087c98
* Added Pepper 3D device that instantiates the GPU plugin and sends GLES2 ↵apatrick@google.com2009-12-225-20/+34
| | | | | | | | | | | | | | | | | | | | | | | 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 CreateBridge method to the ChildThread.jcampan@chromium.org2009-12-191-13/+16
| | | | | | | | | | | | | The intent is to allow unit-tests that use render view to override ChildThread::CreateBridge() to provide their own resource loading. This is used by the upcoming translate unit-test. BUG=None TEST=None Review URL: http://codereview.chromium.org/503032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35014 0039d316-1c4b-4281-b951-d872f2087c98