From 455fa191eeb78617af50d760e0956eb3b59f2a71 Mon Sep 17 00:00:00 2001 From: dynaflash Date: Wed, 14 Jan 2009 20:20:09 +0000 Subject: MacGui: Picture Preview and Settings window interaction fixes - Putting the Preview Window into full screen mode no longer automatically opens up the Picture Settings inspector - Fixed the Picture Settings inspector so that it isn't on top of every f'ing window on your screen. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2086 b64f7644-9d1e-0410-96f1-a4d463321fa5 --- macosx/Controller.mm | 7 +++++-- macosx/HBPreviewController.h | 1 + macosx/HBPreviewController.mm | 9 +++++++-- macosx/PictureController.mm | 12 ++++++++---- 4 files changed, 21 insertions(+), 8 deletions(-) diff --git a/macosx/Controller.mm b/macosx/Controller.mm index b0891342a..7d07da08f 100644 --- a/macosx/Controller.mm +++ b/macosx/Controller.mm @@ -207,8 +207,11 @@ static NSString * ChooseSourceIdentifier = @"Choose Source It - (NSApplicationTerminateReply) applicationShouldTerminate: (NSApplication *) app { - [fPreviewController goWindowedScreen:nil]; - // Warn if encoding a movie + if ([fPreviewController fullScreen] == YES) + { + [fPreviewController goWindowedScreen:nil]; + } + hb_state_t s; hb_get_state( fQueueEncodeLibhb, &s ); diff --git a/macosx/HBPreviewController.h b/macosx/HBPreviewController.h index 16dd75e48..278e20a27 100644 --- a/macosx/HBPreviewController.h +++ b/macosx/HBPreviewController.h @@ -78,6 +78,7 @@ - (IBAction)showPictureSettings:(id)sender; /* Full Screen */ - (IBAction)toggleScreenMode:(id)sender; +- (BOOL)fullScreen; - (IBAction)goFullScreen:(id)sender; - (IBAction)goWindowedScreen:(id)sender; diff --git a/macosx/HBPreviewController.mm b/macosx/HBPreviewController.mm index 575a2c6ec..10c885587 100644 --- a/macosx/HBPreviewController.mm +++ b/macosx/HBPreviewController.mm @@ -449,6 +449,11 @@ MaxOutputWidth = title->width - job->crop[2] - job->crop[3]; } } +- (BOOL)fullScreen +{ + return isFullScreen; +} + - (IBAction)goFullScreen:(id)sender { // Get the screen information. @@ -534,7 +539,7 @@ MaxOutputWidth = title->width - job->crop[2] - job->crop[3]; [self pictureSliderChanged:nil]; /* set the picture settings pallete above the shielding level */ - [fHBController picturePanelFullScreen]; + //[fHBController picturePanelFullScreen]; } } @@ -575,7 +580,7 @@ MaxOutputWidth = title->width - job->crop[2] - job->crop[3]; [fFullScreenToggleButton setTitle: @"Full Screen"]; /* set the picture settings pallete back to normal level */ - [fHBController picturePanelFullScreen]; + [fHBController picturePanelWindowed]; /* Release the display now that the we are back in windowed mode */ CGDisplayRelease(displayID); diff --git a/macosx/PictureController.mm b/macosx/PictureController.mm index df70de657..8752c24f5 100644 --- a/macosx/PictureController.mm +++ b/macosx/PictureController.mm @@ -37,6 +37,14 @@ - (IBAction) showPictureWindow: (id)sender { [self showWindow:sender]; + if ([fPreviewController fullScreen] == YES) + { + [self setToFullScreenMode]; + } + else + { + [self setToWindowedMode]; + } } - (IBAction) showPreviewWindow: (id)sender @@ -46,7 +54,6 @@ - (void) setToFullScreenMode { - [self showWindow:nil]; int32_t shieldLevel = CGShieldingWindowLevel(); [fPictureWindow setLevel:shieldLevel]; @@ -57,9 +64,6 @@ - (void) setToWindowedMode { /* Set the window back to regular level */ - - [self showWindow:nil]; - [[self window] setLevel:NSNormalWindowLevel]; } -- cgit v1.2.3