mirror of https://github.com/mpv-player/mpv
52bdeb07a1
If mpv is launched with --fs, the x11 code tries to reset the size and position of the window when the fullscreen exits. This has bad behavior with multiple monitors because the saved nofsrc is not reliable in many situations. Particularly if the window manager moves the fullscreen window somewhere else while mpv is fullscreen. The result will be that exiting fullscreen always goes back to screen 0. Fix this by translating the rc coordinates of the nofsrc rc to the new monitor when we're leaving fullscreen from an initial --fs case. By giving get_current_display a specific rc, we can return what xrandr display the coordinates are associated with and decide if the nofsrc should be translated to its new location. After that bit of math, the usual move/resize logic takes care of the rest but this time it actually works off of the correct position. Fixes #14226. |
||
---|---|---|
.. | ||
decode | ||
filter | ||
out | ||
csputils.c | ||
csputils.h | ||
cuda.c | ||
d3d.c | ||
d3d.h | ||
drmprime.c | ||
fmt-conversion.c | ||
fmt-conversion.h | ||
hwdec.c | ||
hwdec.h | ||
image_loader.c | ||
image_loader.h | ||
image_writer.c | ||
image_writer.h | ||
img_format.c | ||
img_format.h | ||
mp_image.c | ||
mp_image.h | ||
mp_image_pool.c | ||
mp_image_pool.h | ||
repack.c | ||
repack.h | ||
sws_utils.c | ||
sws_utils.h | ||
vaapi.c | ||
vaapi.h | ||
vdpau.c | ||
vdpau.h | ||
vdpau_functions.inc | ||
vdpau_mixer.c | ||
vdpau_mixer.h | ||
zimg.c | ||
zimg.h |