summaryrefslogtreecommitdiffstats
path: root/libvo/vo_x11.c
diff options
context:
space:
mode:
Diffstat (limited to 'libvo/vo_x11.c')
-rw-r--r--libvo/vo_x11.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/libvo/vo_x11.c b/libvo/vo_x11.c
index 0cd589f28c..02ab2ad4a7 100644
--- a/libvo/vo_x11.c
+++ b/libvo/vo_x11.c
@@ -454,12 +454,6 @@ static int config(uint32_t width, uint32_t height, uint32_t d_width,
}
getMyXImage();
- if (!WinID)
- {
- vo_dwidth = vo_screenwidth;
- vo_dheight = vo_screenheight;
- }
-
while (fmte->mpfmt) {
int depth = IMGFMT_RGB_DEPTH(fmte->mpfmt);
/* bits_per_pixel in X seems to be set to 16 for 15 bit formats
@@ -529,22 +523,26 @@ static int config(uint32_t width, uint32_t height, uint32_t d_width,
static void Display_Image(XImage * myximage, uint8_t * ImageData)
{
+ int x = (vo_dwidth - dst_width) / 2;
+ int y = (vo_dheight - myximage->height) / 2;
+ if (WinID == 0) {
+ x = vo_dx;
+ y = vo_dy;
+ }
myximage->data += out_offset;
#ifdef HAVE_SHM
if (Shmem_Flag)
{
XShmPutImage(mDisplay, vo_window, vo_gc, myximage,
0, 0,
- (vo_dwidth - dst_width) / 2,
- (vo_dheight - myximage->height) / 2, dst_width,
+ x, y, dst_width,
myximage->height, True);
} else
#endif
{
XPutImage(mDisplay, vo_window, vo_gc, myximage,
0, 0,
- (vo_dwidth - dst_width) / 2,
- (vo_dheight - myximage->height) / 2, dst_width,
+ x, y, dst_width,
myximage->height);
}
myximage->data -= out_offset;