summaryrefslogtreecommitdiffstats
path: root/o3d/plugin/npapi_host_control
Commit message (Collapse)AuthorAgeFilesLines
* Switched from NPObject shared memory wrapper to Chrome shared memory in ↵apatrick@google.com2009-11-108-12/+12
| | | | | | | | | | | preparation for moving from NPAPI to Chrome IPC for synchronous messages. Started work on an O3D configuration that will use Pepper 3D to connect to a remote GPU plugin. This is not building yet. Updated to latest NPAPI from nixysa. Review URL: http://codereview.chromium.org/371074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31519 0039d316-1c4b-4281-b951-d872f2087c98
* This change kills the SCons build, since we have switched completelygspencer@google.com2009-11-021-104/+0
| | | | | | | | | over to GYP. It also copies the contents of DEPS_gyp to DEPS, and removes the DEPS_gyp file. Review URL: http://codereview.chromium.org/354011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30729 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed crash in Internet Explorer on Windows XP caused by recentkbr@google.com2009-09-221-2/+2
| | | | | | | | | | full-screen changes in http://codereview.chromium.org/210005 . Call CComControlBase::IOleInPlaceObject_SetObjectRects directly as the superclass implementation of CHostControl::SetObjectRects. Review URL: http://codereview.chromium.org/216055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26870 0039d316-1c4b-4281-b951-d872f2087c98
* Rewrote full-screen support on Windows. O3D now always creates its ownkbr@google.com2009-09-174-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | window in which to render, rather than rendering into either the browser's window or a separate full-screen window. The O3D window is removed from the browser's hierarchy and made top-level in order to go to full-screen mode via Direct3D. This solves fundamental focus fighting problems seen on Windows Vista. This change allowed the event forwarding code in the plugin's window message loop to be deleted, but a new workaround for a flicker upon the first mouse click in O3D in Firefox was required. Split the Renderer's fullscreen API into GoFullscreen and CancelFullscreen to solve chicken-and-egg problems with coming out of full-screen mode. Changed how the plugin detects resize events. Rather than responding to WM_SIZE messages, NPP_SetWindow is now responsible for propagating resize events to the client. Changed the ActiveX host control to call NPP_SetWindow in response to SetObjectRects. Fixed RendererGL::IsCurrent() on non-Mac platforms. Removed the bogus current_renderer_ static variable. Tested the following scenarios in IE and Firefox on Windows: - Full-screen involving display mode change, Escape to exit. - Full-screen involving display mode change, Alt-Tab to exit. - Full-screen involving display mode change, Alt-F4 to exit. - Full-screen involving display mode change, timeout to exit. - Full-screen with no display mode change, Escape to exit. - Full-screen with no display mode change, Alt-Tab to exit. - Full-screen with no display mode change, Alt-F4 to exit. - Full-screen with no display mode change, timeout to exit. - Beach demo, particle demo, other tests. Tested the following scenarios on the Mac in Safari (for which the code path didn't change): - Full-screen, escape to exit. - Full-screen, Alt-Tab to exit. - Full-screen, timeout to exit. When http://crbug.com/21921 is fixed, full-screen mode will work on Windows Vista with Aero on in Chrome. Review URL: http://codereview.chromium.org/210005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26489 0039d316-1c4b-4281-b951-d872f2087c98
* Asynchronous tick now uses NPN_PluginAsyncCall.URL streaming callbacks are ↵apatrick@google.com2009-08-034-1/+38
| | | | | | | | now also asynchronous.Implemented NPN_PluginAsyncCall for IE.Allowed WM_PAINT handler to be reentered because it no longer calls into the browser (except to schedule an asynchronous tick if none is pending).Fixed a bug where the EventManager would crash if an event callback called cleanUp on the client.Cleanup destroys all the packs. Doing this in NPP_Destroy seems to make Chrome timeout and fail to load the next page.Tar and GZ decoding happens on a new thread. Review URL: http://codereview.chromium.org/155733 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22305 0039d316-1c4b-4281-b951-d872f2087c98
* Removed HostControl implementation of IPersistStreamInitImpl.apatrick@google.com2009-07-291-3/+0
| | | | | | | See http://msdn.microsoft.com/en-us/visualc/ee309358.aspx. According to the description of the vulnerability, O3D is not vulnerable. But HostControl does not need to implement this interface anyway so I'm removing it. Review URL: http://codereview.chromium.org/160342 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21994 0039d316-1c4b-4281-b951-d872f2087c98
* Adds in the ActiveX control for O3D.gspencer@google.com2009-07-245-12/+17
| | | | | | Review URL: http://codereview.chromium.org/160078 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21492 0039d316-1c4b-4281-b951-d872f2087c98
* This updates the DEPS to bring them in line with the versionsgspencer@google.com2009-07-237-6/+7
| | | | | | | | | | | that Chrome is currently using, and it removes "files" from the NPAPI include paths and file location in third_party so that we can be consistent with other Chrome third party directories. TEST=build using gyp and scons and ran unit tests on each. Review URL: http://codereview.chromium.org/159277 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21415 0039d316-1c4b-4281-b951-d872f2087c98
* StreamOperation gets url scheme from full path rather than relative path. ↵apatrick@google.com2009-07-141-11/+12
| | | | | | | | Fixes IE. Review URL: http://codereview.chromium.org/155521 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20639 0039d316-1c4b-4281-b951-d872f2087c98
* Switching back SteamOperation to explicitly check for the particular ↵apatrick@google.com2009-07-131-1/+4
| | | | | | | | protocols URLOpenStream supports. Fixes IE hang. Review URL: http://codereview.chromium.org/149563 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20549 0039d316-1c4b-4281-b951-d872f2087c98
* Plugin no longer makes synchronous NPAPI calls from a Windows message ↵apatrick@google.com2009-07-134-13/+20
| | | | | | | | handler. This fixes deadlocks and slowdown in Chrome. The approach is strange. It asynchronously opens the url data:, and then invokes Tick from the finish callback. This is the simplest approach I could think of that hide widespread browser support. NPN_PluginThreadAsyncCall would be ideal but it is supported by all browsers we currently support. Review URL: http://codereview.chromium.org/149415 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20517 0039d316-1c4b-4281-b951-d872f2087c98
* Avoid calling Abort from main thread on IBinding created on another thread. ↵apatrick@google.com2009-07-102-7/+9
| | | | | | | | Instead signal through a variable and wait for it to abort itself. Review URL: http://codereview.chromium.org/149434 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20384 0039d316-1c4b-4281-b951-d872f2087c98
* Made CHostControl use atomic reference counting because it is accessed from ↵apatrick@google.com2009-06-301-1/+3
| | | | | | | | StreamOperation threads. Review URL: http://codereview.chromium.org/151096 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@19635 0039d316-1c4b-4281-b951-d872f2087c98
* This is the O3D source tree's initial commit to the Chromium tree. It gspencer@google.com2009-05-2726-0/+5742
is not built or referenced at all by the chrome build yet, and doesn't yet build in it's new home. We'll change that shortly. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17035 0039d316-1c4b-4281-b951-d872f2087c98