* Update to Swift 5.0 and run `swiftformat`.
* Refactor `MediaKeyTap` start/restart.
* Remove useless comments.
* Reorder files.
* Add German translation.
* Switch to Carthage.
* Use `DDC.swift`.
* Add `NSScreen` extension.
* Simplify menu layout.
* Hide the display’s built-in OSD.
* Fix launch at login helper.
* Fix `quitClicked` connection.
* Refactor build phases.
* Use `os_log` instead of `print`.
* Use more specific check for `minReplyDelay`.
* Add whitelist.
PR #59 with enhancements and fixes (Changes done by @JoniVR):
- Code migration to **Swift 4.2**
- **Fixed** the **MonitorControl scheme** which was gone for me
- **Updated the screenshots and readme**
- **Added a feature that detects the default sound output device and only intercepts when an external display is set as default output**, so Airpods, internal macbook volume and other non-monitor devices will be ignored (#48, #15)
- **Fixed app unresponsiveness and high CPU on launch** (might be related to #50, #37, please do keep in mind that on initial launch there will still be a little unresponsiveness because the underlying framework - called [ddcctl](https://github.com/kfix/ddcctl) - attempts to read your volume settings 10 times)
- Added a **version and build number** to the main preferences panel:

- Added a build script that increases the build number on each run. Version number still needs to be set manually.
- refactored some parts of the code to make it a bit more readable.
* Update `ddcctl` submodule.
* Update dependencies.
* Enable displays by default.
* Retry more often to get values from display.
* Only print when debugging.
Fix#13
Many changes in commit…
- Contrast slider is back !
- Added a Preferences Window
- Function keys (should) work
- If (like me) your screen backlight is still too bright even at 0, you can now set the contrast to 0 when the brightness hit 0 too
- App can now be started at login (Needs to be tested)
Signed-off-by: Guillaume Broder <iamnotheoneyouseek@gmail.com>
- Refactoring of the way the slider are created
- Read the current value of ddcctl monitor after launching the app, so no more value at 0 for the sliders
- When there's only one monitor, display it directly, not in a submenu, closes#10
- Added a "start at login" helper (still need testing) for v1.2
Signed-off-by: Guillaume Broder <iamnotheoneyouseek@gmail.com>
- I've rewritten some so it should easier to read now
- Mute should work like on a mac, meaning you can mute and unmute back to the previous volume
- Removed the "default" system as I now use the "main" screen for keyboard shortcuts, meaning, in a multiple screen environement you can now control the current screen with your keyboard
- I now use the `identifier` instead of `serial` of the display for saving value, should fix (hopefully) #6
Signed-off-by: Guillaume Broder <iamnotheoneyouseek@gmail.com>
- Key handling is now done in the app, close#3
- All code linted with SwiftLint, close#4
- Better handling of built-in screen
Signed-off-by: Guillaume Broder <iamnotheoneyouseek@gmail.com>