[PR #59] [MERGED] Project upgrade, stability improvements, new features (see description) #1023

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

📋 Pull Request Information

Original PR: https://github.com/MonitorControl/MonitorControl/pull/59
Author: @JoniVR
Created: 1/11/2019
Status: Merged
Merged: 2/4/2019
Merged by: @the0neyouseek

Base: masterHead: pr/the0neyouseek


📝 Commits (6)

  • 206c32c migrate to Swift 4.2
  • 5d3bd42 fix unresponsiveness at startup
  • bb08142 fix not detecting volume keys when non-monitor sound is default, refactor
  • dd12d1f add version & build numbers to general menu, add build script
  • 2231b7e update screenshots and readme
  • 8532c80 fix readme typo

📊 Changes

19 files changed (+549 additions, -335 deletions)

View changed files

.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)
.github/osd.jpg (+0 -0)
.github/osd.png (+0 -0)
📝 MonitorControl.xcodeproj/project.pbxproj (+42 -21)
MonitorControl.xcodeproj/xcshareddata/xcschemes/MonitorControl.xcscheme (+91 -0)
📝 MonitorControl/AppDelegate.swift (+243 -194)
📝 MonitorControl/Base.lproj/Main.storyboard (+93 -82)
📝 MonitorControl/Info.plist (+2 -2)
📝 MonitorControl/Prefs/DisplayPrefsViewController.swift (+1 -1)
📝 MonitorControl/Prefs/KeysPrefsViewController.swift (+1 -1)
📝 MonitorControl/Prefs/MainPrefsViewController.swift (+11 -2)
📝 MonitorControl/Utils.swift (+3 -8)
📝 Podfile (+1 -0)
📝 Podfile.lock (+8 -4)
📝 README.md (+53 -20)

📄 Description

Hi @the0neyouseek ,

As promised, my PR with enhancements and fixes for MonitorControl.

Here are the main changes

  • 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 - attempts to read your volume settings 10 times)
  • Added a version and build number to the main preferences panel:
    menugeneral
  • 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.

Some things to note

  • I can't test multiple monitors as I only have a single external monitor.
  • Please test my changes and let me know if I broke something.
  • If you don't agree with something I did, or think there is a better solution, please let me know.
  • Please don't forget to increase the version number inside Xcode when you release, otherwise there will be confusion with which version people are using (for example when they open an issue).

Best regards
Joni


🔄 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/59 **Author:** [@JoniVR](https://github.com/JoniVR) **Created:** 1/11/2019 **Status:** ✅ Merged **Merged:** 2/4/2019 **Merged by:** [@the0neyouseek](https://github.com/the0neyouseek) **Base:** `master` ← **Head:** `pr/the0neyouseek` --- ### 📝 Commits (6) - [`206c32c`](https://github.com/MonitorControl/MonitorControl/commit/206c32ce5a9b4a86320fc20d283e5c5b8d3a419b) migrate to Swift 4.2 - [`5d3bd42`](https://github.com/MonitorControl/MonitorControl/commit/5d3bd42fdda9a955cf2b44325fc3a37410496e40) fix unresponsiveness at startup - [`bb08142`](https://github.com/MonitorControl/MonitorControl/commit/bb081427cd5e3f5cd243e4cdba63fe290060f5bf) fix not detecting volume keys when non-monitor sound is default, refactor - [`dd12d1f`](https://github.com/MonitorControl/MonitorControl/commit/dd12d1fc877749ed495e5dd6026706061444a008) add version & build numbers to general menu, add build script - [`2231b7e`](https://github.com/MonitorControl/MonitorControl/commit/2231b7efd124107b1f5328705925e86052e0b706) update screenshots and readme - [`8532c80`](https://github.com/MonitorControl/MonitorControl/commit/8532c808ca99101cba0e138894336f1c4a6f2b77) fix readme typo ### 📊 Changes **19 files changed** (+549 additions, -335 deletions) <details> <summary>View changed files</summary> ➕ `.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) ➕ `.github/osd.jpg` (+0 -0) ➖ `.github/osd.png` (+0 -0) 📝 `MonitorControl.xcodeproj/project.pbxproj` (+42 -21) ➕ `MonitorControl.xcodeproj/xcshareddata/xcschemes/MonitorControl.xcscheme` (+91 -0) 📝 `MonitorControl/AppDelegate.swift` (+243 -194) 📝 `MonitorControl/Base.lproj/Main.storyboard` (+93 -82) 📝 `MonitorControl/Info.plist` (+2 -2) 📝 `MonitorControl/Prefs/DisplayPrefsViewController.swift` (+1 -1) 📝 `MonitorControl/Prefs/KeysPrefsViewController.swift` (+1 -1) 📝 `MonitorControl/Prefs/MainPrefsViewController.swift` (+11 -2) 📝 `MonitorControl/Utils.swift` (+3 -8) 📝 `Podfile` (+1 -0) 📝 `Podfile.lock` (+8 -4) 📝 `README.md` (+53 -20) </details> ### 📄 Description Hi @the0neyouseek , As promised, my PR with enhancements and fixes for MonitorControl. ## Here are the main changes - 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: ![menugeneral](https://user-images.githubusercontent.com/7591717/51052474-0c4c7500-15d7-11e9-883d-804051577bc7.png) - 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. ## Some things to note - I can't test multiple monitors as I only have a single external monitor. - Please test my changes and let me know if I broke something. - If you don't agree with something I did, or think there is a better solution, please let me know. - Please don't forget to increase the version number inside Xcode when you release, otherwise there will be confusion with which version people are using (for example when they open an issue). Best regards Joni --- <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:02:24 -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#1023
No description provided.