[PR #453] [MERGED] Fix DDC reliability on latest Xcode versions, migrate to SPM, more fixes #1096

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

📋 Pull Request Information

Original PR: https://github.com/MonitorControl/MonitorControl/pull/453
Author: @JoniVR
Created: 6/12/2021
Status: Merged
Merged: 6/15/2021
Merged by: @JoniVR

Base: masterHead: refactor/Preferences


📝 Commits (10+)

  • 17df555 refactor: replace MASPreferences with Preferences
  • 73059a9 feat: use new icons for Big Sur in prefs
  • 1904e04 docs: update README
  • 402afd4 refactor: replace carthage with SPM for dependencies, upgrade dependencies
  • 74af760 refactor: make General & Keys prefs slightly larger
  • b2f3cd8 fix: xcode warnings
  • e631b1e fix: more xcode warning fixes
  • 3066115 fix: more warnings gone
  • c146d7c fix: storyboard misalignments
  • 50b175c refactor: UI improvements

📊 Changes

43 files changed (+1063 additions, -1058 deletions)

View changed files

.github/menuadvanced.png (+0 -0)
📝 .github/menudisplay.png (+0 -0)
📝 .github/menugeneral.png (+0 -0)
📝 .github/menukeys.png (+0 -0)
.github/menulet-outdated.png (+0 -0)
📝 .github/menulet.png (+0 -0)
📝 .swiftlint.yml (+3 -3)
Cartfile (+0 -4)
Cartfile.resolved (+0 -4)
📝 MonitorControl.xcodeproj/project.pbxproj (+147 -96)
📝 MonitorControl.xcodeproj/xcshareddata/xcschemes/MonitorControl.xcscheme (+1 -1)
📝 MonitorControl/AppDelegate.swift (+34 -41)
📝 MonitorControl/Extensions/CGDirectDisplayID+Extension.swift (+4 -4)
📝 MonitorControl/Extensions/EDID+Extension.swift (+3 -3)
📝 MonitorControl/Extensions/NSScreen+Extension.swift (+13 -11)
MonitorControl/Extensions/Preferences+Extension.swift (+16 -0)
📝 MonitorControl/Info.plist (+1 -1)
📝 MonitorControl/Manager/DisplayManager.swift (+1 -1)
📝 MonitorControl/Model/Display.swift (+1 -1)
📝 MonitorControl/Model/ExternalDisplay.swift (+3 -2)

...and 23 more files

📄 Description

Description

This PR makes the following changes:

  • Migrate from Carthage to Swift Package Manager for dependency management
  • Fix reliability issues for DDC in latest Xcode versions (#238)
  • Update README with new steps and screenshots
  • Updated preferences pane to be more in line with Big Sur style.
  • Migrated from AMCoreAudio -> SimplyCoreAudio (same framework, different name).
  • Migrated from MASPreferences -> Preferences
  • Updated DDC.swift, MediaKeyTap (DDC.swift update should improve reliability for some identical monitors #49, thanks @leo150)
  • Uses NSGridView for preferences layout.

This PR is mostly needed so we can actually have a working build again (and hopefully merge some of the open PRs that have been blocked by this). It will probably introduce some conflicts in other PRs (storyboard hell) but still seems necessary in order to test them reliably.

Fixes #238
Closes #448

image


🔄 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/453 **Author:** [@JoniVR](https://github.com/JoniVR) **Created:** 6/12/2021 **Status:** ✅ Merged **Merged:** 6/15/2021 **Merged by:** [@JoniVR](https://github.com/JoniVR) **Base:** `master` ← **Head:** `refactor/Preferences` --- ### 📝 Commits (10+) - [`17df555`](https://github.com/MonitorControl/MonitorControl/commit/17df555b9eee48fdf88aa850d39ef88dfdea3ea2) refactor: replace MASPreferences with Preferences - [`73059a9`](https://github.com/MonitorControl/MonitorControl/commit/73059a9a0aa5a4f27f92fac2a6205fcca87c0dff) feat: use new icons for Big Sur in prefs - [`1904e04`](https://github.com/MonitorControl/MonitorControl/commit/1904e043e4cfa81a53418c6595e90c5d154bc855) docs: update README - [`402afd4`](https://github.com/MonitorControl/MonitorControl/commit/402afd45f81b7bef40953aa592eeaf1d53416684) refactor: replace carthage with SPM for dependencies, upgrade dependencies - [`74af760`](https://github.com/MonitorControl/MonitorControl/commit/74af7607aeea3797c3df604030ad188b445c078c) refactor: make General & Keys prefs slightly larger - [`b2f3cd8`](https://github.com/MonitorControl/MonitorControl/commit/b2f3cd8e0c7a644bd216f0e367f5168c11902acc) fix: xcode warnings - [`e631b1e`](https://github.com/MonitorControl/MonitorControl/commit/e631b1e7adc3618488c4a30615f4d259d3bf4b30) fix: more xcode warning fixes - [`3066115`](https://github.com/MonitorControl/MonitorControl/commit/30661154f843ce6153918bd980ae2c36f7609685) fix: more warnings gone - [`c146d7c`](https://github.com/MonitorControl/MonitorControl/commit/c146d7cb590694788033d83c5df63474d07c4415) fix: storyboard misalignments - [`50b175c`](https://github.com/MonitorControl/MonitorControl/commit/50b175c8b5bdbed3ea74290d1fa4edc4c9a9c7a7) refactor: UI improvements ### 📊 Changes **43 files changed** (+1063 additions, -1058 deletions) <details> <summary>View changed files</summary> ➕ `.github/menuadvanced.png` (+0 -0) 📝 `.github/menudisplay.png` (+0 -0) 📝 `.github/menugeneral.png` (+0 -0) 📝 `.github/menukeys.png` (+0 -0) ➖ `.github/menulet-outdated.png` (+0 -0) 📝 `.github/menulet.png` (+0 -0) 📝 `.swiftlint.yml` (+3 -3) ➖ `Cartfile` (+0 -4) ➖ `Cartfile.resolved` (+0 -4) 📝 `MonitorControl.xcodeproj/project.pbxproj` (+147 -96) 📝 `MonitorControl.xcodeproj/xcshareddata/xcschemes/MonitorControl.xcscheme` (+1 -1) 📝 `MonitorControl/AppDelegate.swift` (+34 -41) 📝 `MonitorControl/Extensions/CGDirectDisplayID+Extension.swift` (+4 -4) 📝 `MonitorControl/Extensions/EDID+Extension.swift` (+3 -3) 📝 `MonitorControl/Extensions/NSScreen+Extension.swift` (+13 -11) ➕ `MonitorControl/Extensions/Preferences+Extension.swift` (+16 -0) 📝 `MonitorControl/Info.plist` (+1 -1) 📝 `MonitorControl/Manager/DisplayManager.swift` (+1 -1) 📝 `MonitorControl/Model/Display.swift` (+1 -1) 📝 `MonitorControl/Model/ExternalDisplay.swift` (+3 -2) _...and 23 more files_ </details> ### 📄 Description ## Description This PR makes the following changes: * Migrate from Carthage to Swift Package Manager for dependency management * Fix reliability issues for DDC in latest Xcode versions (#238) * Update README with new steps and screenshots * Updated preferences pane to be more in line with Big Sur style. * Migrated from AMCoreAudio -> [SimplyCoreAudio](https://github.com/rnine/SimplyCoreAudio) (same framework, different name). * Migrated from [MASPreferences](https://github.com/shpakovski/MASPreferences) -> [Preferences](https://github.com/sindresorhus/Preferences) * Updated DDC.swift, MediaKeyTap (DDC.swift update should improve reliability for **some** identical monitors #49, thanks @leo150) * Uses `NSGridView` for preferences layout. This PR is mostly needed so we can actually have a working build again (and hopefully merge some of the open PRs that have been blocked by this). It will probably introduce some conflicts in other PRs (storyboard hell) but still seems necessary in order to test them reliably. Fixes #238 Closes #448 ![image](https://user-images.githubusercontent.com/7591717/121782610-aa7b0580-cbaa-11eb-87ec-bc1100e23c06.png) --- <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:04:33 -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#1096
No description provided.