From d717e03b637b8bd133db3fde5f3108b999a51a88 Mon Sep 17 00:00:00 2001 From: "apatrick@chromium.org" Date: Sat, 20 Feb 2010 00:56:25 +0000 Subject: GPU plugin forwards repaint events to Pepper plugin. 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 --- third_party/npapi/bindings/npapi_extensions.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'third_party/npapi') diff --git a/third_party/npapi/bindings/npapi_extensions.h b/third_party/npapi/bindings/npapi_extensions.h index fca509e..011628e 100644 --- a/third_party/npapi/bindings/npapi_extensions.h +++ b/third_party/npapi/bindings/npapi_extensions.h @@ -295,6 +295,11 @@ typedef enum _NPDeviceContext3DError { NPDeviceContext3DError_GenericError } NPDeviceContext3DError; +typedef struct _NPDeviceContext3D NPDeviceContext3D; + +typedef void (*NPDeviceContext3DRepaintPtr)(NPP npp, + NPDeviceContext3D* context); + typedef struct _NPDeviceContext3D { void* reserved; @@ -322,6 +327,11 @@ typedef struct _NPDeviceContext3D // Last processed token. Synchronized on flush. int32 token; + // Callback invoked on the main thread when the context must be repainted. + // TODO(apatrick): move this out of the context struct like the rest of the + // fields. + NPDeviceContext3DRepaintPtr repaintCallback; + // Error status. Synchronized on flush. NPDeviceContext3DError error; } NPDeviceContext3D; -- cgit v1.1