diff --git a/MonitorControl/Enums/PrefKey.swift b/MonitorControl/Enums/PrefKey.swift index efcb9b2..ec67f81 100644 --- a/MonitorControl/Enums/PrefKey.swift +++ b/MonitorControl/Enums/PrefKey.swift @@ -22,6 +22,9 @@ enum PrefKey: String { // DDC polling count for display case pollingCount + // Display should avoid gamma table manipulation and use shades instead (to coexist with other apps doing gamma manipulation) + case avoidGamma + // Command value display case value @@ -127,6 +130,9 @@ enum PrefKey: String { // Change Brightness for all screens case allScreensBrightness + // Allow zero software brightness + case allowZeroSwBrightness + // Use focus instead of mouse position to determine which display to control for brightness case useFocusInsteadOfMouse diff --git a/MonitorControl/Info.plist b/MonitorControl/Info.plist index dfebba5..637c02d 100644 --- a/MonitorControl/Info.plist +++ b/MonitorControl/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - 6395 + 6421 LSApplicationCategoryType public.app-category.utilities LSMinimumSystemVersion diff --git a/MonitorControl/Model/Display.swift b/MonitorControl/Model/Display.swift index b157312..e1d7659 100644 --- a/MonitorControl/Model/Display.swift +++ b/MonitorControl/Model/Display.swift @@ -191,7 +191,7 @@ class Display: Equatable { } func swBrightnessTransform(value: Float, reverse: Bool = false) -> Float { - let lowTreshold: Float = 0.0 // If we don't want to allow zero brightness for safety reason, this value can be modified (for example to 0.1 for a 10% minimum) + let lowTreshold: Float = prefs.bool(forKey: PrefKey.allowZeroSwBrightness.rawValue) ? 0.0 : 0.15 if !reverse { return value * (1 - lowTreshold) + lowTreshold } else { @@ -214,7 +214,7 @@ class Display: Equatable { guard app.reconfigureID == 0 else { return } - if self.isVirtual { + if self.isVirtual || self.readPrefAsBool(key: .avoidGamma) { _ = DisplayManager.shared.setShadeAlpha(value: 1 - transientValue, displayID: self.identifier) } else { let gammaTableRed = self.defaultGammaTableRed.map { $0 * transientValue } @@ -227,8 +227,8 @@ class Display: Equatable { self.swBrightnessSemaphore.signal() } } else { - if self.isVirtual { - return DisplayManager.shared.setShadeAlpha(value: 1 - value, displayID: self.identifier) + if self.isVirtual || self.readPrefAsBool(key: .avoidGamma) { + return DisplayManager.shared.setShadeAlpha(value: 1 - newValue, displayID: self.identifier) } else { let gammaTableRed = self.defaultGammaTableRed.map { $0 * newValue } let gammaTableGreen = self.defaultGammaTableGreen.map { $0 * newValue } @@ -242,8 +242,9 @@ class Display: Equatable { } func getSwBrightness() -> Float { - if self.isVirtual { - return 1 - (DisplayManager.shared.getShadeAlpha(displayID: self.identifier) ?? 1) + if self.isVirtual || self.readPrefAsBool(key: .avoidGamma) { + let rawBrightnessValue = 1 - (DisplayManager.shared.getShadeAlpha(displayID: self.identifier) ?? 1) + return self.swBrightnessTransform(value: rawBrightnessValue, reverse: true) } var gammaTableRed = [CGGammaValue](repeating: 0, count: 256) var gammaTableGreen = [CGGammaValue](repeating: 0, count: 256) diff --git a/MonitorControl/Model/OtherDisplay.swift b/MonitorControl/Model/OtherDisplay.swift index dd5a190..1222c30 100644 --- a/MonitorControl/Model/OtherDisplay.swift +++ b/MonitorControl/Model/OtherDisplay.swift @@ -76,7 +76,12 @@ class OtherDisplay: Display { func setupCurrentAndMaxValues(command: Command, firstrun: Bool = false) { var ddcValues: (UInt16, UInt16)? var maxDDCValue = UInt16(DDC_MAX_DETECT_LIMIT) - var currentDDCValue = UInt16(Float(DDC_MAX_DETECT_LIMIT) * 1) + var currentDDCValue: UInt16 + switch command { + case .audioSpeakerVolume: currentDDCValue = UInt16(Float(self.DDC_MAX_DETECT_LIMIT) * 0.125) + case .contrast: currentDDCValue = UInt16(Float(self.DDC_MAX_DETECT_LIMIT) * 0.750) + default: currentDDCValue = UInt16(Float(self.DDC_MAX_DETECT_LIMIT) * 1.000) + } if command == .audioSpeakerVolume { currentDDCValue = UInt16(Float(self.DDC_MAX_DETECT_LIMIT) * 0.125) // lower default audio value as high volume might rattle the user. } @@ -114,7 +119,7 @@ class OtherDisplay: Display { _ = self.writeDDCValues(command: command, value: currentDDCValue) } } else { - self.savePref(max(0.1, self.prefExists(for: command) ? self.readPrefAsFloat(for: command) : Float(1)), for: command) + self.savePref(self.prefExists(for: command) ? self.readPrefAsFloat(for: command) : Float(1), for: command) self.savePref(self.readPrefAsFloat(for: command), key: .SwBrightness) self.brightnessSyncSourceValue = self.readPrefAsFloat(for: command) self.smoothBrightnessTransient = self.readPrefAsFloat(for: command) diff --git a/MonitorControl/Support/KeyboardShortcutsManager.swift b/MonitorControl/Support/KeyboardShortcutsManager.swift index b8d5401..1c10a67 100644 --- a/MonitorControl/Support/KeyboardShortcutsManager.swift +++ b/MonitorControl/Support/KeyboardShortcutsManager.swift @@ -56,8 +56,8 @@ class KeyboardShortcutsManager { } func engage(_ shortcut: KeyboardShortcuts.Name) { - self.initialKeyRepeat = UserDefaults.standard.double(forKey: "InitialKeyRepeat") * 0.014 - self.keyRepeat = UserDefaults.standard.double(forKey: "KeyRepeat") * 0.014 + self.initialKeyRepeat = max(15, UserDefaults.standard.double(forKey: "InitialKeyRepeat")) * 0.014 + self.keyRepeat = max(2, UserDefaults.standard.double(forKey: "KeyRepeat")) * 0.014 self.currentCommand = shortcut self.isFirstKeypress = true self.isHold = true diff --git a/MonitorControl/UI/Base.lproj/Main.storyboard b/MonitorControl/UI/Base.lproj/Main.storyboard index d4668d9..5e408df 100644 --- a/MonitorControl/UI/Base.lproj/Main.storyboard +++ b/MonitorControl/UI/Base.lproj/Main.storyboard @@ -1,7 +1,6 @@ - @@ -11,10 +10,10 @@ - + - + @@ -27,6 +26,8 @@ + + @@ -47,7 +48,7 @@ - + @@ -57,7 +58,7 @@ + + + + + + + + Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating. + + + + + @@ -357,6 +383,7 @@ + @@ -364,6 +391,8 @@ + + @@ -382,7 +411,7 @@ - + @@ -902,7 +931,7 @@ - Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays. + Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays. @@ -1384,16 +1413,16 @@ - + - - + + - - + + - - + + @@ -1412,16 +1441,16 @@ - + - + - + @@ -1430,7 +1459,7 @@ - + @@ -1461,11 +1490,11 @@ - + - + @@ -1474,7 +1503,7 @@ - + @@ -1483,7 +1512,7 @@ - + @@ -1495,7 +1524,7 @@ - + @@ -1504,7 +1533,7 @@ - + @@ -2002,7 +2031,7 @@ + - + + @@ -2078,7 +2119,7 @@ - + @@ -2091,7 +2132,7 @@ - + @@ -2200,7 +2241,7 @@ - + diff --git a/MonitorControl/UI/de.lproj/Localizable.strings b/MonitorControl/UI/de.lproj/Localizable.strings index 62a693c..dc87001 100644 --- a/MonitorControl/UI/de.lproj/Localizable.strings +++ b/MonitorControl/UI/de.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (Schattierung)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Dieser Bildschirm ermöglicht eine Software-Helligkeitssteuerung über gammable Manipulation, da er keine Hardware-Steuerung unterstützt. Gründe dafür können die Verwendung des HDMI-Anschlusses eines Mac mini (der die Hardware-DDC-Steuerung blockiert) oder ein Bildschirm auf der Sperrliste sein."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Dieser Bildschirm ermöglicht eine Software-Helligkeitssteuerung über gammable Manipulation, da er keine Hardware-Steuerung unterstützt. Gründe dafür können die Verwendung des HDMI-Anschlusses eines Mac mini (der die Hardware-DDC-Steuerung blockiert) oder ein Bildschirm auf der Sperrliste sein."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "Dieser Bildschirm hat einen nicht definierten Kontrollzustand."; diff --git a/MonitorControl/UI/de.lproj/Main.strings b/MonitorControl/UI/de.lproj/Main.strings index 42eb6df..2826ceb 100644 --- a/MonitorControl/UI/de.lproj/Main.strings +++ b/MonitorControl/UI/de.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Lautstärke:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple und eingebaute Monitore verfügen bereits über einen Helligkeitsregler im Kontrollzentrum."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Helligkeitsregler im Menü anzeigen"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Getrennte Skalen für kombiniertes Dimmen von Hardware und Software"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "zählen:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Verwenden Sie die Helligkeitstasten Ihrer Apple-Tastatur, um die Helligkeit zu steuern. Halten Sie die Steuerungstaste gedrückt, um den eingebauten Monitor zu steuern, und halten Sie die Tastenkombination Steuerung+Option gedrückt, um externe Monitore zu steuern. Halten Sie Shift+Option für die Feinsteuerung. Steuerung+Option+Befehl stellt den Kontrast auf DDC-kompatiblen Monitoren ein."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Verwenden Sie die Helligkeitstasten Ihrer Apple-Tastatur, um die Helligkeit zu steuern. Halten Sie die Steuerungstaste gedrückt, um den eingebauten Monitor zu steuern, und halten Sie die Tastenkombination Steuerung+Befehl gedrückt, um externe Monitore zu steuern. Halten Sie Shift+Option für die Feinsteuerung. Steuerung+Option+Befehl stellt den Kontrast auf DDC-kompatiblen Monitoren ein."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Steuerung:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "Für die Steuerung der Hardware-Helligkeit steht die volle OSD-Skala zur Verfügung, und nach Erreichen der Helligkeit 0 erfolgt eine weitere Software-Dimmung."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Annehmen, dass die zuletzt gespeicherten Einstellungen gültig sind (empfohlen)"; diff --git a/MonitorControl/UI/en.lproj/Localizable.strings b/MonitorControl/UI/en.lproj/Localizable.strings index 001bcab..2d5f859 100644 --- a/MonitorControl/UI/en.lproj/Localizable.strings +++ b/MonitorControl/UI/en.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (shade)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "This display has an unspecified control status."; diff --git a/MonitorControl/UI/en.lproj/Main.strings b/MonitorControl/UI/en.lproj/Main.strings index 074b4c0..517d451 100644 --- a/MonitorControl/UI/en.lproj/Main.strings +++ b/MonitorControl/UI/en.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Volume:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple and built-in displays already have a brightness slider in Control Center."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Show brightness slider in menu"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Separate scales for combined hardware & software dimming"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "count:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Control method:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Assume last saved settings are valid (recommended)"; diff --git a/MonitorControl/UI/es-419.lproj/Localizable.strings b/MonitorControl/UI/es-419.lproj/Localizable.strings index 16b1205..bc3e049 100644 --- a/MonitorControl/UI/es-419.lproj/Localizable.strings +++ b/MonitorControl/UI/es-419.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (shade)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "This display has an unspecified control status."; diff --git a/MonitorControl/UI/es-419.lproj/Main.strings b/MonitorControl/UI/es-419.lproj/Main.strings index 7256f1f..7165f13 100644 --- a/MonitorControl/UI/es-419.lproj/Main.strings +++ b/MonitorControl/UI/es-419.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Volume:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple and built-in displays already have a brightness slider in Control Center."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Show brightness slider in menu"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Separate scales for combined hardware & software dimming"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "count:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Método de control:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Assume last saved settings are valid (recommended)"; diff --git a/MonitorControl/UI/fr.lproj/Localizable.strings b/MonitorControl/UI/fr.lproj/Localizable.strings index e74b8af..5a2ef50 100644 --- a/MonitorControl/UI/fr.lproj/Localizable.strings +++ b/MonitorControl/UI/fr.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Logiciel (Voile)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Cet écran permet un contrôle de la luminosité logiciel via une manipulation des tables gamma car il ne prend pas en charge le contrôle matériel. Cela peut être dû à l'utilisation du port HDMI d'un Mac mini (qui bloque le contrôle DDC matériel) ou à un écran sur liste noire."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Cet écran permet un contrôle de la luminosité logiciel via une manipulation des tables gamma car il ne prend pas en charge le contrôle matériel. Cela peut être dû à l'utilisation du port HDMI d'un Mac mini (qui bloque le contrôle DDC matériel) ou à un écran sur liste noire."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "Cet écran a un état de contrôle non spécifié."; diff --git a/MonitorControl/UI/fr.lproj/Main.strings b/MonitorControl/UI/fr.lproj/Main.strings index 2a8bece..5648227 100644 --- a/MonitorControl/UI/fr.lproj/Main.strings +++ b/MonitorControl/UI/fr.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Volume :"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Les écrans Apple et intégrés ont déjà un curseur de luminosité dans le Centre de Contrôle."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Afficher le curseur de luminosité dans le menu"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Séparer les échelles pour le contrôle matériel et logiciel combiné"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "nb. de tentative :"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Utilisez les touches de luminosité de votre clavier Apple pour contrôler la luminosité. Vous pouvez maintenir Control pour ajuster l'affichage intégré, Control+Option pour ajuster les affichages externes. Maintenez Maj+Option pour un contrôle précis. Contrôle+Option+Command ajuste le contraste sur les écrans compatibles DDC."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Utilisez les touches de luminosité de votre clavier Apple pour contrôler la luminosité. Vous pouvez maintenir Control pour ajuster l'affichage intégré, Control+Command pour ajuster les affichages externes. Maintenez Maj+Option pour un contrôle précis. Contrôle+Option+Command ajuste le contraste sur les écrans compatibles DDC."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Méthode de contrôle :"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "L'échelle de l'OSD complète sera disponible pour le contrôle de la luminosité matériel et après avoir atteint une luminosité de 0, un contrôle logiciel supplémentaire sera utilisée."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Supposer que les derniers paramètres enregistrés sont valides (recommandé)"; diff --git a/MonitorControl/UI/hu.lproj/Localizable.strings b/MonitorControl/UI/hu.lproj/Localizable.strings index c956840..132031a 100644 --- a/MonitorControl/UI/hu.lproj/Localizable.strings +++ b/MonitorControl/UI/hu.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Szoftver (árnyékolás)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Ez a kijelző nem támogatja a hardveres vezérlést, hanem szoftveres fényerővezérlést tesz lehetővé gamma táblázat manipulálás segítségével. Ennek okai lehetnek a nem támogatott kimenet (pl. Mac mini HDMI kimenet) vagy feketelistára helyezett kijelző használata."; +"Software (shade, forced)" = "Szoftver (erőltetett)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Ez a kijelző nem támogatja a hardveres vezérlést, hanem szoftveres fényerővezérlést tesz lehetővé gamma táblázat módosítás vagy árnyékolás segítségével. Ennek okai lehetnek a nem támogatott kimenet (pl. Mac mini HDMI kimenet) vagy feketelistára helyezett kijelző használata."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "A kijelzőnek nem meghatározott a vezérlési státusza."; diff --git a/MonitorControl/UI/hu.lproj/Main.strings b/MonitorControl/UI/hu.lproj/Main.strings index cac61da..84a4e59 100644 --- a/MonitorControl/UI/hu.lproj/Main.strings +++ b/MonitorControl/UI/hu.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Hangerő:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Teljes fekete engedélyezése szoftveres vagy kombinált sötétítéskor"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Az Apple és beépített kijelzők már rendelkeznek csúszkával a Vezérlőközpontban"; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Fényerő csúszka megjelenítése a menüben"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Gamma tábla módosítás kerülése"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Külön skála kombinált hardver/szoftver sötétítésnál"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "számosság:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Az Apple billentyűzet fényerőgombjainak használata. A Control lenyomásával a beépített kijelzőt, a Control+Option segítségével a külső kijelzőt vezérelheti. Shift+Option finom vezérlést tesz lehetővé. Control+Option+Command nyomvatartása a kontrasztot szabályozza. "; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Az Apple billentyűzet fényerőgombjainak használata. A Control lenyomásával a beépített kijelzőt, a Control+Command segítségével a külső kijelzőt vezérelheti. Shift+Option finom vezérlést tesz lehetővé. Control+Option+Command nyomvatartása a kontrasztot szabályozza. "; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Vezérlés:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "A teljes OSD skála elérhető a hardveres fényerővezérlés számára, majd a minimum elérése után további szoftveres csökkentés történik."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Utolsó ismert beállítások feltételezése (javasolt)"; diff --git a/MonitorControl/UI/it.lproj/Localizable.strings b/MonitorControl/UI/it.lproj/Localizable.strings index b8540a8..d6f495b 100644 --- a/MonitorControl/UI/it.lproj/Localizable.strings +++ b/MonitorControl/UI/it.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (Sfumatura)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Questo monitor permette il controllo software della luminositò attraverso la manipolazione della gammatable e non supporta un controllo hardware. Un motivo potrebbe essere Reasons l'utilizzo della porta HDMI su un Mac Mini (che blocca il controllo hardware DCC) oppure avere un monitor non supportato."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Questo monitor permette il controllo software della luminositò attraverso la manipolazione della gammatable e non supporta un controllo hardware. Un motivo potrebbe essere Reasons l'utilizzo della porta HDMI su un Mac Mini (che blocca il controllo hardware DCC) oppure avere un monitor non supportato."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "Questo monitor ha uno stato di controllo non specificato."; diff --git a/MonitorControl/UI/it.lproj/Main.strings b/MonitorControl/UI/it.lproj/Main.strings index 9b4b92f..3bfd18f 100644 --- a/MonitorControl/UI/it.lproj/Main.strings +++ b/MonitorControl/UI/it.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Volume:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "I Monitor Apple ed incorporati hanno già lo slider della luminosità nel Centro di Controllo."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Mostra lo slider della luminositò nel menu"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Scale separate per controllo combinato della attenuazione hw/sw"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "conteggio:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Utilizza il tasto luminosità della tua tastiera Apple per controllare la luminosità. Puoi premere Control per il monitor incorporato, Control-Alt per i monitor esterni. Premi Maiusc+Alt per un controlllo fine. Control+Alt+Command modifica il contrasto sui monitor compatibili DDC."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Utilizza il tasto luminosità della tua tastiera Apple per controllare la luminosità. Puoi premere Control per il monitor incorporato, Control-Command per i monitor esterni. Premi Maiusc+Alt per un controlllo fine. Control+Alt+Command modifica il contrasto sui monitor compatibili DDC."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Metodo di controllo:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "L'intera scala OSD sarà disponibile per il controllo hardware della luminosità e una volta raggiunto lo 0, l'attenuazione software verrà utilizata."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Assumi che le ultime impostazioni siano valide (raccomandato)"; diff --git a/MonitorControl/UI/ja.lproj/Localizable.strings b/MonitorControl/UI/ja.lproj/Localizable.strings index 7574aba..098bcc5 100644 --- a/MonitorControl/UI/ja.lproj/Localizable.strings +++ b/MonitorControl/UI/ja.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (shade)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "This display has an unspecified control status."; diff --git a/MonitorControl/UI/ja.lproj/Main.strings b/MonitorControl/UI/ja.lproj/Main.strings index 049912a..37a114a 100644 --- a/MonitorControl/UI/ja.lproj/Main.strings +++ b/MonitorControl/UI/ja.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Volume:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple and built-in displays already have a brightness slider in Control Center."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Show brightness slider in menu"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Separate scales for combined hardware & software dimming"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "count:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Control method:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Assume last saved settings are valid (recommended)"; diff --git a/MonitorControl/UI/ko.lproj/Localizable.strings b/MonitorControl/UI/ko.lproj/Localizable.strings index 31ec2c4..dd9c245 100644 --- a/MonitorControl/UI/ko.lproj/Localizable.strings +++ b/MonitorControl/UI/ko.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "소프트웨어 (명암)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "이 디스플레이는 하드웨어 제어를 지원하지 않기 때문에 감마 설정을 통해 소프트웨어로 밝기를 제어합니다. 그 이유는 하드웨어 DDC 제어가 차단된 Mac mini의 HDMI 포트를 사용하였거나 블랙리스트에 포함된 디스플레이를 사용하고 있기 때문일 수 있습니다."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "이 디스플레이는 하드웨어 제어를 지원하지 않기 때문에 감마 설정을 통해 소프트웨어로 밝기를 제어합니다. 그 이유는 하드웨어 DDC 제어가 차단된 Mac mini의 HDMI 포트를 사용하였거나 블랙리스트에 포함된 디스플레이를 사용하고 있기 때문일 수 있습니다."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "이 디스플레이에는 지정되지 않은 제어 상태가 있습니다."; diff --git a/MonitorControl/UI/ko.lproj/Main.strings b/MonitorControl/UI/ko.lproj/Main.strings index ac1339c..a4b5535 100644 --- a/MonitorControl/UI/ko.lproj/Main.strings +++ b/MonitorControl/UI/ko.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "볼륨:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple 및 내장 디스플레이에는 이미 제어 센터에 밝기 슬라이더가 있습니다."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "메뉴에 밝기 슬라이더 표시"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "통합된 하드웨어 및 소프트웨어 밝기 조절을 위한 별도의 스케일"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "횟수:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "제어 방식:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "하드웨어 밝기 제어를 위해 전체 OSD 스케일을 사용할 수 있으며, 밝기가 0에 도달하면 추가적으로 소프트웨어 밝기 조절을 사용합니다."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "마지막으로 저장한 설정이 유효하다고 가정 (권장)"; diff --git a/MonitorControl/UI/nl.lproj/Localizable.strings b/MonitorControl/UI/nl.lproj/Localizable.strings index 1bfb10c..66c220b 100644 --- a/MonitorControl/UI/nl.lproj/Localizable.strings +++ b/MonitorControl/UI/nl.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (shade)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Dit scherm maakt softwarematige helderheidsregeling via gammatable-manipulatie mogelijk, aangezien het geen hardwarecontrole ondersteunt. Redenen hiervoor kunnen het gebruik van de HDMI-poort van een Mac mini zijn (die hardwarematige DDC-besturing blokkeert) of een niet-ondersteund scherm."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Dit scherm maakt softwarematige helderheidsregeling via gammatable-manipulatie mogelijk, aangezien het geen hardwarecontrole ondersteunt. Redenen hiervoor kunnen het gebruik van de HDMI-poort van een Mac mini zijn (die hardwarematige DDC-besturing blokkeert) of een niet-ondersteund scherm."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "Dit scherm heeft een niet-gespecificeerde controlestatus."; diff --git a/MonitorControl/UI/nl.lproj/Main.strings b/MonitorControl/UI/nl.lproj/Main.strings index 0c42e26..e797435 100644 --- a/MonitorControl/UI/nl.lproj/Main.strings +++ b/MonitorControl/UI/nl.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Volume:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple en ingebouwde schermen hebben reeds een schuifregelaar voor helderheid in het Control Center."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Helderheidsregelaar in menu weergeven"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Aparte schaal voor gecombineerd hardware & software dimmen"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "aantal:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Gebruik de helderheidstoetsen van uw Apple toetsenbord om de helderheid te regelen. U kunt Control ingedrukt houden om het ingebouwde scherm aan te passen, Control+Option om externe schermen aan te passen. Gebruik Shift+Option voor fijne controle. Control+Option+Command past het contrast aan op DDC-compatibele schermen."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Gebruik de helderheidstoetsen van uw Apple toetsenbord om de helderheid te regelen. U kunt Control ingedrukt houden om het ingebouwde scherm aan te passen, Control+Command om externe schermen aan te passen. Gebruik Shift+Option voor fijne controle. Control+Option+Command past het contrast aan op DDC-compatibele schermen."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Besturingsmethode:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "Volledige OSD-schaal zal beschikbaar zijn voor hardwarehelderheidsregeling en na het bereiken van 0 helderheid, zal softwarematig verder gedimd worden."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Veronderstel dat de laatst bewaarde instellingen geldig zijn (aanbevolen)"; diff --git a/MonitorControl/UI/pl.lproj/Localizable.strings b/MonitorControl/UI/pl.lproj/Localizable.strings index a6bcc15..109da4c 100644 --- a/MonitorControl/UI/pl.lproj/Localizable.strings +++ b/MonitorControl/UI/pl.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (shade)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "This display has an unspecified control status."; diff --git a/MonitorControl/UI/pl.lproj/Main.strings b/MonitorControl/UI/pl.lproj/Main.strings index 0feab8b..025440f 100644 --- a/MonitorControl/UI/pl.lproj/Main.strings +++ b/MonitorControl/UI/pl.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Volume:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple and built-in displays already have a brightness slider in Control Center."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Show brightness slider in menu"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Separate scales for combined hardware & software dimming"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "count:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Metoda kontroli:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Assume last saved settings are valid (recommended)"; diff --git a/MonitorControl/UI/ru.lproj/Localizable.strings b/MonitorControl/UI/ru.lproj/Localizable.strings index c484a3c..b6f59cf 100644 --- a/MonitorControl/UI/ru.lproj/Localizable.strings +++ b/MonitorControl/UI/ru.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (shade)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "This display has an unspecified control status."; diff --git a/MonitorControl/UI/ru.lproj/Main.strings b/MonitorControl/UI/ru.lproj/Main.strings index 78200be..99d5edb 100644 --- a/MonitorControl/UI/ru.lproj/Main.strings +++ b/MonitorControl/UI/ru.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Volume:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple and built-in displays already have a brightness slider in Control Center."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Show brightness slider in menu"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Separate scales for combined hardware & software dimming"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "count:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Метод управления:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Assume last saved settings are valid (recommended)"; diff --git a/MonitorControl/UI/tr.lproj/Localizable.strings b/MonitorControl/UI/tr.lproj/Localizable.strings index 492233e..82ceb22 100644 --- a/MonitorControl/UI/tr.lproj/Localizable.strings +++ b/MonitorControl/UI/tr.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (shade)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Bu ekran, donanım kontrolünü desteklemediği için gamlanabilir manipülasyon yoluyla yazılım parlaklık kontrolüne izin verir. Bunun nedenleri, bir Mac mini'nin (donanım DDC kontrolünü engelleyen) HDMI bağlantı noktasını kullanmak veya kara listeye alınmış bir ekrana sahip olmak olabilir."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "Bu ekran, donanım kontrolünü desteklemediği için gamlanabilir manipülasyon yoluyla yazılım parlaklık kontrolüne izin verir. Bunun nedenleri, bir Mac mini'nin (donanım DDC kontrolünü engelleyen) HDMI bağlantı noktasını kullanmak veya kara listeye alınmış bir ekrana sahip olmak olabilir."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "Bu ekranın belirtilmemiş bir kontrol durumu var."; diff --git a/MonitorControl/UI/tr.lproj/Main.strings b/MonitorControl/UI/tr.lproj/Main.strings index 085720c..0470422 100644 --- a/MonitorControl/UI/tr.lproj/Main.strings +++ b/MonitorControl/UI/tr.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Ses:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple ve yerleşik ekranların Denetim Merkezi'nde zaten bir parlaklık kaydırıcısı vardır."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Menüde parlaklık kaydırıcısını göster"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Birleşik donanım ve yazılım karartması için ayrı dengeler"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "Sayı:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Parlaklığı kontrol etmek için Apple klavyenizin parlaklık tuşlarını kullanın. Dahili ekranı ayarlamak için Control tuşunu, harici ekranları ayarlamak için Control+Option tuşunu basılı tutabilirsiniz. Hassas kontrol için Shift+Option tuşunu basılı tutun. Control+Option+Command, DDC uyumlu ekranlarda kontrastı ayarlar."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Parlaklığı kontrol etmek için Apple klavyenizin parlaklık tuşlarını kullanın. Dahili ekranı ayarlamak için Control tuşunu, harici ekranları ayarlamak için Control+Command tuşunu basılı tutabilirsiniz. Hassas kontrol için Shift+Option tuşunu basılı tutun. Control+Option+Command, DDC uyumlu ekranlarda kontrastı ayarlar."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Kontrol yöntemi:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "Donanım parlaklık kontrolü için tam OSD ölçeği mevcut olacak ve 0 parlaklığa ulaştıktan sonra daha fazla yazılım karartması kullanılacak."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Son kaydedilen ayarların geçerli olduğunu varsayın (önerilir)"; diff --git a/MonitorControl/UI/uk.lproj/Localizable.strings b/MonitorControl/UI/uk.lproj/Localizable.strings index 17c2277..81782d1 100644 --- a/MonitorControl/UI/uk.lproj/Localizable.strings +++ b/MonitorControl/UI/uk.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (shade)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "This display has an unspecified control status."; diff --git a/MonitorControl/UI/uk.lproj/Main.strings b/MonitorControl/UI/uk.lproj/Main.strings index 49ddf1b..88e1692 100644 --- a/MonitorControl/UI/uk.lproj/Main.strings +++ b/MonitorControl/UI/uk.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Volume:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple and built-in displays already have a brightness slider in Control Center."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Show brightness slider in menu"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Separate scales for combined hardware & software dimming"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "count:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "Control method:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Assume last saved settings are valid (recommended)"; diff --git a/MonitorControl/UI/zh-Hans.lproj/Localizable.strings b/MonitorControl/UI/zh-Hans.lproj/Localizable.strings index e0667be..1b90dda 100644 --- a/MonitorControl/UI/zh-Hans.lproj/Localizable.strings +++ b/MonitorControl/UI/zh-Hans.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "Software (shade)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display."; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "This display has an unspecified control status."; diff --git a/MonitorControl/UI/zh-Hans.lproj/Main.strings b/MonitorControl/UI/zh-Hans.lproj/Main.strings index 75a1ed9..17b6054 100644 --- a/MonitorControl/UI/zh-Hans.lproj/Main.strings +++ b/MonitorControl/UI/zh-Hans.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "Volume:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "Apple and built-in displays already have a brightness slider in Control Center."; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "Show brightness slider in menu"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "Separate scales for combined hardware & software dimming"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "count:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "控制方法:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "Assume last saved settings are valid (recommended)"; diff --git a/MonitorControl/UI/zh-Hant-TW.lproj/Localizable.strings b/MonitorControl/UI/zh-Hant-TW.lproj/Localizable.strings index 5278274..c1b8de2 100644 --- a/MonitorControl/UI/zh-Hant-TW.lproj/Localizable.strings +++ b/MonitorControl/UI/zh-Hant-TW.lproj/Localizable.strings @@ -98,7 +98,10 @@ "Software (shade)" = "軟體 (shade)"; /* Shown in the Display Preferences */ -"This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "此螢幕不支援硬體控制,亮度調整將以軟體調整伽瑪值來實現。原因可能出於使用Mac mini的HDMI埠(硬體DDC無法使用)或是使用不支援的螢幕。"; +"Software (shade, forced)" = "Software (shade, forced)"; + +/* Shown in the Display Preferences */ +"This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display." = "此螢幕不支援硬體控制,亮度調整將以軟體調整伽瑪值來實現。原因可能出於使用Mac mini的HDMI埠(硬體DDC無法使用)或是使用不支援的螢幕。"; /* Shown in the Display Preferences */ "This display has an unspecified control status." = "此螢幕有未指定的控制狀態"; diff --git a/MonitorControl/UI/zh-Hant-TW.lproj/Main.strings b/MonitorControl/UI/zh-Hant-TW.lproj/Main.strings index 36845f5..022385c 100644 --- a/MonitorControl/UI/zh-Hant-TW.lproj/Main.strings +++ b/MonitorControl/UI/zh-Hant-TW.lproj/Main.strings @@ -145,6 +145,9 @@ /* Class = "NSTextFieldCell"; title = "Volume:"; ObjectID = "FER-Ri-4UO"; */ "FER-Ri-4UO.title" = "音量:"; +/* Class = "NSButtonCell"; title = "Allow zero brightness via software or combined dimming"; ObjectID = "FjB-XL-fG5"; */ +"FjB-XL-fG5.title" = "Allow zero brightness via software or combined dimming"; + /* Class = "NSTextFieldCell"; title = "Apple and built-in displays already have a brightness slider in Control Center."; ObjectID = "fmZ-HI-Mdc"; */ "fmZ-HI-Mdc.title" = "控制中心中已有蘋果及內建螢幕的亮度控制滑桿。"; @@ -238,6 +241,9 @@ /* Class = "NSButtonCell"; title = "Show brightness slider in menu"; ObjectID = "MWo-6I-s9L"; */ "MWo-6I-s9L.title" = "顯示亮度控制滑桿"; +/* Class = "NSButtonCell"; title = "Avoid gamma table manipulation"; ObjectID = "na6-mS-MPi"; */ +"na6-mS-MPi.title" = "Avoid gamma table manipulation"; + /* Class = "NSButtonCell"; title = "Separate scales for combined hardware & software dimming"; ObjectID = "O8o-hI-8eR"; */ "O8o-hI-8eR.title" = "使用硬體結合軟體調整時忽略軟體調整的範圍"; @@ -259,8 +265,8 @@ /* Class = "NSTextFieldCell"; title = "count:"; ObjectID = "Orv-yj-Nad"; */ "Orv-yj-Nad.title" = "數量:"; -/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Option to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ -"pa0-Hz-ace.title" = "使用蘋果鍵盤上的亮度控制按鈕來調整亮度。搭配Control鍵調整內建螢幕、Control+Option調整外接螢幕、Shift+Option進行精細調整、Control+Option+Command調整DDC相容螢幕的對比度。"; +/* Class = "NSTextFieldCell"; title = "Use the brightness keys of your Apple keyboard to control brightness. You can hold Control to adjust the built-in display, Control+Command to adjust external displays. Hold Shift+Option for fine control. Control+Option+Command adjusts contrast on DDC compatible displays."; ObjectID = "pa0-Hz-ace"; */ +"pa0-Hz-ace.title" = "使用蘋果鍵盤上的亮度控制按鈕來調整亮度。搭配Control鍵調整內建螢幕、Control+Command調整外接螢幕、Shift+Option進行精細調整、Control+Option+Command調整DDC相容螢幕的對比度。"; /* Class = "NSTextFieldCell"; title = "Control method:"; ObjectID = "PaK-1f-DsW"; */ "PaK-1f-DsW.title" = "控制方式:"; @@ -376,6 +382,9 @@ /* Class = "NSTextFieldCell"; title = "Full OSD scale will be available for hardware brightness control and after reaching 0 brightness, further software dimming will be used."; ObjectID = "YHZ-VL-QJ3"; */ "YHZ-VL-QJ3.title" = "完整的OSD刻度只涵蓋硬體的控制範圍,刻度在0以下時以軟體調整。"; +/* Class = "NSTextFieldCell"; title = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; ObjectID = "yi3-e1-wsL"; */ +"yi3-e1-wsL.title" = "Warning! With this option enabled, you might find yourself in a position when you end up with a blank display. This, combined with disabled keyboard controls can be frustrating."; + /* Class = "NSButtonCell"; title = "Assume last saved settings are valid (recommended)"; ObjectID = "yn8-Nd-o89"; */ "yn8-Nd-o89.title" = "假設前次的設定可用(建議)"; diff --git a/MonitorControl/View Controllers/DisplaysPrefsCellView.swift b/MonitorControl/View Controllers/DisplaysPrefsCellView.swift index 90b3035..1658f0f 100644 --- a/MonitorControl/View Controllers/DisplaysPrefsCellView.swift +++ b/MonitorControl/View Controllers/DisplaysPrefsCellView.swift @@ -15,6 +15,7 @@ class DisplaysPrefsCellView: NSTableCellView { @IBOutlet var displayId: NSTextFieldCell! @IBOutlet var enabledButton: NSButton! @IBOutlet var ddcButton: NSButton! + @IBOutlet var avoidGamma: NSButton! @IBOutlet var controlMethod: NSTextFieldCell! @IBOutlet var displayType: NSTextFieldCell! @IBOutlet var disableVolumeOSDButton: NSButton! @@ -55,12 +56,6 @@ class DisplaysPrefsCellView: NSTableCellView { @IBOutlet var remapDDCVolume: NSTextField! @IBOutlet var remapDDCContrast: NSTextField! - @IBAction func openAdvancedHelp(_: NSButton) { - if let url = URL(string: "https://github.com/the0neyouseek/MonitorControl/wiki/Advanced-Preferences") { - NSWorkspace.shared.open(url) - } - } - @IBAction func pollingModeValueChanged(_ sender: NSPopUpButton) { if let display = display as? OtherDisplay { let newValue = sender.selectedTag() @@ -198,6 +193,24 @@ class DisplaysPrefsCellView: NSTableCellView { } } + @IBAction func avoidGamma(_ sender: NSButton) { + if let display = display as? OtherDisplay { + _ = display.setSwBrightness(1) + _ = display.setDirectBrightness(1) + switch sender.state { + case .on: + display.savePref(true, key: .avoidGamma) + case .off: + display.savePref(false, key: .avoidGamma) + default: + break + } + let displayInfo = DisplaysPrefsViewController.getDisplayInfo(display: display) + self.controlMethod.stringValue = displayInfo.controlMethod + self.controlMethod.controlView?.toolTip = displayInfo.controlStatus + } + } + func tagCommand(_ tag: Int) -> Command { var command: Command switch tag { @@ -345,6 +358,8 @@ class DisplaysPrefsCellView: NSTableCellView { if self.ddcButton.isEnabled { // This signifies that the DDC block is enabled self.ddcButton.state = .on self.ddcButtonToggled(self.ddcButton) + self.avoidGamma.state = .off + self.ddcButtonToggled(self.avoidGamma) self.enabledButton.state = .on self.enabledButtonToggled(self.enabledButton) self.disableVolumeOSDButton.state = .off diff --git a/MonitorControl/View Controllers/DisplaysPrefsViewController.swift b/MonitorControl/View Controllers/DisplaysPrefsViewController.swift index d925973..5a3a06b 100644 --- a/MonitorControl/View Controllers/DisplaysPrefsViewController.swift +++ b/MonitorControl/View Controllers/DisplaysPrefsViewController.swift @@ -83,12 +83,20 @@ class DisplaysPrefsViewController: NSViewController, PreferencePane, NSTableView displayImage = "display" if let otherDisplay: OtherDisplay = display as? OtherDisplay { if otherDisplay.isSwOnly() { - controlMethod = NSLocalizedString("Software (gamma)", comment: "Shown in the Display Preferences") + " ⚠️" + if otherDisplay.readPrefAsBool(key: .avoidGamma) { + controlMethod = NSLocalizedString("Software (shade)", comment: "Shown in the Display Preferences") + " ⚠️" + } else { + controlMethod = NSLocalizedString("Software (gamma)", comment: "Shown in the Display Preferences") + " ⚠️" + } displayImage = "display.trianglebadge.exclamationmark" - controlStatus = NSLocalizedString("This display allows for software brightness control via gammatable manipulation as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display.", comment: "Shown in the Display Preferences") + controlStatus = NSLocalizedString("This display allows for software brightness control via gamma table manipulation or shade as it does not support hardware control. Reasons for this might be using the HDMI port of a Mac mini (which blocks hardware DDC control) or having a blacklisted display.", comment: "Shown in the Display Preferences") } else { if otherDisplay.isSw() { - controlMethod = NSLocalizedString("Software (gamma, forced)", comment: "Shown in the Display Preferences") + " ⚠️" + if otherDisplay.readPrefAsBool(key: .avoidGamma) { + controlMethod = NSLocalizedString("Software (shade, forced)", comment: "Shown in the Display Preferences") + } else { + controlMethod = NSLocalizedString("Software (gamma, forced)", comment: "Shown in the Display Preferences") + } controlStatus = NSLocalizedString("This display is reported to support hardware DDC control but the current settings allow for software control only.", comment: "Shown in the Display Preferences") } else { controlMethod = NSLocalizedString("Hardware (DDC)", comment: "Shown in the Display Preferences") @@ -130,6 +138,13 @@ class DisplaysPrefsViewController: NSViewController, PreferencePane, NSTableView cell.friendlyName.isEditable = true // Enabled cell.enabledButton.state = display.readPrefAsBool(key: .isDisabled) ? .off : .on + // Enabled + cell.avoidGamma.state = display.readPrefAsBool(key: .avoidGamma) ? .on : .off + if (display as? OtherDisplay)?.isVirtual ?? true { + cell.avoidGamma.isEnabled = false + } else { + cell.avoidGamma.isEnabled = true + } // DDC cell.ddcButton.state = ((display as? OtherDisplay)?.isSw() ?? true) ? .off : .on if ((display as? OtherDisplay)?.isSwOnly() ?? true) || ((display as? OtherDisplay)?.isVirtual ?? true) { @@ -289,10 +304,10 @@ class DisplaysPrefsViewController: NSViewController, PreferencePane, NSTableView func updateDisplayListRowHeight() { if prefs.bool(forKey: PrefKey.showAdvancedSettings.rawValue) { - self.displayList?.rowHeight = 500 + self.displayList?.rowHeight = 520 self.constraintHeight?.constant = self.displayList.rowHeight + 15 } else { - self.displayList?.rowHeight = 165 + self.displayList?.rowHeight = 185 self.constraintHeight?.constant = self.displayList.rowHeight * 2 + 15 } } diff --git a/MonitorControl/View Controllers/MainPrefsViewController.swift b/MonitorControl/View Controllers/MainPrefsViewController.swift index affbd78..d15d01b 100644 --- a/MonitorControl/View Controllers/MainPrefsViewController.swift +++ b/MonitorControl/View Controllers/MainPrefsViewController.swift @@ -20,6 +20,7 @@ class MainPrefsViewController: NSViewController, PreferencePane { @IBOutlet var startAtLogin: NSButton! @IBOutlet var automaticUpdateCheck: NSButton! @IBOutlet var disableSoftwareFallback: NSButton! + @IBOutlet var allowZeroSwBrightness: NSButton! @IBOutlet var combinedBrightness: NSButton! @IBOutlet var enableSmooth: NSButton! @IBOutlet var enableBrightnessSync: NSButton! @@ -38,6 +39,8 @@ class MainPrefsViewController: NSViewController, PreferencePane { @IBOutlet var rowResetButton: NSGridRow! @IBOutlet var rowDisableSoftwareFallbackCheck: NSGridRow! @IBOutlet var rowDisableSoftwareFallbackText: NSGridRow! + @IBOutlet var rowAllowZeroSwBrightnessCheck: NSGridRow! + @IBOutlet var rowAllowZeroSwBrightnessText: NSGridRow! func showAdvanced() -> Bool { let hide = !prefs.bool(forKey: PrefKey.showAdvancedSettings.rawValue) @@ -74,6 +77,13 @@ class MainPrefsViewController: NSViewController, PreferencePane { self.rowDisableSoftwareFallbackCheck.isHidden = hide self.rowDisableSoftwareFallbackText.isHidden = hide } + if self.allowZeroSwBrightness.state == .on { + self.rowAllowZeroSwBrightnessCheck.isHidden = false + self.rowAllowZeroSwBrightnessText.isHidden = false + } else { + self.rowAllowZeroSwBrightnessCheck.isHidden = hide + self.rowAllowZeroSwBrightnessText.isHidden = hide + } self.rowResetButton.isHidden = hide return !hide } @@ -92,6 +102,7 @@ class MainPrefsViewController: NSViewController, PreferencePane { self.automaticUpdateCheck.state = prefs.bool(forKey: PrefKey.SUEnableAutomaticChecks.rawValue) ? .on : .off self.combinedBrightness.state = prefs.bool(forKey: PrefKey.disableCombinedBrightness.rawValue) ? .off : .on self.disableSoftwareFallback.state = prefs.bool(forKey: PrefKey.disableSoftwareFallback.rawValue) ? .on : .off + self.allowZeroSwBrightness.state = prefs.bool(forKey: PrefKey.allowZeroSwBrightness.rawValue) ? .on : .off self.enableSmooth.state = prefs.bool(forKey: PrefKey.disableSmoothBrightness.rawValue) ? .off : .on self.enableBrightnessSync.state = prefs.bool(forKey: PrefKey.enableBrightnessSync.rawValue) ? .on : .off self.showAdvancedDisplays.state = prefs.bool(forKey: PrefKey.showAdvancedSettings.rawValue) ? .on : .off @@ -144,17 +155,31 @@ class MainPrefsViewController: NSViewController, PreferencePane { @IBAction func disableSoftwareFallback(_ sender: NSButton) { switch sender.state { case .on: - for display in DisplayManager.shared.getOtherDisplays() where display.isSw() { - _ = display.setBrightness(1) - } prefs.set(true, forKey: PrefKey.disableSoftwareFallback.rawValue) case .off: prefs.set(false, forKey: PrefKey.disableSoftwareFallback.rawValue) - for display in DisplayManager.shared.getOtherDisplays() where display.isSw() { - _ = display.setBrightness(1) - } default: break } + for display in DisplayManager.shared.getOtherDisplays() { + _ = display.setDirectBrightness(1) + _ = display.setSwBrightness(1) + } + _ = self.showAdvanced() + app.configure() + } + + @IBAction func allowZeroSwBrightness(_ sender: NSButton) { + switch sender.state { + case .on: + prefs.set(true, forKey: PrefKey.allowZeroSwBrightness.rawValue) + case .off: + prefs.set(false, forKey: PrefKey.allowZeroSwBrightness.rawValue) + default: break + } + for display in DisplayManager.shared.getOtherDisplays() { + _ = display.setDirectBrightness(1) + _ = display.setSwBrightness(1) + } _ = self.showAdvanced() app.configure() } diff --git a/MonitorControlHelper/Info.plist b/MonitorControlHelper/Info.plist index 380aad3..89a3013 100644 --- a/MonitorControlHelper/Info.plist +++ b/MonitorControlHelper/Info.plist @@ -19,7 +19,7 @@ CFBundleShortVersionString $(MARKETING_VERSION) CFBundleVersion - 6395 + 6421 LSApplicationCategoryType public.app-category.utilities LSBackgroundOnly