From baae4d1add5b184dcf0dc3271330ead267e048d7 Mon Sep 17 00:00:00 2001 From: reimar Date: Wed, 3 Mar 2010 21:01:57 +0000 Subject: [PATCH] Save the new width and height earlier so that e.g. -geometry 30x30-50-50 gives the correct behaviour - before placement would depend on the original movie size instead of the one scaled according to -geometry. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@30823 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libvo/geometry.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/libvo/geometry.c b/libvo/geometry.c index 6653373976..39ff209b7b 100644 --- a/libvo/geometry.c +++ b/libvo/geometry.c @@ -77,10 +77,16 @@ int geometry(int *xpos, int *ypos, int *widw, int *widh, int scrw, int scrh) return 0; } + mp_msg(MSGT_VO, MSGL_V,"geometry window parameter: widw: %i," + " widh: %i, scrw: %i, scrh: %i\n",*widw, *widh, scrw, scrh); + mp_msg(MSGT_VO, MSGL_V,"geometry set to width: %i," "height: %i, xoff: %s%i, yoff: %s%i, xper: %i, yper: %i\n", width, height, xsign, xoff, ysign, yoff, xper, yper); + if (width > 0 && widw) *widw = width; + if (height > 0 && widh) *widh = height; + if(xoff != INT_MIN && xsign[0] == '-') xoff = scrw - *widw - xoff; if(yoff != INT_MIN && ysign[0] == '-') yoff = scrh - *widh - yoff; if(xper >= 0 && xper <= 100) xoff = (scrw - *widw) * ((float)xper / 100.0); @@ -89,13 +95,9 @@ int geometry(int *xpos, int *ypos, int *widw, int *widh, int scrw, int scrh) mp_msg(MSGT_VO, MSGL_V,"geometry set to width: %i," "height: %i, xoff: %i, yoff: %i, xper: %i, yper: %i\n", width, height, xoff, yoff, xper, yper); - mp_msg(MSGT_VO, MSGL_V,"geometry window parameter: widw: %i," - " widh: %i, scrw: %i, scrh: %i\n",*widw, *widh, scrw, scrh); if (xoff != INT_MIN && xpos) *xpos = xoff; if (yoff != INT_MIN && ypos) *ypos = yoff; - if (width > 0 && widw) *widw = width; - if (height > 0 && widh) *widh = height; geometry_wh_changed = width > 0 || height > 0; geometry_xy_changed = xoff != INT_MIN || yoff != INT_MIN;