Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(502)

Unified Diff: src/gpu/gl/win/SkNativeGLContext_win.cpp

Issue 12455009: Unify wgl context creation. (Closed) Base URL: http://skia.googlecode.com/svn/trunk/
Patch Set: Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/gpu/gl/win/SkNativeGLContext_win.cpp
===================================================================
--- src/gpu/gl/win/SkNativeGLContext_win.cpp (revision 7977)
+++ src/gpu/gl/win/SkNativeGLContext_win.cpp (working copy)
@@ -7,6 +7,7 @@
*/
#include "gl/SkNativeGLContext.h"
+#include "SkWGL.h"
#define WIN32_LEAN_AND_MEAN
#include <Windows.h>
@@ -49,67 +50,14 @@
const GrGLInterface* SkNativeGLContext::createGLContext() {
HINSTANCE hInstance = (HINSTANCE)GetModuleHandle(NULL);
- if (!gWC) {
- WNDCLASS wc;
- wc.cbClsExtra = 0;
- wc.cbWndExtra = 0;
- wc.hbrBackground = NULL;
- wc.hCursor = LoadCursor(NULL, IDC_ARROW);
- wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
- wc.hInstance = hInstance;
- wc.lpfnWndProc = (WNDPROC) DefWindowProc;
- wc.lpszClassName = TEXT("Griffin");
- wc.lpszMenuName = NULL;
- wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;
- gWC = RegisterClass(&wc);
- if (!gWC) {
- SkDebugf("Could not register window class.\n");
- return NULL;
- }
- }
-
- if (!(fWindow = CreateWindow(TEXT("Griffin"),
- TEXT("The Invisible Man"),
- WS_OVERLAPPEDWINDOW,
- 0, 0, 1, 1,
- NULL, NULL,
- hInstance, NULL))) {
- SkDebugf("Could not create window.\n");
- return NULL;
- }
-
if (!(fDeviceContext = GetDC(fWindow))) {
SkDebugf("Could not get device context.\n");
this->destroyGLContext();
return NULL;
}
- PIXELFORMATDESCRIPTOR pfd;
- ZeroMemory(&pfd, sizeof(pfd));
- pfd.nSize = sizeof(pfd);
- pfd.nVersion = 1;
- pfd.dwFlags = PFD_SUPPORT_OPENGL;
- pfd.iPixelType = PFD_TYPE_RGBA;
- pfd.cColorBits = 32;
- pfd.cDepthBits = 0;
- pfd.cStencilBits = 0;
- pfd.iLayerType = PFD_MAIN_PLANE;
-
- int pixelFormat = 0;
- if (!(pixelFormat = ChoosePixelFormat(fDeviceContext, &pfd))) {
- SkDebugf("No matching pixel format descriptor.\n");
- this->destroyGLContext();
- return NULL;
- }
-
- if (!SetPixelFormat(fDeviceContext, pixelFormat, &pfd)) {
- SkDebugf("Could not set the pixel format %d.\n", pixelFormat);
- this->destroyGLContext();
- return NULL;
- }
-
- if (!(fGlRenderContext = wglCreateContext(fDeviceContext))) {
+ if (!(fGlRenderContext = SkCreateWGLContext(fDeviceContext, 0, true))) {
SkDebugf("Could not create rendering context.\n");
this->destroyGLContext();
return NULL;
« no previous file with comments | « include/utils/SkWGL.h ('k') | src/utils/win/SkWGL_win.cpp » ('j') | src/utils/win/SkWGL_win.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698