mirror of https://github.com/mpv-player/mpv
x11: fix mysterious issue with window embedding on OpenBox
For some reason, when using window embedding, and the window manager is OpenBox, calling XSetWMNormalHints() before the window is mapped, the initial window position will be off. It leaves some vertical space, instead of placing it on the top/left corner. Suspiciously, the vertical space is as much as a the height of normal window decoration. I don't know what kind of issue this is. Possibly an OpenBox bug, but then this happens even if the override-redirect flag is set. (This flag basically tells the X server to ignore the window manager. Normally we don't set it.) On other window managers, it works fine. So I don't know why this is happening. But this is easy to workaround. XSetWMNormalHints() isn't needed at all if embedding. Should fix #1235.
This commit is contained in:
parent
7098f33077
commit
eec4b86bbc
|
@ -989,7 +989,7 @@ static void vo_x11_sizehint(struct vo *vo, struct mp_rect rc, bool override_pos)
|
||||||
struct mp_vo_opts *opts = vo->opts;
|
struct mp_vo_opts *opts = vo->opts;
|
||||||
struct vo_x11_state *x11 = vo->x11;
|
struct vo_x11_state *x11 = vo->x11;
|
||||||
|
|
||||||
if (!x11->window)
|
if (!x11->window || x11->parent)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
bool force_pos = opts->geometry.xy_valid || // explicitly forced by user
|
bool force_pos = opts->geometry.xy_valid || // explicitly forced by user
|
||||||
|
|
Loading…
Reference in New Issue