# HG changeset patch # User nplourde # Date 1099166201 0 # Node ID 9f707a805967172df41adac6b6407d6fda310271 # Parent 927fd61555310a94255fc2bc8df8e998dbf1f7ab window now save is old position when going in fullscreen or while using resize preset diff -r 927fd6155531 -r 9f707a805967 libvo/vo_quartz.c --- a/libvo/vo_quartz.c Sat Oct 30 19:47:51 2004 +0000 +++ b/libvo/vo_quartz.c Sat Oct 30 19:56:41 2004 +0000 @@ -10,7 +10,8 @@ MPlayer Mac OSX Quartz video out module. todo: -screen overlay output - -Add sub-option to select fullscreen resolution + -clear window background after live resize + -fit osd in black bar when available -RGB32 lost HW accel in fullscreen -(add sugestion here) */ @@ -350,7 +351,6 @@ } SizeWindow(theWindow, (d_width/2), ((d_width/movie_aspect)/2)+border, 1); - RepositionWindow(theWindow, NULL, kWindowCascadeOnMainScreen); window_resized(); break; @@ -361,7 +361,6 @@ } SizeWindow(theWindow, d_width, (d_width/movie_aspect)+border, 1); - RepositionWindow(theWindow, NULL, kWindowCascadeOnMainScreen); window_resized(); break; @@ -372,7 +371,6 @@ } SizeWindow(theWindow, (d_width*2), ((d_width/movie_aspect)*2)+border, 1); - RepositionWindow(theWindow, NULL, kWindowCascadeOnMainScreen); window_resized(); break; @@ -628,9 +626,8 @@ } //Show window - RepositionWindow(theWindow, NULL, kWindowCascadeOnMainScreen); + RepositionWindow(theWindow, NULL, kWindowCenterOnMainScreen); ShowWindow (theWindow); - SetPort(GetWindowPort(theWindow)); switch (image_format) { @@ -1190,8 +1187,7 @@ //Clear Background tmpBounds = CGRectMake( 0, border, winRect.right, winRect.bottom); CreateCGContextForPort(GetWindowPort(theWindow),&context); - CGContextSetRGBFillColor(context, 0.0, 0.0, 0.0, 1.0); - CGContextFillRect(context, tmpBounds); + CGContextClearRect(context, tmpBounds); switch (image_format) { @@ -1262,6 +1258,7 @@ static Ptr restoreState = NULL; RGBColor black={0,0,0}; GDHandle deviceHdl; + static Rect oldWinBounds; //go fullscreen if(vo_fs) @@ -1286,7 +1283,10 @@ //save old window size if (!vo_quartz_fs) + { GetWindowPortBounds(theWindow, &oldWinRect); + GetWindowBounds(theWindow, kWindowContentRgn, &oldWinBounds); + } //go fullscreen border = 0; @@ -1319,7 +1319,7 @@ border = 20; ChangeWindowAttributes(theWindow, kWindowResizableAttribute, 0); SizeWindow(theWindow, oldWinRect.right, oldWinRect.bottom,1); - RepositionWindow(theWindow, NULL, kWindowCascadeOnMainScreen); + MoveWindow(theWindow, oldWinBounds.left, oldWinBounds.top, 1); vo_quartz_fs = 0; }