summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDamiano Galassi <[email protected]>2017-11-27 09:00:27 +0100
committerDamiano Galassi <[email protected]>2017-11-27 09:00:27 +0100
commit14744098e879747b1cc1f825108bdb416702acf6 (patch)
tree08f2eca0d68dfcee2e6fadac9fbe2b170167addf
parent78140d60db80df8b7855f7832b029f1382aeaa9a (diff)
MacGui: remove the mp4 options empty space when the container is not mp4.
-rw-r--r--macosx/English.lproj/HBSummaryViewController.xib175
-rw-r--r--macosx/HBSummaryViewController.m24
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 @@
<objects>
<customObject id="-2" userLabel="File's Owner" customClass="HBSummaryViewController">
<connections>
+ <outlet property="bottomOptionsConstrain" destination="fRQ-Wj-Pis" id="ZDv-p3-Q7h"/>
<outlet property="dimensionLabel" destination="Jaw-pH-rhf" id="L85-25-Ec7"/>
<outlet property="filtersLabel" destination="BHq-Mt-3eA" id="EGb-du-wYa"/>
<outlet property="previewView" destination="m5a-0z-QQ4" id="1G9-3A-dM4"/>
@@ -59,71 +60,8 @@
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
- <button translatesAutoresizingMaskIntoConstraints="NO" id="lUi-Oc-208">
- <rect key="frame" x="66" y="312" width="103" height="18"/>
- <string key="toolTip">Optimize MP4 for progressive download. After encoding, data is reorganized and rewritten to allow immediate playback over a network, without needing to download the entire file.</string>
- <buttonCell key="cell" type="check" title="Web Optimized" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="wcc-5d-Dgj">
- <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
- <font key="font" metaFont="smallSystem"/>
- </buttonCell>
- <connections>
- <binding destination="-2" name="enabled" keyPath="self.job" id="IF3-Zz-8Fc">
- <dictionary key="options">
- <string key="NSValueTransformerName">NSIsNotNil</string>
- </dictionary>
- </binding>
- <binding destination="-2" name="value" keyPath="self.job.mp4HttpOptimize" id="LYj-Km-ze0"/>
- <binding destination="-2" name="hidden" keyPath="self.job.mp4OptionsEnabled" previousBinding="IF3-Zz-8Fc" id="PQl-de-g6C">
- <dictionary key="options">
- <string key="NSValueTransformerName">NSNegateBoolean</string>
- </dictionary>
- </binding>
- </connections>
- </button>
- <button translatesAutoresizingMaskIntoConstraints="NO" id="fPv-Vw-I89">
- <rect key="frame" x="66" y="294" width="100" height="18"/>
- <string key="toolTip">Aligns the initial timestamps of all audio and video streams by inserting blank frames or dropping frames. May improve audio/video sync for broken players that do not honor MP4 edit lists.</string>
- <buttonCell key="cell" type="check" title="Align A/V Start" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="De0-Je-MAm">
- <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
- <font key="font" metaFont="smallSystem"/>
- </buttonCell>
- <connections>
- <binding destination="-2" name="enabled" keyPath="self.job" id="RwG-S7-r6y">
- <dictionary key="options">
- <string key="NSValueTransformerName">NSIsNotNil</string>
- </dictionary>
- </binding>
- <binding destination="-2" name="value" keyPath="self.job.alignAVStart" id="lzG-ib-d7T"/>
- <binding destination="-2" name="hidden" keyPath="self.job.mp4OptionsEnabled" previousBinding="RwG-S7-r6y" id="JjJ-W0-rqv">
- <dictionary key="options">
- <string key="NSValueTransformerName">NSNegateBoolean</string>
- </dictionary>
- </binding>
- </connections>
- </button>
- <button translatesAutoresizingMaskIntoConstraints="NO" id="QKv-GR-d2g">
- <rect key="frame" x="66" y="276" width="109" height="18"/>
- <string key="toolTip">Add a special MP4 marker to allow playback on vintage iPod 5th Generation devices circa 2006. Other settings may affect compatibility.</string>
- <buttonCell key="cell" type="check" title="iPod 5G Support" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="zz5-qY-GSA">
- <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
- <font key="font" metaFont="smallSystem"/>
- </buttonCell>
- <connections>
- <binding destination="-2" name="enabled" keyPath="self.job" id="EiY-3n-cN6">
- <dictionary key="options">
- <string key="NSValueTransformerName">NSIsNotNil</string>
- </dictionary>
- </binding>
- <binding destination="-2" name="value" keyPath="self.job.mp4iPodCompatible" id="bd3-gE-z8c"/>
- <binding destination="-2" name="hidden" keyPath="self.job.mp4iPodCompatibleEnabled" previousBinding="EiY-3n-cN6" id="P6W-O6-CHv">
- <dictionary key="options">
- <string key="NSValueTransformerName">NSNegateBoolean</string>
- </dictionary>
- </binding>
- </connections>
- </button>
<textField horizontalHuggingPriority="251" verticalHuggingPriority="750" preferredMaxLayoutWidth="100" translatesAutoresizingMaskIntoConstraints="NO" id="GCn-2c-Fql">
- <rect key="frame" x="18" y="249" width="45" height="14"/>
+ <rect key="frame" x="18" y="251" width="45" height="14"/>
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="right" title="Tracks:" id="3mF-Bb-Gon">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
@@ -131,7 +69,7 @@
</textFieldCell>
</textField>
<textField horizontalHuggingPriority="251" verticalHuggingPriority="750" preferredMaxLayoutWidth="100" translatesAutoresizingMaskIntoConstraints="NO" id="0kh-Uy-Yo3">
- <rect key="frame" x="18" y="219" width="45" height="14"/>
+ <rect key="frame" x="18" y="221" width="45" height="14"/>
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="right" title="Filters:" id="OCw-f6-uA0">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
@@ -139,7 +77,7 @@
</textFieldCell>
</textField>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" preferredMaxLayoutWidth="170" translatesAutoresizingMaskIntoConstraints="NO" id="yRE-5c-FhX">
- <rect key="frame" x="67" y="249" width="214" height="14"/>
+ <rect key="frame" x="67" y="251" width="214" height="14"/>
<constraints>
<constraint firstAttribute="width" constant="210" id="I7F-Rh-oaP"/>
</constraints>
@@ -150,7 +88,7 @@
</textFieldCell>
</textField>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" preferredMaxLayoutWidth="170" translatesAutoresizingMaskIntoConstraints="NO" id="BHq-Mt-3eA">
- <rect key="frame" x="67" y="219" width="214" height="14"/>
+ <rect key="frame" x="67" y="221" width="214" height="14"/>
<textFieldCell key="cell" controlSize="mini" selectable="YES" sendsActionOnEndEditing="YES" title="None" id="RIB-ME-Yhh">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
@@ -161,7 +99,7 @@
<rect key="frame" x="295" y="16" width="556" height="334"/>
</customView>
<textField horizontalHuggingPriority="251" verticalHuggingPriority="750" preferredMaxLayoutWidth="100" translatesAutoresizingMaskIntoConstraints="NO" id="Jgq-K8-z3W">
- <rect key="frame" x="18" y="189" width="45" height="14"/>
+ <rect key="frame" x="18" y="191" width="45" height="14"/>
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" alignment="right" title="Size:" id="B4a-co-0ly">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
@@ -169,23 +107,103 @@
</textFieldCell>
</textField>
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" preferredMaxLayoutWidth="170" translatesAutoresizingMaskIntoConstraints="NO" id="Jaw-pH-rhf">
- <rect key="frame" x="66" y="189" width="214" height="14"/>
+ <rect key="frame" x="66" y="191" width="214" height="14"/>
<textFieldCell key="cell" controlSize="mini" selectable="YES" sendsActionOnEndEditing="YES" title="None" id="xmy-Jl-mR4">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
+ <customView translatesAutoresizingMaskIntoConstraints="NO" id="9OK-03-grs">
+ <rect key="frame" x="69" y="281" width="114" height="48"/>
+ <subviews>
+ <button translatesAutoresizingMaskIntoConstraints="NO" id="lUi-Oc-208">
+ <rect key="frame" x="-3" y="33" width="109" height="18"/>
+ <string key="toolTip">Optimize MP4 for progressive download. After encoding, data is reorganized and rewritten to allow immediate playback over a network, without needing to download the entire file.</string>
+ <buttonCell key="cell" type="check" title="Web Optimized" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="wcc-5d-Dgj">
+ <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
+ <font key="font" metaFont="smallSystem"/>
+ </buttonCell>
+ <connections>
+ <binding destination="-2" name="enabled" keyPath="self.job" id="IF3-Zz-8Fc">
+ <dictionary key="options">
+ <string key="NSValueTransformerName">NSIsNotNil</string>
+ </dictionary>
+ </binding>
+ <binding destination="-2" name="value" keyPath="self.job.mp4HttpOptimize" id="LYj-Km-ze0"/>
+ <binding destination="-2" name="hidden" keyPath="self.job.mp4OptionsEnabled" previousBinding="IF3-Zz-8Fc" id="PQl-de-g6C">
+ <dictionary key="options">
+ <string key="NSValueTransformerName">NSNegateBoolean</string>
+ </dictionary>
+ </binding>
+ </connections>
+ </button>
+ <button translatesAutoresizingMaskIntoConstraints="NO" id="QKv-GR-d2g">
+ <rect key="frame" x="-3" y="-3" width="109" height="18"/>
+ <string key="toolTip">Add a special MP4 marker to allow playback on vintage iPod 5th Generation devices circa 2006. Other settings may affect compatibility.</string>
+ <buttonCell key="cell" type="check" title="iPod 5G Support" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="zz5-qY-GSA">
+ <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
+ <font key="font" metaFont="smallSystem"/>
+ </buttonCell>
+ <connections>
+ <binding destination="-2" name="enabled" keyPath="self.job" id="EiY-3n-cN6">
+ <dictionary key="options">
+ <string key="NSValueTransformerName">NSIsNotNil</string>
+ </dictionary>
+ </binding>
+ <binding destination="-2" name="value" keyPath="self.job.mp4iPodCompatible" id="bd3-gE-z8c"/>
+ <binding destination="-2" name="hidden" keyPath="self.job.mp4iPodCompatibleEnabled" previousBinding="EiY-3n-cN6" id="P6W-O6-CHv">
+ <dictionary key="options">
+ <string key="NSValueTransformerName">NSNegateBoolean</string>
+ </dictionary>
+ </binding>
+ </connections>
+ </button>
+ <button translatesAutoresizingMaskIntoConstraints="NO" id="fPv-Vw-I89">
+ <rect key="frame" x="-3" y="15" width="109" height="18"/>
+ <string key="toolTip">Aligns the initial timestamps of all audio and video streams by inserting blank frames or dropping frames. May improve audio/video sync for broken players that do not honor MP4 edit lists.</string>
+ <buttonCell key="cell" type="check" title="Align A/V Start" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="De0-Je-MAm">
+ <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
+ <font key="font" metaFont="smallSystem"/>
+ </buttonCell>
+ <connections>
+ <binding destination="-2" name="enabled" keyPath="self.job" id="RwG-S7-r6y">
+ <dictionary key="options">
+ <string key="NSValueTransformerName">NSIsNotNil</string>
+ </dictionary>
+ </binding>
+ <binding destination="-2" name="value" keyPath="self.job.alignAVStart" id="lzG-ib-d7T"/>
+ <binding destination="-2" name="hidden" keyPath="self.job.mp4OptionsEnabled" previousBinding="RwG-S7-r6y" id="JjJ-W0-rqv">
+ <dictionary key="options">
+ <string key="NSValueTransformerName">NSNegateBoolean</string>
+ </dictionary>
+ </binding>
+ </connections>
+ </button>
+ </subviews>
+ <constraints>
+ <constraint firstItem="lUi-Oc-208" firstAttribute="width" secondItem="QKv-GR-d2g" secondAttribute="width" id="6B4-6F-d1r"/>
+ <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="fPv-Vw-I89" secondAttribute="trailing" constant="10" id="Apa-Yn-CNO"/>
+ <constraint firstAttribute="trailing" secondItem="lUi-Oc-208" secondAttribute="trailing" constant="10" id="DVl-wu-O0z"/>
+ <constraint firstItem="lUi-Oc-208" firstAttribute="width" secondItem="fPv-Vw-I89" secondAttribute="width" id="O7b-Be-Tb0"/>
+ <constraint firstItem="fPv-Vw-I89" firstAttribute="top" secondItem="lUi-Oc-208" secondAttribute="bottom" constant="6" id="ON4-tC-jGx"/>
+ <constraint firstAttribute="height" priority="250" id="Pmh-ss-VSz"/>
+ <constraint firstItem="QKv-GR-d2g" firstAttribute="top" secondItem="fPv-Vw-I89" secondAttribute="bottom" constant="6" id="Svh-gm-4QO"/>
+ <constraint firstItem="lUi-Oc-208" firstAttribute="top" secondItem="9OK-03-grs" secondAttribute="top" id="ToU-SS-Vfu"/>
+ <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="QKv-GR-d2g" secondAttribute="trailing" constant="10" id="YHA-pt-eTX"/>
+ <constraint firstAttribute="bottom" secondItem="QKv-GR-d2g" secondAttribute="bottom" id="fRQ-Wj-Pis"/>
+ <constraint firstItem="fPv-Vw-I89" firstAttribute="leading" secondItem="lUi-Oc-208" secondAttribute="leading" id="gqB-mT-Ukd"/>
+ <constraint firstItem="lUi-Oc-208" firstAttribute="leading" secondItem="9OK-03-grs" secondAttribute="leading" id="h93-5a-HbT"/>
+ <constraint firstItem="QKv-GR-d2g" firstAttribute="leading" secondItem="lUi-Oc-208" secondAttribute="leading" id="h94-9l-arp"/>
+ </constraints>
+ </customView>
</subviews>
<constraints>
<constraint firstItem="m5a-0z-QQ4" firstAttribute="top" secondItem="Hz6-mo-xeY" secondAttribute="top" constant="16" id="2Lv-KO-aKx"/>
<constraint firstItem="0kh-Uy-Yo3" firstAttribute="width" secondItem="bpr-UY-4al" secondAttribute="width" id="3C6-tC-wvc"/>
<constraint firstItem="bpr-UY-4al" firstAttribute="baseline" secondItem="txV-1R-WoD" secondAttribute="baseline" id="5R4-0i-jLq"/>
<constraint firstAttribute="bottom" secondItem="m5a-0z-QQ4" secondAttribute="bottom" constant="16" id="8OB-rB-CmU"/>
- <constraint firstItem="m5a-0z-QQ4" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="QKv-GR-d2g" secondAttribute="trailing" constant="16" id="8XE-8g-Ufn"/>
- <constraint firstItem="QKv-GR-d2g" firstAttribute="top" secondItem="fPv-Vw-I89" secondAttribute="bottom" constant="6" id="9NP-48-LS7"/>
- <constraint firstItem="lUi-Oc-208" firstAttribute="leading" secondItem="txV-1R-WoD" secondAttribute="leading" id="BPd-g8-Zr2"/>
- <constraint firstItem="QKv-GR-d2g" firstAttribute="leading" secondItem="txV-1R-WoD" secondAttribute="leading" id="E60-lK-Qyk"/>
+ <constraint firstItem="yRE-5c-FhX" firstAttribute="top" secondItem="9OK-03-grs" secondAttribute="bottom" constant="16" id="AHo-Iy-t0F"/>
<constraint firstItem="BHq-Mt-3eA" firstAttribute="width" secondItem="yRE-5c-FhX" secondAttribute="width" id="EmD-2D-gyj"/>
<constraint firstItem="Jgq-K8-z3W" firstAttribute="width" secondItem="bpr-UY-4al" secondAttribute="width" id="FW9-Qf-7Hf"/>
<constraint firstAttribute="trailing" secondItem="m5a-0z-QQ4" secondAttribute="trailing" constant="20" id="GYQ-6W-S3N"/>
@@ -193,24 +211,23 @@
<constraint firstItem="txV-1R-WoD" firstAttribute="leading" secondItem="bpr-UY-4al" secondAttribute="trailing" constant="8" symbolic="YES" id="I9H-1U-iqt"/>
<constraint firstItem="BHq-Mt-3eA" firstAttribute="top" secondItem="yRE-5c-FhX" secondAttribute="bottom" constant="16" id="IVl-m1-yLo"/>
<constraint firstItem="m5a-0z-QQ4" firstAttribute="leading" secondItem="yRE-5c-FhX" secondAttribute="trailing" constant="16" id="J92-rN-Hgk"/>
+ <constraint firstItem="9OK-03-grs" firstAttribute="top" secondItem="txV-1R-WoD" secondAttribute="bottom" constant="6" id="MgV-fX-yfE"/>
+ <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="Jaw-pH-rhf" secondAttribute="trailing" constant="20" symbolic="YES" id="Ndp-Pa-1Wq"/>
<constraint firstItem="yRE-5c-FhX" firstAttribute="leading" secondItem="GCn-2c-Fql" secondAttribute="trailing" constant="8" id="Ok2-zj-HHS"/>
- <constraint firstItem="yRE-5c-FhX" firstAttribute="top" secondItem="QKv-GR-d2g" secondAttribute="bottom" constant="16" id="Tvz-KM-RdC"/>
<constraint firstAttribute="bottom" relation="greaterThanOrEqual" secondItem="Jaw-pH-rhf" secondAttribute="bottom" constant="8" id="U19-5y-ann"/>
- <constraint firstItem="m5a-0z-QQ4" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="lUi-Oc-208" secondAttribute="trailing" constant="16" id="U1G-nS-bR0"/>
<constraint firstItem="bpr-UY-4al" firstAttribute="top" secondItem="Hz6-mo-xeY" secondAttribute="top" constant="16" id="VFQ-Vg-ESJ"/>
<constraint firstItem="0kh-Uy-Yo3" firstAttribute="leading" secondItem="bpr-UY-4al" secondAttribute="leading" id="ZSW-w5-hfn"/>
- <constraint firstItem="m5a-0z-QQ4" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="fPv-Vw-I89" secondAttribute="trailing" constant="16" id="bWj-yH-VEO"/>
<constraint firstItem="Jaw-pH-rhf" firstAttribute="leading" secondItem="Jgq-K8-z3W" secondAttribute="trailing" constant="7" id="beE-wT-2DH"/>
- <constraint firstItem="fPv-Vw-I89" firstAttribute="top" secondItem="lUi-Oc-208" secondAttribute="bottom" constant="6" id="bxR-uJ-u4M"/>
- <constraint firstItem="lUi-Oc-208" firstAttribute="top" secondItem="txV-1R-WoD" secondAttribute="bottom" constant="8" id="cJz-xA-oz4"/>
<constraint firstItem="BHq-Mt-3eA" firstAttribute="leading" secondItem="0kh-Uy-Yo3" secondAttribute="trailing" constant="8" id="dZN-9S-z89"/>
+ <constraint firstItem="9OK-03-grs" firstAttribute="leading" secondItem="txV-1R-WoD" secondAttribute="leading" id="f5M-zK-Y35"/>
<constraint firstItem="Jaw-pH-rhf" firstAttribute="top" secondItem="BHq-Mt-3eA" secondAttribute="bottom" constant="16" id="htU-Bs-Wje"/>
<constraint firstItem="GCn-2c-Fql" firstAttribute="top" secondItem="yRE-5c-FhX" secondAttribute="top" id="jTa-bA-Weo"/>
+ <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="BHq-Mt-3eA" secondAttribute="trailing" constant="20" symbolic="YES" id="l0V-AR-5yD"/>
<constraint firstItem="Jgq-K8-z3W" firstAttribute="top" secondItem="Jaw-pH-rhf" secondAttribute="top" id="l2y-8G-v9J"/>
<constraint firstItem="0kh-Uy-Yo3" firstAttribute="top" secondItem="BHq-Mt-3eA" secondAttribute="top" id="nwz-Xj-cMt"/>
<constraint firstItem="Jgq-K8-z3W" firstAttribute="leading" secondItem="bpr-UY-4al" secondAttribute="leading" id="ogm-2d-HB7"/>
+ <constraint firstItem="m5a-0z-QQ4" firstAttribute="leading" secondItem="9OK-03-grs" secondAttribute="trailing" constant="112" id="onT-fu-ioj"/>
<constraint firstItem="bpr-UY-4al" firstAttribute="leading" secondItem="Hz6-mo-xeY" secondAttribute="leading" constant="20" id="ptr-Mh-cla"/>
- <constraint firstItem="fPv-Vw-I89" firstAttribute="leading" secondItem="txV-1R-WoD" secondAttribute="leading" id="qmb-hk-LYc"/>
<constraint firstItem="Jaw-pH-rhf" firstAttribute="width" secondItem="yRE-5c-FhX" secondAttribute="width" id="tyw-5Q-kCp"/>
<constraint firstItem="GCn-2c-Fql" firstAttribute="leading" secondItem="bpr-UY-4al" secondAttribute="leading" id="utH-I5-f9B"/>
<constraint firstItem="m5a-0z-QQ4" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="txV-1R-WoD" secondAttribute="trailing" constant="16" id="vr4-76-FcH"/>
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"];