mirror of
https://github.com/MonitorControl/MonitorControl.git
synced 2026-05-25 22:01:10 -06:00
Rename app to XDRMonitorBrightness
This commit is contained in:
parent
fc19ce2bd2
commit
81963f99ae
4 changed files with 72 additions and 90 deletions
|
|
@ -883,7 +883,7 @@
|
|||
MACOSX_DEPLOYMENT_TARGET = 10.14;
|
||||
MARKETING_VERSION = 4.3.2;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.monitorcontrol.MonitorControl;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PRODUCT_NAME = XDRMonitorBrightness;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "MonitorControl/Support/Bridging-Header.h";
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
|
|
@ -920,7 +920,7 @@
|
|||
MACOSX_DEPLOYMENT_TARGET = 10.14;
|
||||
MARKETING_VERSION = 4.3.2;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = app.monitorcontrol.MonitorControl;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PRODUCT_NAME = XDRMonitorBrightness;
|
||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "MonitorControl/Support/Bridging-Header.h";
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-O";
|
||||
|
|
|
|||
|
|
@ -57,8 +57,7 @@ class AboutPrefsViewController: NSViewController, SettingsPane {
|
|||
}
|
||||
|
||||
func setCopyrightInfo() {
|
||||
let copyright = NSLocalizedString("Copyright Ⓒ MonitorControl, ", comment: "Version")
|
||||
let year = Calendar.current.component(.year, from: Date())
|
||||
self.copyrightLabel.stringValue = "\(copyright) \(year)"
|
||||
self.copyrightLabel.stringValue = "XDRMonitorBrightness — fork by @shayprasad. Original © MonitorControl contributors \(year). MIT License."
|
||||
}
|
||||
}
|
||||
|
|
|
|||
121
README.md
121
README.md
|
|
@ -1,19 +1,16 @@
|
|||
<img src=".github/Icon-cropped.png" width="200" alt="App icon" align="left"/>
|
||||
|
||||
<div>
|
||||
<h3>MonitorControl</h3>
|
||||
<p>Controls your external display brightness and volume and shows native OSD.
|
||||
Use menubar extra sliders or the keyboard, including native Apple keys!</p>
|
||||
<a href="https://github.com/MonitorControl/MonitorControl/releases"><img src=".github/macos_badge_noborder.png" width="175" alt="Download for macOS"/></a>
|
||||
<h3>XDRMonitorBrightness</h3>
|
||||
<p>A fork of <a href="https://github.com/MonitorControl/MonitorControl">MonitorControl</a> by <a href="https://github.com/shayprasad">@shayprasad</a> with XDR extended brightness support for MacBook Pro Liquid Retina XDR and Pro Display XDR.</p>
|
||||
</div>
|
||||
|
||||
<br/><br/>
|
||||
|
||||
<div align="center">
|
||||
<a href="https://github.com/MonitorControl/MonitorControl/releases"><img src="https://img.shields.io/github/downloads/MonitorControl/MonitorControl/total.svg?style=flat" alt="downloads"/></a>
|
||||
<a href="https://github.com/MonitorControl/MonitorControl/releases"><img src="https://img.shields.io/github/release-pre/MonitorControl/MonitorControl.svg?style=flat" alt="latest version"/></a>
|
||||
<a href="https://github.com/MonitorControl/MonitorControl/blob/master/License.txt"><img src="https://img.shields.io/github/license/MonitorControl/MonitorControl.svg?style=flat" alt="license"/></a>
|
||||
<a href="https://github.com/MonitorControl/MonitorControl"><img src="https://img.shields.io/badge/platform-macOS-blue.svg?style=flat" alt="platform"/></a>
|
||||
<img src="https://img.shields.io/badge/fork-MonitorControl-orange.svg?style=flat" alt="fork"/>
|
||||
|
||||
<br/>
|
||||
<br/>
|
||||
|
|
@ -24,17 +21,19 @@ Use menubar extra sliders or the keyboard, including native Apple keys!</p>
|
|||
|
||||
<hr>
|
||||
|
||||
> [!NOTE]
|
||||
> **XDRMonitorBrightness** is a personal fork of MonitorControl, maintained by [@shayprasad](https://github.com/shayprasad). It is not affiliated with or endorsed by the original MonitorControl project. For the official app, see [MonitorControl](https://github.com/MonitorControl/MonitorControl).
|
||||
|
||||
> [!WARNING]
|
||||
> MonitorControl v4.2.0 [may crash](https://github.com/MonitorControl/MonitorControl/issues/1663) on certain configurations running macOS 15 Sequoia or Tahoe. Additionally, this version will not automatically update to the [latest app version](https://github.com/MonitorControl/MonitorControl/releases). To resolve the issue and ensure future updates, please upgrade manually.
|
||||
> This fork adds XDR extended brightness control, which drives your display above its standard maximum brightness. This may increase heat output and reduce battery life. Use responsibly.
|
||||
|
||||
## Download
|
||||
## What's different in this fork
|
||||
|
||||
Go to [Releases](https://github.com/MonitorControl/MonitorControl/releases) and download the latest `.dmg`, or you can install via Homebrew:
|
||||
```shell
|
||||
brew install --cask monitorcontrol
|
||||
```
|
||||
- **XDR Extended Brightness** — Unlocks brightness above the standard system maximum (100%) on MacBook Pro Liquid Retina XDR and Pro Display XDR displays. A red zone appears on the slider when in the extended range. Enable via an opt-in warning dialog the first time you reach maximum brightness.
|
||||
- **XDR Safety Controls** — "Reset to Standard Brightness" and "Disable XDR Extended Brightness" menu items let you quickly return to normal range.
|
||||
- **Brightness sync respects XDR range** — When syncing brightness across displays, the target display's maximum (including XDR) is respected.
|
||||
|
||||
## Major features
|
||||
## Original MonitorControl features
|
||||
|
||||
- Control your display's brightness, volume and contrast!
|
||||
- Shows native OSD for brightness and volume.
|
||||
|
|
@ -45,62 +44,8 @@ brew install --cask monitorcontrol
|
|||
- Sync up all your displays using a single slider or keyboard shortcuts.
|
||||
- Allows dimming to full black.
|
||||
- Support for custom keyboard shortcuts as well as standard brightness and media keys on Apple keyboards.
|
||||
- Dozens of customization options to tweak the inner workings of the app to suit your hardware and needs (don't forget to enable `Show advanced settings` in app Settings).
|
||||
- Simple, unobtrusive UI to blend in to the general aesthetics of macOS.
|
||||
- Completely FREE.
|
||||
|
||||
For additional features, more advanced brightness control with XDR/HDR brightness upscaling and support for more Mac models and displays, check out [BetterDisplay](https://github.com/waydabber/BetterDisplay#readme)!
|
||||
|
||||
### Screenshots (Settings)
|
||||
|
||||
<div align="center">
|
||||
<img src=".github/pref_1.png" width="392" alt="Screenshot"/>
|
||||
<img src=".github/pref_2.png" width="392" alt="Screenshot"/>
|
||||
<img src=".github/pref_3.png" width="392" alt="Screenshot"/>
|
||||
<img src=".github/pref_4.png" width="392" alt="Screenshot"/>
|
||||
</div>
|
||||
|
||||
## How to install and use the app
|
||||
|
||||
1. [Download the app](https://github.com/MonitorControl/MonitorControl/releases)
|
||||
2. Copy the MonitorControl app file from the .dmg file to your Applications folder
|
||||
3. Click on the `MonitorControl` app
|
||||
4. Add the app to `Accessibility` under `System Settings` » `Privacy & Security` as prompted (this is required only if you wish to use the native Apple keyboard brightness and media keys - if this is not the case, you can safely skip this step).
|
||||
5. Use your keyboard or the sliders in the app menu (a brightness symbol in the macOS menubar as shown on the screenshot above) to control your displays.
|
||||
6. Open `Settings…` for customization options (enable `Show advanced settings` for even more options).
|
||||
7. You can set up custom keyboard shortcuts under the `Keyboard` in Settings (the app uses Apple media keys by default).
|
||||
8. If you have any questions, go to [Discussions](https://github.com/MonitorControl/MonitorControl/discussions)!
|
||||
|
||||
### macOS compatibility
|
||||
|
||||
| MonitorControl version | macOS version |
|
||||
| ---------------------- | ----------------- |
|
||||
| v4.0.0 | Catalina 10.15* |
|
||||
| v3.1.1 | Mojave 10.14 |
|
||||
| v2.1.0 | Sierra 10.12 |
|
||||
|
||||
_* With some limitations - full functionality available on macOS 11 Big Sur or newer._
|
||||
|
||||
For macOS Sequoia and Tahoe 26 compatibility [v4.3.3 or newer](https://github.com/MonitorControl/MonitorControl/releases) is required!
|
||||
|
||||
Please note that current versions have limited native macOS OSD support on macOS Tahoe - although the Control Center brightness or volume OSD appears, the OSD percentage value will not show or update.
|
||||
|
||||
### Supported displays
|
||||
|
||||
- Most modern LCD displays from all major manufacturers supported implemented DDC/CI protocol via USB-C, DisplayPort, HDMI, DVI or VGA to allow for hardware backlight and volume control.
|
||||
- Apple displays and built-in displays are supported using native protocols.
|
||||
- LCD and LED Televisions usually do not implement DDC, these are supported using software alternatives to dim the image.
|
||||
- DisplayLink, Airplay, Sidecar and other virtual screens are supported via shade (overlay) control.
|
||||
|
||||
Notable exceptions for hardware control compatibility:
|
||||
|
||||
- DDC control using the built-in HDMI port of the 2018 Intel Mac mini, the built-in HDMI port of all M1 Macs (MacBook Pro 14" and 16", Mac Mini, Mac Studio) and the built-in HDMI port of the entry level M2 Mac mini are not supported. Use USB-C instead or get [BetterDisplay](https://betterdisplay.pro) for full DDC control over HDMI with these Macs as well for free. Software-only dimming is still available for these connections.
|
||||
- Some displays (notably EIZO) use MCCS over USB or an entirely custom protocol for control. These displays are supported with software dimming only.
|
||||
- DisplayLink docks and dongles do not allow for DDC control on Macs, only software dimming is available for these connections.
|
||||
|
||||
## Contributing to the project
|
||||
|
||||
- If you want, you can fork the code, make improvements and submit a pull request to improve the app. Accepting a PR is solely in the hands of the maintainer - before making fundamental changes expecting it to be accepted, please consult the maintainer of the project!
|
||||
- Dozens of customization options.
|
||||
- Simple, unobtrusive UI.
|
||||
|
||||
## How to build
|
||||
|
||||
|
|
@ -109,18 +54,14 @@ Notable exceptions for hardware control compatibility:
|
|||
- Xcode
|
||||
- [Swiftlint](https://github.com/realm/SwiftLint)
|
||||
- [SwiftFormat](https://github.com/nicklockwood/SwiftFormat)
|
||||
- [BartyCrouch](https://github.com/Flinesoft/BartyCrouch) (for updating localizations)
|
||||
|
||||
### Build steps
|
||||
|
||||
- Clone the project via this Terminal command:
|
||||
|
||||
```sh
|
||||
git clone https://github.com/MonitorControl/MonitorControl.git
|
||||
git clone https://github.com/shayprasad/MonitorControlXDR.git
|
||||
```
|
||||
|
||||
- If you want to clone one of the branches, add `--single-branch --branch [branchname]` after the `clone` option.
|
||||
- You're all set! Now open the `MonitorControl.xcodeproj` with Xcode! The dependencies will automatically get downloaded once you open the project. If they don't: `File > Packages > Resolve Package Versions`
|
||||
Open `MonitorControl.xcodeproj` with Xcode. Dependencies download automatically on first open. If they don't: `File > Packages > Resolve Package Versions`.
|
||||
|
||||
### Third party dependencies
|
||||
|
||||
|
|
@ -132,14 +73,22 @@ git clone https://github.com/MonitorControl/MonitorControl.git
|
|||
|
||||
## Credits
|
||||
|
||||
- [@waydabber](https://github.com/waydabber), maintainer, developer of [BetterDisplay](https://github.com/waydabber/BetterDisplay#readme).
|
||||
- [@the0neyouseek](https://github.com/the0neyouseek) - honorary maintainer
|
||||
- [@JoniVR](https://github.com/JoniVR) - honorary maintainer
|
||||
- [@alin23](https://github.com/alin23) - spearheaded M1 DDC support, developer of [Lunar](https://lunar.fyi)
|
||||
- [@mathew-kurian](https://github.com/mathew-kurian/) (original developer)
|
||||
- [@Tyilo](https://github.com/Tyilo/) (fork)
|
||||
- [@Bensge](https://github.com/Bensge/) - (used some code from his project [NativeDisplayBrightness](https://github.com/Bensge/NativeDisplayBrightness))
|
||||
- [@nhurden](https://github.com/nhurden/) (for the original MediaKeyTap)
|
||||
- [@kfix](https://github.com/kfix/ddcctl) (for ddcctl)
|
||||
- [@reitermarkus](https://github.com/reitermarkus) (for Intel DDC support)
|
||||
- [javierocasio](https://www.deviantart.com/javierocasio) (app icon background)
|
||||
This project is a fork of [MonitorControl](https://github.com/MonitorControl/MonitorControl). All credit for the original application goes to:
|
||||
|
||||
- [@waydabber](https://github.com/waydabber) — maintainer, developer of [BetterDisplay](https://github.com/waydabber/BetterDisplay#readme)
|
||||
- [@the0neyouseek](https://github.com/the0neyouseek) — honorary maintainer
|
||||
- [@JoniVR](https://github.com/JoniVR) — honorary maintainer
|
||||
- [@alin23](https://github.com/alin23) — spearheaded M1 DDC support, developer of [Lunar](https://lunar.fyi)
|
||||
- [@mathew-kurian](https://github.com/mathew-kurian/) — original developer
|
||||
- [@Tyilo](https://github.com/Tyilo/) — fork
|
||||
- [@Bensge](https://github.com/Bensge/) — used code from [NativeDisplayBrightness](https://github.com/Bensge/NativeDisplayBrightness)
|
||||
- [@nhurden](https://github.com/nhurden/) — original MediaKeyTap
|
||||
- [@kfix](https://github.com/kfix/ddcctl) — ddcctl
|
||||
- [@reitermarkus](https://github.com/reitermarkus) — Intel DDC support
|
||||
- [javierocasio](https://www.deviantart.com/javierocasio) — app icon background
|
||||
|
||||
XDR extended brightness additions by [@shayprasad](https://github.com/shayprasad).
|
||||
|
||||
## License
|
||||
|
||||
MIT — see [License.txt](License.txt). Original copyright © MonitorControl contributors. Fork additions copyright © 2026 Shay Prasad.
|
||||
|
|
|
|||
34
build/build.sh
Executable file
34
build/build.sh
Executable file
|
|
@ -0,0 +1,34 @@
|
|||
#!/bin/bash
|
||||
# Build script for XDRMonitorBrightness
|
||||
# Builds the app and copies the result to this build/ directory
|
||||
|
||||
set -e
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"
|
||||
APP_NAME="XDRMonitorBrightness"
|
||||
OUTPUT_DIR="$SCRIPT_DIR"
|
||||
|
||||
echo "Building $APP_NAME..."
|
||||
|
||||
xcodebuild \
|
||||
-project "$PROJECT_DIR/MonitorControl.xcodeproj" \
|
||||
-scheme "MonitorControl" \
|
||||
-configuration Release \
|
||||
-derivedDataPath "$SCRIPT_DIR/DerivedData" \
|
||||
CODE_SIGN_IDENTITY="-" \
|
||||
CODE_SIGNING_REQUIRED=NO \
|
||||
CODE_SIGNING_ALLOWED=NO \
|
||||
build
|
||||
|
||||
BUILT_APP="$SCRIPT_DIR/DerivedData/Build/Products/Release/$APP_NAME.app"
|
||||
|
||||
if [ -d "$BUILT_APP" ]; then
|
||||
echo "Copying $APP_NAME.app to build/ ..."
|
||||
rm -rf "$OUTPUT_DIR/$APP_NAME.app"
|
||||
cp -r "$BUILT_APP" "$OUTPUT_DIR/$APP_NAME.app"
|
||||
echo "Done: $OUTPUT_DIR/$APP_NAME.app"
|
||||
else
|
||||
echo "Error: built app not found at $BUILT_APP"
|
||||
exit 1
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue