summaryrefslogtreecommitdiffstats
path: root/win/CS/HandBrakeWPF/Converters/Audio/AudioControlVisibilityConverter.cs
diff options
context:
space:
mode:
authorsr55 <[email protected]>2019-08-03 20:58:06 +0100
committersr55 <[email protected]>2019-08-12 18:41:57 +0100
commit8b09ede89942b630a0fbdee77d914059d590c379 (patch)
treef23beb0e0a77cceaac7c3e97977d78e5600f9581 /win/CS/HandBrakeWPF/Converters/Audio/AudioControlVisibilityConverter.cs
parent482edae69956ca854a9fa72f5c31aef9492a61f5 (diff)
WinGui: Improvements to dropdown visibility behaviour on the Audio Defaults. #2135
Diffstat (limited to 'win/CS/HandBrakeWPF/Converters/Audio/AudioControlVisibilityConverter.cs')
-rw-r--r--win/CS/HandBrakeWPF/Converters/Audio/AudioControlVisibilityConverter.cs22
1 files changed, 21 insertions, 1 deletions
diff --git a/win/CS/HandBrakeWPF/Converters/Audio/AudioControlVisibilityConverter.cs b/win/CS/HandBrakeWPF/Converters/Audio/AudioControlVisibilityConverter.cs
index 808fc9a2c..31e40dd6b 100644
--- a/win/CS/HandBrakeWPF/Converters/Audio/AudioControlVisibilityConverter.cs
+++ b/win/CS/HandBrakeWPF/Converters/Audio/AudioControlVisibilityConverter.cs
@@ -20,14 +20,34 @@ namespace HandBrakeWPF.Converters.Audio
{
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
{
- if (values.Length == 1)
+ if (values.Length == 3)
{
bool isVisibile = (bool)values[0];
+ bool isPassthru = (bool)values[1];
+ AudioEncoder fallbackEncoder = (AudioEncoder)values[2];
if (!isVisibile)
{
return Visibility.Collapsed;
}
+
+ // When the Fallback Encoder is "None" and we have a passthru encoder selected on the track, we don't have any encoder options to override so don't show them.
+ if (isPassthru && fallbackEncoder == AudioEncoder.None)
+ {
+ return Visibility.Collapsed;
+ }
+ }
+
+ if (values.Length == 2)
+ {
+ bool isPassthru = (bool)values[0];
+ AudioEncoder fallbackEncoder = (AudioEncoder)values[1];
+
+ // When the Fallback Encoder is "None" and we have a passthru encoder selected on the track, we don't have any encoder options to override so don't show them.
+ if (isPassthru && fallbackEncoder == AudioEncoder.None)
+ {
+ return Visibility.Collapsed;
+ }
}
return Visibility.Visible;