1
mirror of https://github.com/mpv-player/mpv synced 2024-09-12 23:45:53 +02:00

fullscreen toggle for vo_mga

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5988 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
rfelker 2002-05-05 18:58:42 +00:00
parent 8c9b41e72a
commit c1a516894c
2 changed files with 35 additions and 4 deletions

View File

@ -233,6 +233,32 @@ static void query_vaa(vo_vaa_t *vaa)
vaa->get_video_eq = mga_get_video_eq;
vaa->set_video_eq = mga_set_video_eq;
}
static void mga_fullscreen()
{
uint32_t w,h;
if ( !vo_fs ) {
vo_fs=VO_TRUE;
w=vo_screenwidth; h=vo_screenheight;
aspect(&w,&h,A_ZOOM);
} else {
vo_fs=VO_FALSE;
w=vo_dwidth; h=vo_dheight;
aspect(&w,&h,A_NOZOOM);
}
mga_vid_config.dest_width = w;
mga_vid_config.dest_height= h;
if (vo_screenwidth && vo_screenheight) {
mga_vid_config.x_org=(vo_screenwidth-w)/2;
mga_vid_config.y_org=(vo_screenheight-h)/2;
} else {
mga_vid_config.x_org= 0;
mga_vid_config.y_org= 0;
}
if ( ioctl( f,MGA_VID_CONFIG,&mga_vid_config ) )
printf( "Error in mga_vid_config ioctl (wrong mga_vid.o version?)" );
}
static uint32_t control(uint32_t request, void *data, ...)
{
switch (request) {
@ -243,11 +269,13 @@ static uint32_t control(uint32_t request, void *data, ...)
return query_format(*((uint32_t*)data));
case VOCTRL_GET_IMAGE:
return get_image(data);
#ifdef VO_XMGA
case VOCTRL_FULLSCREEN:
#ifdef VO_XMGA
vo_x11_fullscreen();
return VO_TRUE;
#else
mga_fullscreen();
#endif
return VO_TRUE;
}
return VO_NOTIMPL;
}

View File

@ -84,10 +84,13 @@ config(uint32_t width, uint32_t height, uint32_t d_width, uint32_t d_height, uin
aspect_save_prescale(d_width,d_height);
aspect_save_screenres(vo_screenwidth,vo_screenheight);
if(fullscreen&0x01) /* -fs */
if(fullscreen&0x01) { /* -fs */
aspect(&d_width,&d_height,A_ZOOM);
else
vo_fs = VO_TRUE;
} else {
aspect(&d_width,&d_height,A_NOZOOM);
vo_fs = VO_FALSE;
}
printf("vo_mga aspect(): resized to %dx%d\n",d_width,d_height);
}