[PR #550] [MERGED] 3.0.0 bug fixes and some enhancements #1124

Closed
opened 2026-05-05 07:05:16 -06:00 by gitea-mirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/MonitorControl/MonitorControl/pull/550
Author: @waydabber
Created: 9/1/2021
Status: Merged
Merged: 9/1/2021
Merged by: @waydabber

Base: masterHead: temp/debug


📝 Commits (10+)

  • ddb5e84 Fix 'Disable Volume OSD' being not disabled on Software Only displays
  • c44a0cd Merge remote-tracking branch 'refs/remotes/origin/master'
  • fba60ae Do not set ddc volume to 0 if DDC mute is enabled.
  • c3855bb Internalize DDC.swift for testing purposes. Use CGSServiceForDisplayNumber to acquire framebuffer port on Intel
  • a951fa6 Removed DDC.swift imports
  • e7882e7 Changed Intel optimization level
  • 65b1957 Moving stuff around.
  • b918614 Moving stuff around.
  • f630579 Moving things around.
  • e906859 Moving things around.

📊 Changes

31 files changed (+808 additions, -375 deletions)

View changed files

📝 MonitorControl.xcodeproj/project.pbxproj (+15 -34)
📝 MonitorControl/AppDelegate.swift (+38 -49)
MonitorControl/Extensions/EDID+Extension.swift (+0 -33)
📝 MonitorControl/Info.plist (+1 -1)
📝 MonitorControl/Manager/DisplayManager.swift (+21 -2)
📝 MonitorControl/Model/Display.swift (+1 -2)
📝 MonitorControl/Model/ExternalDisplay.swift (+63 -76)
📝 MonitorControl/Support/Arm64DDC.swift (+4 -4)
📝 MonitorControl/Support/Bridging-Header.h (+2 -0)
MonitorControl/Support/Command.swift (+168 -0)
MonitorControl/Support/IntelDDC.swift (+259 -0)
MonitorControl/Support/OnlyIntegerValueFormatter.swift (+0 -15)
MonitorControl/Support/PollingMode.swift (+0 -24)
📝 MonitorControl/Support/Utils.swift (+27 -127)
📝 MonitorControl/Support/de.lproj/Localizable.strings (+6 -0)
📝 MonitorControl/Support/en.lproj/Localizable.strings (+6 -0)
📝 MonitorControl/Support/es-419.lproj/Localizable.strings (+6 -0)
📝 MonitorControl/Support/fr.lproj/Localizable.strings (+6 -0)
📝 MonitorControl/Support/hu.lproj/Localizable.strings (+6 -0)
📝 MonitorControl/Support/it.lproj/Localizable.strings (+6 -0)

...and 11 more files

📄 Description

Bug fixes / enhancements in this pull request:

  • Fixed not working after sleep mode for some on Apple Silicon #530
  • Fixed some LG and Samsung displays having problems with Mute (improved 'Enable Mute DDC command') - #170
  • Fixed app not working with multiple identical monitors on Intel - #49
  • Added 'Safe Mode' option - pressing the Shift key during startup resets preferences and disables DDC read.
  • Upon first start if DDC is unreadable, default brightness/volume/contrast values are now set to a sensible 75% instead of 0%
  • DDC write commands are issued twice on Intel (as it already was on Arm64) to improve stability on some setups.
  • Make sure DDC communications don't happen in parallel when both slider menu and keyboard is used (this might have caused problems with some docks with multiple display outputs).
  • Fixed volume control feedback audio (clicking sound) during key repeat (it should play on keyup only as this is the macOS standard).
  • Fixed duplication of volume control feedback audio if there are multiple external displays and 'Change... for all screens' is enabled.
  • Internal DDC library for Intel (based on the work of reitermarkus)

Please, do a general testing on Intel if possible to make sure everything works. On M1 everything seems all right.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/MonitorControl/MonitorControl/pull/550 **Author:** [@waydabber](https://github.com/waydabber) **Created:** 9/1/2021 **Status:** ✅ Merged **Merged:** 9/1/2021 **Merged by:** [@waydabber](https://github.com/waydabber) **Base:** `master` ← **Head:** `temp/debug` --- ### 📝 Commits (10+) - [`ddb5e84`](https://github.com/MonitorControl/MonitorControl/commit/ddb5e840bff3cd0a06b774f2bb7ea919cf9cb244) Fix 'Disable Volume OSD' being not disabled on Software Only displays - [`c44a0cd`](https://github.com/MonitorControl/MonitorControl/commit/c44a0cd373224f87b1f442e058e5403970f58889) Merge remote-tracking branch 'refs/remotes/origin/master' - [`fba60ae`](https://github.com/MonitorControl/MonitorControl/commit/fba60aeaea3450f9d4bde7cd8478688be0a641a0) Do not set ddc volume to 0 if DDC mute is enabled. - [`c3855bb`](https://github.com/MonitorControl/MonitorControl/commit/c3855bb611c4c0a32dac87a645ff093973dc541b) Internalize DDC.swift for testing purposes. Use CGSServiceForDisplayNumber to acquire framebuffer port on Intel - [`a951fa6`](https://github.com/MonitorControl/MonitorControl/commit/a951fa6a3599b8b82b84f8fe4098959966157094) Removed DDC.swift imports - [`e7882e7`](https://github.com/MonitorControl/MonitorControl/commit/e7882e755227f0a8ea2abdd1de8af352cfdfb797) Changed Intel optimization level - [`65b1957`](https://github.com/MonitorControl/MonitorControl/commit/65b1957fc5ad5c6a12796ffc56442fc679da08bf) Moving stuff around. - [`b918614`](https://github.com/MonitorControl/MonitorControl/commit/b91861450cbe0832fc58ce26c911ae29913f70e1) Moving stuff around. - [`f630579`](https://github.com/MonitorControl/MonitorControl/commit/f630579e5e25228aa6d7eebdcaaaa5f29cfb0594) Moving things around. - [`e906859`](https://github.com/MonitorControl/MonitorControl/commit/e906859f4620e216032ecc161e80995e0529b4cd) Moving things around. ### 📊 Changes **31 files changed** (+808 additions, -375 deletions) <details> <summary>View changed files</summary> 📝 `MonitorControl.xcodeproj/project.pbxproj` (+15 -34) 📝 `MonitorControl/AppDelegate.swift` (+38 -49) ➖ `MonitorControl/Extensions/EDID+Extension.swift` (+0 -33) 📝 `MonitorControl/Info.plist` (+1 -1) 📝 `MonitorControl/Manager/DisplayManager.swift` (+21 -2) 📝 `MonitorControl/Model/Display.swift` (+1 -2) 📝 `MonitorControl/Model/ExternalDisplay.swift` (+63 -76) 📝 `MonitorControl/Support/Arm64DDC.swift` (+4 -4) 📝 `MonitorControl/Support/Bridging-Header.h` (+2 -0) ➕ `MonitorControl/Support/Command.swift` (+168 -0) ➕ `MonitorControl/Support/IntelDDC.swift` (+259 -0) ➖ `MonitorControl/Support/OnlyIntegerValueFormatter.swift` (+0 -15) ➖ `MonitorControl/Support/PollingMode.swift` (+0 -24) 📝 `MonitorControl/Support/Utils.swift` (+27 -127) 📝 `MonitorControl/Support/de.lproj/Localizable.strings` (+6 -0) 📝 `MonitorControl/Support/en.lproj/Localizable.strings` (+6 -0) 📝 `MonitorControl/Support/es-419.lproj/Localizable.strings` (+6 -0) 📝 `MonitorControl/Support/fr.lproj/Localizable.strings` (+6 -0) 📝 `MonitorControl/Support/hu.lproj/Localizable.strings` (+6 -0) 📝 `MonitorControl/Support/it.lproj/Localizable.strings` (+6 -0) _...and 11 more files_ </details> ### 📄 Description Bug fixes / enhancements in this pull request: - Fixed not working after sleep mode for some on Apple Silicon #530 - Fixed some LG and Samsung displays having problems with Mute (improved 'Enable Mute DDC command') - #170 - Fixed app not working with multiple identical monitors on Intel - #49 - Added 'Safe Mode' option - pressing the Shift key during startup resets preferences and disables DDC read. - Upon first start if DDC is unreadable, default brightness/volume/contrast values are now set to a sensible 75% instead of 0% - DDC write commands are issued twice on Intel (as it already was on Arm64) to improve stability on some setups. - Make sure DDC communications don't happen in parallel when both slider menu and keyboard is used (this might have caused problems with some docks with multiple display outputs). - Fixed volume control feedback audio (clicking sound) during key repeat (it should play on keyup only as this is the macOS standard). - Fixed duplication of volume control feedback audio if there are multiple external displays and 'Change... for all screens' is enabled. - Internal DDC library for Intel (based on the work of reitermarkus) Please, do a general testing on Intel if possible to make sure everything works. On M1 everything seems all right. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
gitea-mirror 2026-05-05 07:05:16 -06:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/MonitorControl#1124
No description provided.