summaryrefslogtreecommitdiffstats
path: root/third_party
diff options
context:
space:
mode:
authorapatrick@chromium.org <apatrick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-20 00:56:25 +0000
committerapatrick@chromium.org <apatrick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-02-20 00:56:25 +0000
commitd717e03b637b8bd133db3fde5f3108b999a51a88 (patch)
treeaca70991012a49441d24bbd201d894903ba05416 /third_party
parent5fe524efcaf51b401067d936b5ff331249dc99df (diff)
downloadchromium_src-d717e03b637b8bd133db3fde5f3108b999a51a88.zip
chromium_src-d717e03b637b8bd133db3fde5f3108b999a51a88.tar.gz
chromium_src-d717e03b637b8bd133db3fde5f3108b999a51a88.tar.bz2
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
Diffstat (limited to 'third_party')
-rw-r--r--third_party/npapi/bindings/npapi_extensions.h10
1 files changed, 10 insertions, 0 deletions
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;