diff options
author | Damiano Galassi <[email protected]> | 2017-06-15 09:07:39 +0200 |
---|---|---|
committer | Damiano Galassi <[email protected]> | 2017-06-15 09:07:39 +0200 |
commit | 7aaee9a9b0af21ac56549e4fd32c877e53f7f48b (patch) | |
tree | 8f796a19c669d8ea69667ceaf26d49d8a194e1fe /macosx | |
parent | 0dc659ba728b5570564ef09cf1d73c8110529def (diff) |
MacGui: add a preferences option to configure the queue low disk space warning.
Diffstat (limited to 'macosx')
-rw-r--r-- | macosx/English.lproj/Preferences.xib | 108 | ||||
-rw-r--r-- | macosx/HBPreferencesController.m | 4 | ||||
-rw-r--r-- | macosx/HBQueueController.m | 35 |
3 files changed, 101 insertions, 46 deletions
diff --git a/macosx/English.lproj/Preferences.xib b/macosx/English.lproj/Preferences.xib index fcc95b3f5..87c7ca924 100644 --- a/macosx/English.lproj/Preferences.xib +++ b/macosx/English.lproj/Preferences.xib @@ -1,9 +1,10 @@ <?xml version="1.0" encoding="UTF-8"?> -<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="12120" systemVersion="16F60a" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES"> +<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="13122.17" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES"> <dependencies> <deployment identifier="macosx"/> - <development version="7000" identifier="xcode"/> - <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="12120"/> + <development version="8000" identifier="xcode"/> + <plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="13122.17"/> + <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/> </dependencies> <objects> <customObject id="-2" userLabel="File's Owner" customClass="HBPreferencesController"> @@ -27,7 +28,7 @@ <value key="minSize" type="size" width="212" height="107"/> <view key="contentView" id="6"> <rect key="frame" x="0.0" y="0.0" width="500" height="200"/> - <autoresizingMask key="autoresizingMask"/> + <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> </view> <connections> <outlet property="delegate" destination="-2" id="185"/> @@ -219,7 +220,7 @@ <binding destination="61" name="selectedValue" keyPath="values.DefaultMpegExtension" id="490"/> </connections> </popUpButton> - <popUpButton verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="491"> + <popUpButton verticalHuggingPriority="750" misplaced="YES" translatesAutoresizingMaskIntoConstraints="NO" id="491"> <rect key="frame" x="93" y="268" width="156" height="22"/> <popUpButtonCell key="cell" type="push" title="Notification" bezelStyle="rounded" alignment="left" controlSize="small" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" tag="2" imageScaling="proportionallyDown" inset="2" selectedItem="499" id="492"> <behavior key="behavior" lightByBackground="YES" lightByGray="YES"/> @@ -446,14 +447,14 @@ <point key="canvasLocation" x="507" y="-749"/> </customView> <customView id="236" userLabel="Advanced"> - <rect key="frame" x="0.0" y="0.0" width="500" height="260"/> + <rect key="frame" x="0.0" y="0.0" width="500" height="294"/> <autoresizingMask key="autoresizingMask"/> <subviews> <customView translatesAutoresizingMaskIntoConstraints="NO" id="4UU-uq-R9U"> - <rect key="frame" x="11" y="0.0" width="478" height="260"/> + <rect key="frame" x="19" y="0.0" width="462" height="294"/> <subviews> <popUpButton toolTip="Verbosity Level. Extended verbosity records more technical information to the Activity Log. Minimal verbosity records less." verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="363"> - <rect key="frame" x="194" y="55" width="88" height="22"/> + <rect key="frame" x="194" y="89" width="88" height="22"/> <popUpButtonCell key="cell" type="push" title="Standard" bezelStyle="rounded" alignment="left" controlSize="small" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" tag="1" imageScaling="proportionallyDown" inset="2" selectedItem="369" id="364"> <behavior key="behavior" lightByBackground="YES" lightByGray="YES"/> <font key="font" metaFont="smallSystem"/> @@ -471,7 +472,7 @@ </connections> </popUpButton> <popUpButton toolTip="Determines the granularity of the x264 Constant Quality control. Smaller values allow for finer quality increments." horizontalHuggingPriority="249" verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="387"> - <rect key="frame" x="314" y="219" width="58" height="22"/> + <rect key="frame" x="314" y="253" width="58" height="22"/> <popUpButtonCell key="cell" type="push" title="0.25" bezelStyle="rounded" alignment="left" controlSize="small" lineBreakMode="truncatingTail" state="on" borderStyle="borderAndBezel" imageScaling="proportionallyDown" inset="2" selectedItem="391" id="388"> <behavior key="behavior" lightByBackground="YES" lightByGray="YES"/> <font key="font" metaFont="smallSystem"/> @@ -494,7 +495,7 @@ </connections> </popUpButton> <button toolTip="Use libdvdnav to read DVDs. Only disable this for problematic DVDs where libdvdread works better (rare)." verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="398"> - <rect key="frame" x="102" y="92" width="218" height="18"/> + <rect key="frame" x="102" y="126" width="219" height="18"/> <buttonCell key="cell" type="check" title="Use libdvdnav (instead of libdvdread)" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="399"> <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/> <font key="font" metaFont="smallSystem"/> @@ -504,7 +505,7 @@ </connections> </button> <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="347"> - <rect key="frame" x="102" y="37" width="358" height="18"/> + <rect key="frame" x="102" y="71" width="342" height="18"/> <buttonCell key="cell" type="check" title="Store Activity Logs in same location as video" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="348"> <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/> <font key="font" metaFont="smallSystem"/> @@ -514,7 +515,7 @@ </connections> </button> <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="1000" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="300" translatesAutoresizingMaskIntoConstraints="NO" id="442"> - <rect key="frame" x="18" y="94" width="81" height="14"/> + <rect key="frame" x="18" y="128" width="81" height="14"/> <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="right" title="DVD Reader:" id="443"> <font key="font" metaFont="smallSystem"/> <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> @@ -522,7 +523,7 @@ </textFieldCell> </textField> <textField horizontalHuggingPriority="248" verticalHuggingPriority="750" horizontalCompressionResistancePriority="1000" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="300" translatesAutoresizingMaskIntoConstraints="NO" id="IV7-SY-HLR"> - <rect key="frame" x="18" y="165" width="81" height="14"/> + <rect key="frame" x="18" y="199" width="81" height="14"/> <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="right" title="Title Scan:" id="c0L-TU-WML"> <font key="font" metaFont="smallSystem"/> <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> @@ -530,7 +531,7 @@ </textFieldCell> </textField> <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="1000" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="300" translatesAutoresizingMaskIntoConstraints="NO" id="jPa-4p-Y29"> - <rect key="frame" x="18" y="224" width="81" height="14"/> + <rect key="frame" x="18" y="258" width="81" height="14"/> <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="right" title="x264 Encoder:" id="cqp-xU-GOe"> <font key="font" metaFont="smallSystem"/> <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> @@ -538,7 +539,7 @@ </textFieldCell> </textField> <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="300" translatesAutoresizingMaskIntoConstraints="NO" id="350"> - <rect key="frame" x="18" y="60" width="81" height="14"/> + <rect key="frame" x="18" y="94" width="81" height="14"/> <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="right" title="Activity Logs:" id="351"> <font key="font" metaFont="smallSystem"/> <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> @@ -546,7 +547,7 @@ </textFieldCell> </textField> <textField toolTip="Verbosity Level. Extended verbosity records more technical information to the Activity Log. Minimal verbosity records less." verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="200" translatesAutoresizingMaskIntoConstraints="NO" id="371"> - <rect key="frame" x="103" y="60" width="88" height="14"/> + <rect key="frame" x="103" y="94" width="88" height="14"/> <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="right" title="Verbosity Level:" id="372"> <font key="font" metaFont="smallSystem"/> <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> @@ -554,7 +555,7 @@ </textFieldCell> </textField> <textField toolTip="Number of picture previews to scan. Higher values may increase automatic cropping accuracy at the expense of title scan time." verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="400" translatesAutoresizingMaskIntoConstraints="NO" id="359"> - <rect key="frame" x="103" y="143" width="195" height="14"/> + <rect key="frame" x="103" y="177" width="195" height="14"/> <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="right" title="Number of picture previews to scan:" id="360"> <font key="font" metaFont="smallSystem"/> <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> @@ -562,7 +563,7 @@ </textFieldCell> </textField> <textField toolTip="Minimum title duration in seconds. Shorter titles will be skipped." verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="400" translatesAutoresizingMaskIntoConstraints="NO" id="463"> - <rect key="frame" x="103" y="165" width="167" height="14"/> + <rect key="frame" x="103" y="199" width="167" height="14"/> <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="right" title="Minimum title duration to scan:" id="464"> <font key="font" metaFont="smallSystem"/> <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> @@ -570,7 +571,7 @@ </textFieldCell> </textField> <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="200" translatesAutoresizingMaskIntoConstraints="NO" id="UXr-op-aKN"> - <rect key="frame" x="321" y="165" width="49" height="14"/> + <rect key="frame" x="321" y="199" width="49" height="14"/> <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="left" title="seconds" id="klQ-DW-Kc6"> <font key="font" metaFont="smallSystem"/> <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> @@ -578,7 +579,7 @@ </textFieldCell> </textField> <textField toolTip="Determines the granularity of the x264 Constant Quality control. Smaller values allow for finer quality increments." verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="400" translatesAutoresizingMaskIntoConstraints="NO" id="395"> - <rect key="frame" x="103" y="224" width="208" height="14"/> + <rect key="frame" x="103" y="258" width="208" height="14"/> <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="right" title="Constant Quality fractional granularity:" id="396"> <font key="font" metaFont="smallSystem"/> <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> @@ -586,7 +587,7 @@ </textFieldCell> </textField> <textField toolTip="Minimum title duration in seconds. Shorter titles will be skipped." verticalHuggingPriority="750" allowsCharacterPickerTouchBarItem="YES" translatesAutoresizingMaskIntoConstraints="NO" id="480"> - <rect key="frame" x="276" y="162" width="40" height="19"/> + <rect key="frame" x="276" y="196" width="40" height="19"/> <constraints> <constraint firstAttribute="width" constant="40" id="y5Z-y6-LMm"/> </constraints> @@ -601,7 +602,7 @@ </connections> </textField> <popUpButton toolTip="Number of picture previews to scan. Higher values may increase automatic cropping accuracy at the expense of title scan time." verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="352"> - <rect key="frame" x="301" y="138" width="56" height="22"/> + <rect key="frame" x="301" y="172" width="56" height="22"/> <constraints> <constraint firstAttribute="width" relation="greaterThanOrEqual" constant="50" id="ASh-ct-Imw"/> </constraints> @@ -646,8 +647,8 @@ </connections> </popUpButton> <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="Ndp-Xh-ohY"> - <rect key="frame" x="102" y="17" width="358" height="18"/> - <buttonCell key="cell" type="check" title="Remove old logs from main Activity Logs directory after 30 days" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="lgn-RF-k0d"> + <rect key="frame" x="102" y="51" width="342" height="18"/> + <buttonCell key="cell" type="check" title="Remove old logs from main Activity Logs folder after 30 days" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="lgn-RF-k0d"> <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/> <font key="font" metaFont="smallSystem"/> </buttonCell> @@ -656,7 +657,7 @@ </connections> </button> <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="ybi-46-yhY"> - <rect key="frame" x="102" y="201" width="253" height="18"/> + <rect key="frame" x="102" y="235" width="254" height="18"/> <string key="toolTip">Show the Advanced Options Panel for x264 settings. This setting is no longer supported and may be removed in a future version. Use at your own risk!</string> @@ -669,29 +670,75 @@ This setting is no longer supported and may be removed in a future version. Use </connections> </button> <box verticalHuggingPriority="750" boxType="separator" translatesAutoresizingMaskIntoConstraints="NO" id="I0X-1x-9qe"> - <rect key="frame" x="0.0" y="122" width="478" height="5"/> + <rect key="frame" x="0.0" y="156" width="462" height="5"/> </box> + <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="300" translatesAutoresizingMaskIntoConstraints="NO" id="sRQ-Oe-1xH"> + <rect key="frame" x="18" y="19" width="81" height="14"/> + <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="right" title="Queue:" id="FKi-zh-5gc"> + <font key="font" metaFont="smallSystem"/> + <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> + <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/> + </textFieldCell> + </textField> + <button verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="htF-lD-ZBh"> + <rect key="frame" x="102" y="17" width="232" height="18"/> + <buttonCell key="cell" type="check" title="Pause queue if disk space is lower than:" bezelStyle="regularSquare" imagePosition="left" alignment="left" controlSize="small" inset="2" id="yG9-mz-tqQ"> + <behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/> + <font key="font" metaFont="smallSystem"/> + </buttonCell> + <connections> + <binding destination="61" name="value" keyPath="values.HBQueuePauseIfLowSpace" id="GWr-Dv-XBh"/> + </connections> + </button> + <textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" allowsCharacterPickerTouchBarItem="YES" preferredMaxLayoutWidth="200" translatesAutoresizingMaskIntoConstraints="NO" id="Koh-5H-cdo"> + <rect key="frame" x="385" y="19" width="20" height="14"/> + <textFieldCell key="cell" controlSize="small" sendsActionOnEndEditing="YES" alignment="left" title="GB" id="FZE-ZR-g93"> + <font key="font" metaFont="smallSystem"/> + <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/> + <color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/> + </textFieldCell> + </textField> + <textField toolTip="Minimum title duration in seconds. Shorter titles will be skipped." verticalHuggingPriority="750" allowsCharacterPickerTouchBarItem="YES" translatesAutoresizingMaskIntoConstraints="NO" id="PaR-zw-opS"> + <rect key="frame" x="340" y="16" width="40" height="19"/> + <constraints> + <constraint firstAttribute="width" constant="40" id="uuf-kg-lmG"/> + </constraints> + <textFieldCell key="cell" controlSize="small" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" state="on" borderStyle="bezel" drawsBackground="YES" id="Qph-AN-EnT"> + <font key="font" metaFont="smallSystem"/> + <color key="textColor" name="textColor" catalog="System" colorSpace="catalog"/> + <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/> + </textFieldCell> + <connections> + <accessibilityConnection property="title" destination="463" id="YME-4F-SDY"/> + <binding destination="61" name="value" keyPath="values.HBQueueMinFreeSpace" id="xrN-DJ-ihe"/> + </connections> + </textField> </subviews> <constraints> <constraint firstItem="jPa-4p-Y29" firstAttribute="leading" secondItem="4UU-uq-R9U" secondAttribute="leading" constant="20" id="0XL-N8-hhe"/> <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="363" secondAttribute="trailing" constant="20" id="0by-WQ-IEO"/> <constraint firstItem="442" firstAttribute="leading" secondItem="jPa-4p-Y29" secondAttribute="leading" id="0y2-cf-8RZ"/> + <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="Koh-5H-cdo" secondAttribute="trailing" constant="58" id="5Bp-kU-ggd"/> <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="ybi-46-yhY" secondAttribute="trailing" constant="20" id="5KQ-eS-SOh"/> <constraint firstItem="359" firstAttribute="baseline" secondItem="352" secondAttribute="baseline" id="7tL-h8-5AB"/> <constraint firstItem="395" firstAttribute="baseline" secondItem="387" secondAttribute="baseline" id="80j-Xc-t7X"/> <constraint firstItem="463" firstAttribute="top" secondItem="ybi-46-yhY" secondAttribute="bottom" constant="25" id="ANO-Sf-GW8"/> <constraint firstItem="347" firstAttribute="leading" secondItem="371" secondAttribute="leading" id="Bwa-R1-Sg0"/> <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="UXr-op-aKN" secondAttribute="trailing" constant="20" id="CRS-Yq-1Ur"/> + <constraint firstItem="htF-lD-ZBh" firstAttribute="baseline" secondItem="sRQ-Oe-1xH" secondAttribute="baseline" id="DMh-iO-Tvh"/> + <constraint firstItem="sRQ-Oe-1xH" firstAttribute="width" secondItem="jPa-4p-Y29" secondAttribute="width" id="DYV-81-ZgI"/> <constraint firstItem="IV7-SY-HLR" firstAttribute="width" secondItem="jPa-4p-Y29" secondAttribute="width" id="Ekr-Q8-lG6"/> <constraint firstAttribute="trailing" secondItem="347" secondAttribute="trailing" constant="20" id="G8s-yJ-mYX"/> <constraint firstItem="371" firstAttribute="leading" secondItem="350" secondAttribute="trailing" constant="8" id="GOV-QT-45K"/> <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="398" secondAttribute="trailing" constant="20" id="H0U-AP-LwY"/> + <constraint firstItem="Koh-5H-cdo" firstAttribute="leading" secondItem="PaR-zw-opS" secondAttribute="trailing" constant="7" id="Hd0-hx-WId"/> <constraint firstItem="350" firstAttribute="baseline" secondItem="371" secondAttribute="baseline" id="KJC-CV-ZFy"/> <constraint firstItem="Ndp-Xh-ohY" firstAttribute="top" secondItem="347" secondAttribute="bottom" constant="8" id="Kgc-7G-m3M"/> <constraint firstItem="jPa-4p-Y29" firstAttribute="top" secondItem="4UU-uq-R9U" secondAttribute="top" constant="22" id="Mib-9l-uBL"/> <constraint firstItem="371" firstAttribute="top" secondItem="398" secondAttribute="bottom" constant="21" id="Mt3-Wx-Kuh"/> <constraint firstItem="442" firstAttribute="width" secondItem="jPa-4p-Y29" secondAttribute="width" id="Pqh-h0-NeI"/> <constraint firstItem="UXr-op-aKN" firstAttribute="leading" secondItem="480" secondAttribute="trailing" constant="7" id="TR5-Sj-PDx"/> + <constraint firstItem="htF-lD-ZBh" firstAttribute="leading" secondItem="sRQ-Oe-1xH" secondAttribute="trailing" constant="8" id="TW2-Vp-Dg8"/> <constraint firstItem="I0X-1x-9qe" firstAttribute="top" secondItem="359" secondAttribute="bottom" constant="18" id="VUn-iF-GUU"/> <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="Ndp-Xh-ohY" secondAttribute="trailing" constant="20" id="W8N-xj-n7t"/> <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="387" secondAttribute="trailing" constant="20" id="WCG-H7-Rbj"/> @@ -705,22 +752,27 @@ This setting is no longer supported and may be removed in a future version. Use <constraint firstItem="395" firstAttribute="leading" secondItem="jPa-4p-Y29" secondAttribute="trailing" constant="8" id="caX-fe-X6B"/> <constraint firstItem="ybi-46-yhY" firstAttribute="top" secondItem="395" secondAttribute="bottom" constant="8" id="dCc-Sn-atf"/> <constraint firstItem="IV7-SY-HLR" firstAttribute="baseline" secondItem="463" secondAttribute="baseline" id="dGu-2J-ulw"/> - <constraint firstAttribute="bottom" secondItem="Ndp-Xh-ohY" secondAttribute="bottom" constant="20" id="e3A-G9-Axd"/> <constraint firstItem="398" firstAttribute="leading" secondItem="442" secondAttribute="trailing" constant="8" id="eps-Ux-xp1"/> <constraint firstItem="IV7-SY-HLR" firstAttribute="leading" secondItem="jPa-4p-Y29" secondAttribute="leading" id="gET-Go-zxJ"/> <constraint firstItem="398" firstAttribute="top" secondItem="I0X-1x-9qe" secondAttribute="bottom" constant="17" id="gdO-Fj-mGh"/> + <constraint firstItem="PaR-zw-opS" firstAttribute="leading" secondItem="htF-lD-ZBh" secondAttribute="trailing" constant="8" id="h3H-QH-Yvf"/> <constraint firstItem="387" firstAttribute="leading" secondItem="395" secondAttribute="trailing" constant="8" id="hPc-oW-N0X"/> <constraint firstItem="jPa-4p-Y29" firstAttribute="baseline" secondItem="395" secondAttribute="baseline" id="hTL-Uk-IQQ"/> + <constraint firstItem="PaR-zw-opS" firstAttribute="baseline" secondItem="Koh-5H-cdo" secondAttribute="baseline" id="hiG-dl-OXa"/> + <constraint firstItem="sRQ-Oe-1xH" firstAttribute="leading" secondItem="jPa-4p-Y29" secondAttribute="leading" id="hqp-8U-592"/> <constraint firstItem="350" firstAttribute="leading" secondItem="jPa-4p-Y29" secondAttribute="leading" id="ij3-90-HPL"/> <constraint firstItem="480" firstAttribute="leading" secondItem="463" secondAttribute="trailing" constant="8" id="jCH-kU-onJ"/> <constraint firstItem="398" firstAttribute="baseline" secondItem="442" secondAttribute="baseline" id="jgZ-xm-mR7"/> <constraint firstItem="463" firstAttribute="leading" secondItem="IV7-SY-HLR" secondAttribute="trailing" constant="8" id="n94-r1-Eio"/> <constraint firstItem="371" firstAttribute="baseline" secondItem="363" secondAttribute="baseline" id="sKu-bO-LUe"/> + <constraint firstAttribute="bottom" secondItem="htF-lD-ZBh" secondAttribute="bottom" constant="20" symbolic="YES" id="t0z-9T-DHm"/> <constraint firstItem="Ndp-Xh-ohY" firstAttribute="leading" secondItem="347" secondAttribute="leading" id="tCO-d0-lRc"/> <constraint firstItem="352" firstAttribute="leading" secondItem="359" secondAttribute="trailing" constant="8" id="u50-Ic-0EB"/> + <constraint firstItem="htF-lD-ZBh" firstAttribute="top" secondItem="Ndp-Xh-ohY" secondAttribute="bottom" constant="22" id="ujO-hF-lGo"/> <constraint firstItem="463" firstAttribute="baseline" secondItem="480" secondAttribute="baseline" id="ulv-OM-ioh"/> <constraint firstItem="359" firstAttribute="top" secondItem="463" secondAttribute="bottom" constant="8" id="uzg-mY-YoJ"/> <constraint firstItem="ybi-46-yhY" firstAttribute="leading" secondItem="395" secondAttribute="leading" id="vfq-uw-S0v"/> + <constraint firstItem="PaR-zw-opS" firstAttribute="baseline" secondItem="htF-lD-ZBh" secondAttribute="baseline" id="wLK-IO-wMW"/> <constraint firstItem="I0X-1x-9qe" firstAttribute="leading" secondItem="4UU-uq-R9U" secondAttribute="leading" id="zfW-ta-RNq"/> </constraints> </customView> @@ -732,7 +784,7 @@ This setting is no longer supported and may be removed in a future version. Use <constraint firstItem="4UU-uq-R9U" firstAttribute="leading" relation="greaterThanOrEqual" secondItem="236" secondAttribute="leading" priority="750" id="iT8-1K-bUI"/> <constraint firstAttribute="trailing" relation="greaterThanOrEqual" secondItem="4UU-uq-R9U" secondAttribute="trailing" priority="750" id="yAs-3j-mb6"/> </constraints> - <point key="canvasLocation" x="386" y="-520"/> + <point key="canvasLocation" x="526" y="-614"/> </customView> <customObject id="410" userLabel="Updater" customClass="SUUpdater"/> </objects> diff --git a/macosx/HBPreferencesController.m b/macosx/HBPreferencesController.m index 90f23d9b4..b24219b34 100644 --- a/macosx/HBPreferencesController.m +++ b/macosx/HBPreferencesController.m @@ -77,7 +77,9 @@ @"x264CqSliderFractional": @"0.50", @"HBShowAdvancedTab": @NO, @"HBAutoNamingFormat": @[@"{Source}", @" ", @"{Title}"], - @"HBDrawerSize": NSStringFromSize(NSMakeSize(184, 591)) + @"HBDrawerSize": NSStringFromSize(NSMakeSize(184, 591)), + @"HBQueuePauseIfLowSpace": @YES, + @"HBQueueMinFreeSpace": @"2" }]; // Overwrite the update check interval because previous versions diff --git a/macosx/HBQueueController.m b/macosx/HBQueueController.m index e26b2dc14..8ce96e9ec 100644 --- a/macosx/HBQueueController.m +++ b/macosx/HBQueueController.m @@ -537,31 +537,32 @@ self.completedItemsCount = completedCount; } -#pragma mark - -#pragma mark Queue Job Processing - -#define ALMOST_2GB 2000000000 +#pragma mark - Queue Job Processing - (BOOL)_isDiskSpaceLowAtURL:(NSURL *)url { - NSURL *volumeURL = nil; - NSDictionary<NSURLResourceKey, id> *attrs = [url resourceValuesForKeys:@[NSURLIsVolumeKey, NSURLVolumeURLKey] error:NULL]; + if ([[NSUserDefaults standardUserDefaults] boolForKey:@"HBQueuePauseIfLowSpace"]) + { + NSURL *volumeURL = nil; + NSDictionary<NSURLResourceKey, id> *attrs = [url resourceValuesForKeys:@[NSURLIsVolumeKey, NSURLVolumeURLKey] error:NULL]; + long long minCapacity = [[[NSUserDefaults standardUserDefaults] stringForKey:@"HBQueueMinFreeSpace"] longLongValue] * 1000000000; - volumeURL = [attrs[NSURLIsVolumeKey] boolValue] ? url : attrs[NSURLVolumeURLKey]; + volumeURL = [attrs[NSURLIsVolumeKey] boolValue] ? url : attrs[NSURLVolumeURLKey]; - if (volumeURL) - { - if ([volumeURL respondsToSelector:@selector(removeCachedResourceValueForKey:)]) + if (volumeURL) { - [volumeURL removeCachedResourceValueForKey:NSURLVolumeAvailableCapacityKey]; - } - attrs = [volumeURL resourceValuesForKeys:@[NSURLVolumeAvailableCapacityKey] error:NULL]; + if ([volumeURL respondsToSelector:@selector(removeCachedResourceValueForKey:)]) + { + [volumeURL removeCachedResourceValueForKey:NSURLVolumeAvailableCapacityKey]; + } + attrs = [volumeURL resourceValuesForKeys:@[NSURLVolumeAvailableCapacityKey] error:NULL]; - if (attrs[NSURLVolumeAvailableCapacityKey]) - { - if ([attrs[NSURLVolumeAvailableCapacityKey] longLongValue] < ALMOST_2GB) + if (attrs[NSURLVolumeAvailableCapacityKey]) { - return YES; + if ([attrs[NSURLVolumeAvailableCapacityKey] longLongValue] < minCapacity) + { + return YES; + } } } } |