diff options
author | nplourde <nplourde@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2005-06-29 21:54:48 +0000 |
---|---|---|
committer | nplourde <nplourde@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2005-06-29 21:54:48 +0000 |
commit | c60e560af26ace56c4e43861ea7b2764d8a24d97 (patch) | |
tree | 30955b88e1040ce9476e6f34246db8021956ce9e /libvo | |
parent | 7d73ce2371f7d478b38c71a3f62e91f651e56d44 (diff) | |
download | mpv-c60e560af26ace56c4e43861ea7b2764d8a24d97.tar.bz2 mpv-c60e560af26ace56c4e43861ea7b2764d8a24d97.tar.xz |
keep window size when changing aspect
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@15856 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo')
-rw-r--r-- | libvo/vo_macosx.h | 1 | ||||
-rw-r--r-- | libvo/vo_macosx.m | 26 |
2 files changed, 16 insertions, 11 deletions
diff --git a/libvo/vo_macosx.h b/libvo/vo_macosx.h index a91b6b0a87..64858051a1 100644 --- a/libvo/vo_macosx.h +++ b/libvo/vo_macosx.h @@ -31,6 +31,7 @@ GLfloat upperLeft[2]; BOOL mouseHide; + float winSizeMult; //menu command id NSMenuItem *kQuitCmd; diff --git a/libvo/vo_macosx.m b/libvo/vo_macosx.m index fb11e4fdfd..a724255236 100644 --- a/libvo/vo_macosx.m +++ b/libvo/vo_macosx.m @@ -288,6 +288,7 @@ static uint32_t control(uint32_t request, void *data, ...) [window setTitle:@"MPlayer - The Movie Player"]; isFullscreen = 0; + winSizeMult = 1; } - (id) config @@ -359,7 +360,7 @@ static uint32_t control(uint32_t request, void *data, ...) kDoubleScreenCmd = menuItem; menuItem = [[NSMenuItem alloc] initWithTitle:@"Full Size" action:@selector(menuAction:) keyEquivalent:@"f"]; [menu addItem:menuItem]; kFullScreenCmd = menuItem; - menuItem = (NSMenuItem *)[NSMenuItem separatorItem]; [menu addItem:menuItem]; + //menuItem = (NSMenuItem *)[NSMenuItem separatorItem]; [menu addItem:menuItem]; NSMenu *aspectMenu; aspectMenu = [[NSMenu alloc] initWithTitle:@"Aspect Ratio"]; @@ -424,8 +425,9 @@ static uint32_t control(uint32_t request, void *data, ...) vo_fs = (!(vo_fs)); [self fullscreen:YES]; } - frame.size.width = (d_width/2); - frame.size.height = ((d_width/movie_aspect)/2); + winSizeMult = 0.5; + frame.size.width = (d_width*winSizeMult); + frame.size.height = ((d_width/movie_aspect)*winSizeMult); [window setContentSize: frame.size]; [self reshape]; } @@ -435,6 +437,7 @@ static uint32_t control(uint32_t request, void *data, ...) vo_fs = (!(vo_fs)); [self fullscreen:YES]; } + winSizeMult = 1; frame.size.width = d_width; frame.size.height = d_width/movie_aspect; [window setContentSize: frame.size]; @@ -446,8 +449,9 @@ static uint32_t control(uint32_t request, void *data, ...) vo_fs = (!(vo_fs)); [self fullscreen:YES]; } - frame.size.width = d_width*2; - frame.size.height = (d_width/movie_aspect)*2; + winSizeMult = 2; + frame.size.width = d_width*winSizeMult; + frame.size.height = (d_width/movie_aspect)*winSizeMult; [window setContentSize: frame.size]; [self reshape]; } @@ -478,8 +482,8 @@ static uint32_t control(uint32_t request, void *data, ...) if(sender == kAspectOrgCmd) { movie_aspect = old_movie_aspect; - frame.size.width = d_width; - frame.size.height = d_width/movie_aspect; + frame.size.width = d_width*winSizeMult; + frame.size.height = (d_width/movie_aspect)*winSizeMult; [window setContentSize: frame.size]; [self reshape]; } @@ -487,8 +491,8 @@ static uint32_t control(uint32_t request, void *data, ...) if(sender == kAspectFullCmd) { movie_aspect = 4.0f/3.0f; - frame.size.width = d_width; - frame.size.height = d_width/movie_aspect; + frame.size.width = d_width*winSizeMult; + frame.size.height = (d_width/movie_aspect)*winSizeMult; [window setContentSize: frame.size]; [self reshape]; } @@ -496,8 +500,8 @@ static uint32_t control(uint32_t request, void *data, ...) if(sender == kAspectWideCmd) { movie_aspect = 16.0f/9.0f; - frame.size.width = d_width; - frame.size.height = d_width/movie_aspect; + frame.size.width = d_width*winSizeMult; + frame.size.height = (d_width/movie_aspect)*winSizeMult; [window setContentSize: frame.size]; [self reshape]; } |