Commit 0bb09b17 authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

XCB/X11: support different color depth than parent window (refs #3581)

(cherry picked from commit 53752a74e22c0a64d5af333d6a9d8475d2f541f1)
parent 30149a48
...@@ -249,9 +249,24 @@ static int Open (vlc_object_t *obj) ...@@ -249,9 +249,24 @@ static int Open (vlc_object_t *obj)
p_sys->window = xcb_generate_id (p_sys->conn); p_sys->window = xcb_generate_id (p_sys->conn);
p_sys->gc = xcb_generate_id (p_sys->conn); p_sys->gc = xcb_generate_id (p_sys->conn);
xcb_pixmap_t pixmap = xcb_generate_id (p_sys->conn);
{ {
const uint32_t mask = XCB_CW_EVENT_MASK | XCB_CW_COLORMAP; const uint32_t mask =
XCB_CW_BACK_PIXMAP |
XCB_CW_BACK_PIXEL |
XCB_CW_BORDER_PIXMAP |
XCB_CW_BORDER_PIXEL |
XCB_CW_EVENT_MASK |
XCB_CW_COLORMAP;
const uint32_t values[] = { const uint32_t values[] = {
/* XCB_CW_BACK_PIXMAP */
pixmap,
/* XCB_CW_BACK_PIXEL */
scr->black_pixel,
/* XCB_CW_BORDER_PIXMAP */
pixmap,
/* XCB_CW_BORDER_PIXEL */
scr->black_pixel,
/* XCB_CW_EVENT_MASK */ /* XCB_CW_EVENT_MASK */
XCB_EVENT_MASK_VISIBILITY_CHANGE, XCB_EVENT_MASK_VISIBILITY_CHANGE,
/* XCB_CW_COLORMAP */ /* XCB_CW_COLORMAP */
...@@ -259,6 +274,7 @@ static int Open (vlc_object_t *obj) ...@@ -259,6 +274,7 @@ static int Open (vlc_object_t *obj)
}; };
xcb_void_cookie_t c; xcb_void_cookie_t c;
xcb_create_pixmap (p_sys->conn, p_sys->depth, pixmap, scr->root, 1, 1);
c = xcb_create_window_checked (p_sys->conn, p_sys->depth, c = xcb_create_window_checked (p_sys->conn, p_sys->depth,
p_sys->window, p_sys->window,
p_sys->embed->handle.xid, 0, 0, p_sys->embed->handle.xid, 0, 0,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment