summaryrefslogtreecommitdiff
path: root/platform/windows
diff options
context:
space:
mode:
authorclayjohn <claynjohn@gmail.com>2022-09-12 14:57:11 -0700
committerclayjohn <claynjohn@gmail.com>2022-09-12 17:30:50 -0700
commit96b7cb66df340e7f2ab379c7eefd29d74ea9e3a9 (patch)
treedc5bbbc47e31157421aa323de9a78fd19ad29b17 /platform/windows
parent79b21e96ad7a154e6c64a88150c98bd4dea52e91 (diff)
Fix multiwindow support in GLES3 for X11, Windows, and MacOS.
Instead of updating all viewports, then blitting all viewports to the backbuffer, then swapping all buffers, we run through all viewports and render, blit, and swap backbuffer before going to the next viewport.
Diffstat (limited to 'platform/windows')
-rw-r--r--platform/windows/gl_manager_windows.cpp7
1 files changed, 1 insertions, 6 deletions
diff --git a/platform/windows/gl_manager_windows.cpp b/platform/windows/gl_manager_windows.cpp
index d509ff8c51..7689751f1b 100644
--- a/platform/windows/gl_manager_windows.cpp
+++ b/platform/windows/gl_manager_windows.cpp
@@ -289,12 +289,7 @@ void GLManager_Windows::make_current() {
}
void GLManager_Windows::swap_buffers() {
- // on other platforms, OpenGL swaps buffers for all windows (on all displays, really?)
- // Windows swaps buffers on a per-window basis
- // REVISIT: this could be structurally bad, should we have "dirty" flags then?
- for (KeyValue<DisplayServer::WindowID, GLWindow> &entry : _windows) {
- SwapBuffers(entry.value.hDC);
- }
+ SwapBuffers(_current_window->hDC);
}
Error GLManager_Windows::initialize() {