From 14744098e879747b1cc1f825108bdb416702acf6 Mon Sep 17 00:00:00 2001 From: Damiano Galassi Date: Mon, 27 Nov 2017 09:00:27 +0100 Subject: [PATCH] MacGui: remove the mp4 options empty space when the container is not mp4. --- .../English.lproj/HBSummaryViewController.xib | 175 ++++++++++-------- macosx/HBSummaryViewController.m | 24 ++- 2 files changed, 116 insertions(+), 83 deletions(-) diff --git a/macosx/English.lproj/HBSummaryViewController.xib b/macosx/English.lproj/HBSummaryViewController.xib index 78ddfc098..449df2799 100644 --- a/macosx/English.lproj/HBSummaryViewController.xib +++ b/macosx/English.lproj/HBSummaryViewController.xib @@ -9,6 +9,7 @@ + @@ -59,71 +60,8 @@ - - - - + @@ -131,7 +69,7 @@ - + @@ -139,7 +77,7 @@ - + @@ -150,7 +88,7 @@ - + @@ -161,7 +99,7 @@ - + @@ -169,23 +107,103 @@ - + + + + + + + + + + + + + + + + + + + + + + + + - - - - + @@ -193,24 +211,23 @@ + + - - - - - + + + - diff --git a/macosx/HBSummaryViewController.m b/macosx/HBSummaryViewController.m index 1b58ce926..36b9d2412 100644 --- a/macosx/HBSummaryViewController.m +++ b/macosx/HBSummaryViewController.m @@ -14,10 +14,13 @@ static void *HBSummaryViewControllerContext = &HBSummaryViewControllerContext; @interface HBSummaryViewController () -@property (strong) IBOutlet HBPreviewView *previewView; -@property (strong) IBOutlet NSTextField *tracksLabel; -@property (strong) IBOutlet NSTextField *filtersLabel; -@property (strong) IBOutlet NSTextField *dimensionLabel; +@property (nonatomic, strong) IBOutlet NSLayoutConstraint *bottomOptionsConstrain; + +@property (nonatomic, strong) IBOutlet NSTextField *tracksLabel; +@property (nonatomic, strong) IBOutlet NSTextField *filtersLabel; +@property (nonatomic, strong) IBOutlet NSTextField *dimensionLabel; + +@property (nonatomic, strong) IBOutlet HBPreviewView *previewView; @property (nonatomic) BOOL tracksReloadInQueue; @property (nonatomic) BOOL filtersReloadInQueue; @@ -117,7 +120,18 @@ static void *HBSummaryViewControllerContext = &HBSummaryViewControllerContext; [self removeSubtitlesTracksObservers:change[@"old"]]; } } + else if ([keyPath isEqualToString:@"container"] && change[NSKeyValueChangeNewKey] && NSAppKitVersionNumber >= NSAppKitVersionNumber10_10) + { + if ([change[NSKeyValueChangeNewKey] integerValue] & 0x030000) + { + self.bottomOptionsConstrain.active = YES; + } + else + { + self.bottomOptionsConstrain.active = NO; + } + } [self updateTracks:nil]; } else @@ -167,6 +181,7 @@ static void *HBSummaryViewControllerContext = &HBSummaryViewControllerContext; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(updatePicture:) name:HBPictureChangedNotification object:_job.picture]; [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(updateFilters:) name:HBFiltersChangedNotification object:_job.filters]; + [_job addObserver:self forKeyPath:@"container" options:NSKeyValueObservingOptionInitial | NSKeyValueObservingOptionNew context:HBSummaryViewControllerContext]; [_job addObserver:self forKeyPath:@"video.encoder" options:0 context:HBSummaryViewControllerContext]; [_job addObserver:self forKeyPath:@"video.frameRate" options:0 context:HBSummaryViewControllerContext]; [_job addObserver:self forKeyPath:@"video.frameRateMode" options:0 context:HBSummaryViewControllerContext]; @@ -187,6 +202,7 @@ static void *HBSummaryViewControllerContext = &HBSummaryViewControllerContext; [[NSNotificationCenter defaultCenter] removeObserver:self name:HBPictureChangedNotification object:_job.picture]; [[NSNotificationCenter defaultCenter] removeObserver:self name:HBFiltersChangedNotification object:_job.filters]; + [_job removeObserver:self forKeyPath:@"container"]; [_job removeObserver:self forKeyPath:@"video.encoder"]; [_job removeObserver:self forKeyPath:@"video.frameRate"]; [_job removeObserver:self forKeyPath:@"video.frameRateMode"]; -- 2.40.0