소스 검색

Allow resize() to work before a window is created.

Former-commit-id: 7ae96b905e5826b84cd65173e633111181f8e6a5
Jérémie Dumas 8 년 전
부모
커밋
fc87a2e21e
1개의 변경된 파일7개의 추가작업 그리고 1개의 파일을 삭제
  1. 7 1
      include/igl/viewer/Viewer.cpp

+ 7 - 1
include/igl/viewer/Viewer.cpp

@@ -278,6 +278,8 @@ namespace viewer
 
   IGL_INLINE Viewer::Viewer()
   {
+    window = nullptr;
+
 #ifdef IGL_VIEWER_WITH_NANOGUI
     ngui = nullptr;
     screen = nullptr;
@@ -842,7 +844,11 @@ namespace viewer
 
   IGL_INLINE void Viewer::resize(int w,int h)
   {
-    glfwSetWindowSize(window, w/highdpi, h/highdpi);
+    if (window) {
+      glfwSetWindowSize(window, w/highdpi, h/highdpi);
+    } else {
+      resize_callback(w, h);
+    }
   }
 
   IGL_INLINE void Viewer::resize_callback(int w,int h)