X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fvideo_output%2Fwindow.c;h=e5f4c25bead61daf2b805fade7f35999150207bf;hb=12ade3e3bc975d5426ba4af155b7372c31093b31;hp=7a6338d216dd323310b1c09d93345090fa91fc7a;hpb=27cdd6eb494feb8da6ea6fd4112b1b066b5f4f3a;p=vlc diff --git a/src/video_output/window.c b/src/video_output/window.c index 7a6338d216..e5f4c25bea 100644 --- a/src/video_output/window.c +++ b/src/video_output/window.c @@ -31,6 +31,7 @@ #include #include +#include #include "inhibit.h" #include @@ -50,6 +51,7 @@ vout_window_t *vout_window_New(vlc_object_t *obj, vout_window_t *window = &w->wnd; window->cfg = cfg; + memset(&window->handle, 0, sizeof(window->handle)); window->control = NULL; window->sys = NULL; @@ -60,13 +62,19 @@ vout_window_t *vout_window_New(vlc_object_t *obj, #ifdef WIN32 case VOUT_WINDOW_TYPE_HWND: type = "vout window hwnd"; - window->hwnd = NULL; + window->handle.hwnd = NULL; + break; +#endif +#ifdef __APPLE__ + case VOUT_WINDOW_TYPE_NSOBJECT: + type = "vout window nsobject"; + window->handle.nsobject = NULL; break; #endif case VOUT_WINDOW_TYPE_XID: type = "vout window xid"; - window->xid = 0; - window->x11_display = NULL; + window->handle.xid = 0; + window->display.x11 = NULL; break; default: assert(0); @@ -79,9 +87,9 @@ vout_window_t *vout_window_New(vlc_object_t *obj, } /* Hook for screensaver inhibition */ - if (cfg->type == VOUT_WINDOW_TYPE_XID) { + if ( var_InheritBool( obj, "disable-screensaver" ) && cfg->type == VOUT_WINDOW_TYPE_XID) { w->inhibit = vlc_inhibit_Create (VLC_OBJECT (window), - window->xid); + window->handle.xid); if (w->inhibit != NULL) vlc_inhibit_Set (w->inhibit, true); /* FIXME: ^ wait for vout activation, pause */