Chromium Code Reviews| Index: src/views/win/SkOSWindow_win.cpp |
| diff --git a/src/views/win/SkOSWindow_win.cpp b/src/views/win/SkOSWindow_win.cpp |
| index ee851a104f2e43b24d9ac754e692ad91d79f7c2d..f07a5b1646689944b4b09937296636d2347c52a9 100644 |
| --- a/src/views/win/SkOSWindow_win.cpp |
| +++ b/src/views/win/SkOSWindow_win.cpp |
| @@ -396,6 +396,36 @@ void SkOSWindow::presentGL() { |
| #if SK_ANGLE |
| +void* get_angle_egl_display(void* nativeDisplay) { |
|
jvanverth1
2016/03/29 14:45:09
Where is this used?
bsalomon
2016/03/29 17:07:59
I think something got lost when rebasing. I added
|
| + PFNEGLGETPLATFORMDISPLAYEXTPROC eglGetPlatformDisplayEXT; |
| + eglGetPlatformDisplayEXT = |
| + (PFNEGLGETPLATFORMDISPLAYEXTPROC)eglGetProcAddress("eglGetPlatformDisplayEXT"); |
| + |
| + // We expect ANGLE to support this extension |
| + if (!eglGetPlatformDisplayEXT) { |
| + return EGL_NO_DISPLAY; |
| + } |
| + |
| + EGLDisplay display = EGL_NO_DISPLAY; |
| + // Try for an ANGLE D3D11 context, fall back to D3D9, and finally GL. |
| + EGLint attribs[3][3] = { |
| + { |
| + EGL_PLATFORM_ANGLE_TYPE_ANGLE, |
| + EGL_PLATFORM_ANGLE_TYPE_D3D11_ANGLE, |
| + EGL_NONE |
| + }, |
| + { |
| + EGL_PLATFORM_ANGLE_TYPE_ANGLE, |
| + EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE, |
| + EGL_NONE |
| + }, |
| + }; |
| + for (int i = 0; i < 3 && display == EGL_NO_DISPLAY; ++i) { |
| + display = eglGetPlatformDisplayEXT(EGL_PLATFORM_ANGLE_ANGLE,nativeDisplay, attribs[i]); |
| + } |
| + return display; |
| +} |
| + |
| bool create_ANGLE(EGLNativeWindowType hWnd, |
| int msaaSampleCount, |
| EGLDisplay* eglDisplay, |