aboutsummaryrefslogtreecommitdiffstats
path: root/pugl
diff options
context:
space:
mode:
Diffstat (limited to 'pugl')
-rw-r--r--pugl/detail/implementation.c1
-rw-r--r--pugl/detail/win_gl.c2
-rw-r--r--pugl/pugl.h1
3 files changed, 3 insertions, 1 deletions
diff --git a/pugl/detail/implementation.c b/pugl/detail/implementation.c
index 53af30b..1b7d4a4 100644
--- a/pugl/detail/implementation.c
+++ b/pugl/detail/implementation.c
@@ -39,6 +39,7 @@ puglSetDefaultHints(PuglHints hints)
hints[PUGL_STENCIL_BITS] = 8;
hints[PUGL_SAMPLES] = 0;
hints[PUGL_DOUBLE_BUFFER] = PUGL_FALSE;
+ hints[PUGL_SWAP_INTERVAL] = 0;
hints[PUGL_RESIZABLE] = PUGL_FALSE;
hints[PUGL_IGNORE_KEY_REPEAT] = PUGL_FALSE;
}
diff --git a/pugl/detail/win_gl.c b/pugl/detail/win_gl.c
index 0768a4e..eb7771c 100644
--- a/pugl/detail/win_gl.c
+++ b/pugl/detail/win_gl.c
@@ -220,7 +220,7 @@ puglWinGlCreate(PuglView* view)
// Enter context and set swap interval
wglMakeCurrent(impl->hdc, surface->hglrc);
if (surface->procs.wglSwapInterval) {
- surface->procs.wglSwapInterval(1);
+ surface->procs.wglSwapInterval(view->hints[PUGL_SWAP_INTERVAL]);
}
return 0;
diff --git a/pugl/pugl.h b/pugl/pugl.h
index 1bd49bb..3284a5c 100644
--- a/pugl/pugl.h
+++ b/pugl/pugl.h
@@ -110,6 +110,7 @@ typedef enum {
PUGL_STENCIL_BITS, /**< Number of bits for stencil buffer */
PUGL_SAMPLES, /**< Number of samples per pixel (AA) */
PUGL_DOUBLE_BUFFER, /**< True if double buffering should be used */
+ PUGL_SWAP_INTERVAL, /**< Number of frames between buffer swaps */
PUGL_RESIZABLE, /**< True if window should be resizable */
PUGL_IGNORE_KEY_REPEAT, /**< True if key repeat events are ignored */