Merge pull request #3505 from kemenaran/fix-qt-viewport-resize

Fix QGLWidget viewport resize on macOS
This commit is contained in:
Merry 2018-03-11 15:25:26 +00:00 committed by GitHub
commit 141c007037
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -128,13 +128,14 @@ void GRenderWindow::moveContext() {
}
void GRenderWindow::SwapBuffers() {
#if !defined(QT_NO_DEBUG)
// Qt debug runtime prints a bogus warning on the console if you haven't called makeCurrent
// since the last time you called swapBuffers. This presumably means something if you're using
// QGLWidget the "regular" way, but in our multi-threaded use case is harmless since we never
// call doneCurrent in this thread.
// In our multi-threaded QGLWidget use case we shouldn't need to call `makeCurrent`,
// since we never call `doneCurrent` in this thread.
// However:
// - The Qt debug runtime prints a bogus warning on the console if `makeCurrent` wasn't called
// since the last time `swapBuffers` was executed;
// - On macOS, if `makeCurrent` isn't called explicitely, resizing the buffer breaks.
child->makeCurrent();
#endif
child->swapBuffers();
}