diff options
Diffstat (limited to 'source/blender/windowmanager/intern/wm_window.c')
-rw-r--r-- | source/blender/windowmanager/intern/wm_window.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/source/blender/windowmanager/intern/wm_window.c b/source/blender/windowmanager/intern/wm_window.c index ec806fb7c61..46a20d3bf88 100644 --- a/source/blender/windowmanager/intern/wm_window.c +++ b/source/blender/windowmanager/intern/wm_window.c @@ -55,7 +55,6 @@ #include "BKE_global.h" #include "BKE_main.h" -#include "BIF_gl.h" #include "RNA_access.h" @@ -74,6 +73,8 @@ #include "GPU_draw.h" #include "GPU_extensions.h" +#include "GPU_init_exit.h" +#include "GPU_glew.h" #include "UI_interface.h" @@ -319,8 +320,7 @@ void wm_window_title(wmWindowManager *wm, wmWindow *win) /* nothing to do for 'temp' windows, * because WM_window_open_temp always sets window title */ } - else { - + else if (win->ghostwin) { /* this is set to 1 if you don't have startup.blend open */ if (G.save_over && G.main->name[0]) { char str[sizeof(G.main->name) + 24]; @@ -353,7 +353,7 @@ float wm_window_pixelsize(wmWindow *win) } /* belongs to below */ -static void wm_window_add_ghostwindow(const char *title, wmWindow *win) +static void wm_window_add_ghostwindow(wmWindowManager *wm, const char *title, wmWindow *win) { GHOST_WindowHandle ghostwin; static int multisamples = -1; @@ -377,8 +377,11 @@ static void wm_window_add_ghostwindow(const char *title, wmWindow *win) if (ghostwin) { GHOST_RectangleHandle bounds; + /* the new window has already been made drawable upon creation */ + wm->windrawable = win; + /* needed so we can detect the graphics card below */ - GPU_extensions_init(); + GPU_init(); win->ghostwin = ghostwin; GHOST_SetWindowUserData(ghostwin, win); /* pointer back */ @@ -444,8 +447,7 @@ void wm_window_add_ghostwindows(wmWindowManager *wm) wm_init_state.start_x = 0; wm_init_state.start_y = 0; - -#if !defined(__APPLE__) && !defined(WIN32) /* X11 */ +#ifdef WITH_X11 /* X11 */ /* X11, start maximized but use default sane size */ wm_init_state.size_x = min_ii(wm_init_state.size_x, WM_WIN_INIT_SIZE_X); wm_init_state.size_y = min_ii(wm_init_state.size_y, WM_WIN_INIT_SIZE_Y); @@ -474,7 +476,7 @@ void wm_window_add_ghostwindows(wmWindowManager *wm) wm_init_state.override_flag &= ~WIN_OVERRIDE_WINSTATE; } - wm_window_add_ghostwindow("Blender", win); + wm_window_add_ghostwindow(wm, "Blender", win); } /* happens after fileread */ if (win->eventstate == NULL) @@ -1426,9 +1428,9 @@ void wm_window_set_swap_interval (wmWindow *win, int interval) GHOST_SetSwapInterval(win->ghostwin, interval); } -int wm_window_get_swap_interval (wmWindow *win) +bool wm_window_get_swap_interval(wmWindow *win, int *intervalOut) { - return GHOST_GetSwapInterval(win->ghostwin); + return GHOST_GetSwapInterval(win->ghostwin, intervalOut); } |