XCB window: set background color to black
[vlc.git] / modules / video_output / xcb / window.c
index 0dac44f..50cef9e 100644 (file)
@@ -50,7 +50,7 @@ vlc_module_begin ()
     set_description (N_("(Experimental) XCB video window"))
     set_category (CAT_VIDEO)
     set_subcategory (SUBCAT_VIDEO_VOUT)
     set_description (N_("(Experimental) XCB video window"))
     set_category (CAT_VIDEO)
     set_subcategory (SUBCAT_VIDEO_VOUT)
-    set_capability ("vout_window", 10)
+    set_capability ("xwindow", 10)
     set_callbacks (Open, Close)
 
     add_string ("x11-display", NULL, NULL,
     set_callbacks (Open, Close)
 
     add_string ("x11-display", NULL, NULL,
@@ -79,12 +79,17 @@ static int Open (vlc_object_t *obj)
 
     /* Create window */
     xcb_screen_t *scr = xcb_aux_get_screen (conn, snum);
 
     /* Create window */
     xcb_screen_t *scr = xcb_aux_get_screen (conn, snum);
+    const uint32_t mask = XCB_CW_BACK_PIXEL;
+    uint32_t values[1] = {
+        /* XCB_CW_BACK_PIXEL */
+        scr->black_pixel,
+    };
 
     xcb_window_t window = xcb_generate_id (conn);
     ck = xcb_create_window_checked (conn, scr->root_depth, window, scr->root,
                                     0, 0, wnd->width, wnd->height, 0,
                                     XCB_WINDOW_CLASS_INPUT_OUTPUT,
 
     xcb_window_t window = xcb_generate_id (conn);
     ck = xcb_create_window_checked (conn, scr->root_depth, window, scr->root,
                                     0, 0, wnd->width, wnd->height, 0,
                                     XCB_WINDOW_CLASS_INPUT_OUTPUT,
-                                    scr->root_visual, 0, NULL);
+                                    scr->root_visual, mask, values);
     err = xcb_request_check (conn, ck);
     if (err)
     {
     err = xcb_request_check (conn, ck);
     if (err)
     {
@@ -114,7 +119,7 @@ static void Close (vlc_object_t *obj)
 {
     vout_window_t *wnd = (vout_window_t *)obj;
     xcb_connection_t *conn = wnd->p_sys;
 {
     vout_window_t *wnd = (vout_window_t *)obj;
     xcb_connection_t *conn = wnd->p_sys;
-    xcb_window_t window = (uintptr_t)wnd->handle;
+    xcb_window_t window = wnd->handle.xid;
 
     xcb_unmap_window (conn, window);
     xcb_destroy_window (conn, window);
 
     xcb_unmap_window (conn, window);
     xcb_destroy_window (conn, window);