Software Dummy Display Adapter for Apple Silicon Macs to Have Custom HiDPI Resolutions.

Overview

BetterDummy

Dummy Display for Apple Silicon Macs to achieve custom resolutions.

About

M1 macs tend to have issues with custom resolutions. Notoriously they don't allow sub 4K resolution displays to have HiDPI ("Retina") resolutions even though a 22" - 24" QHD display would greatly benefit from having an 1920x1080 HiDPI mode.

To fix this issue, many resort to buying a 4K HDMI dummy dongle to fool macOS into thinking that a 4K display is connected and then mirror the contents of this dummy display to the physical lower-res display in order to have HDMI resolution. This approach has obvious drawbacks (you need to buy a dummy, you render your HDMI port useless etc.)

To alleviate this problem, DummyDisplay creates a virtual dummy display for you which you can then utilize as a mirror main.

Advantages of BetterDummy over a physical 4K HDMI dummy plug:

  • Your HDMI port will remain usable for an other display.
  • Does not suffer from issues that prevalent with the physical dummy route (like jittery mouse cursor).
  • Offers a much wideer variety of HiDPI and standard resolutions.
  • Works with all aspect ratios, does not depend on what resoluations are recorded in the dummy's EDID/firmware.
  • Does not utilize graphics hardware in vain so it is somewhat faster.
  • Available instantly + totally free. :)

Usage

  1. Start the app
  2. In the app menu choose Connect Dummy and select your desired aspect ratio


  1. In System Preferences -> Displays you'll see the new screen (for example Dummy 16:9)
  2. Activate mirroring with main display being the Dummy display
  3. Set the dummy display as Optimize for
  4. Set Resolution as Scaled
  5. Click Show all resolutions
  1. You'll see a long list of available resolutions - select the desired resolution.

NOTES:

  • HiDPI resolutions are followed by non-HiDPI resolutions so don't forget to scroll down, it's a long list!
  • You might have to fight with the Displays tab in Preferences sometimes as (at least on Monterey) the Optimize for setting tends to reset at random times to the physical display for unknown reasons while changing the settings (the Displays tab appears to be rather buggy in general).

The app saves the dummy display configuratio and automatically restore it upon next restart.

Compatibility

The app and instructions were tested on an M1 MBA and mini running Monterey but according to reports works on Big Sur as well.

Build and Installation

You'll need to build the app in XCode:

  • Clone the app
  • Open the project in XCode
  • Change signing settings to suit your configuration
  • Build & Run

An unsigned beta release is also provided.

Don't forget to check out

If you like this app, you'll like MonitorControl even more! Control the brightness, volume of your external display like it would be a native Apple display!

Special Thanks

The basic idea and some of the code was adapted from FluffyDisplay. Thanks to @tml1024!

How to help

You can contribute to the code. If you want to donate or buy me a lunch, please let me know! :)

Comments
  • Dummy mirroring method for HiDPI scaling (native smooth scaling not affected) - Colors flicker or shade/tone changes after sleep when dummies are mirrored

    Dummy mirroring method for HiDPI scaling (native smooth scaling not affected) - Colors flicker or shade/tone changes after sleep when dummies are mirrored

    When I use the option "Disconnect and reconnect on sleep" or "Disconnect and reconnect on lock" (which by the way are very useful), my screen starts flickering after a reconnection is triggered by those events.

    The flickering is like a small variation on brightness only every time I move the mouse pointer by 1px, very strange! The flickering is not visible when doing screen recordings, so I manually recorded a video with my camera, however the effect is more noticeable in person than what the camera shows:

    https://www.youtube.com/watch?v=a5oewKMhYew (flickering from 0:30 onwards)

    The only way to stop the flickering is quit BetterDummy or manually disconnect and reconnect the dummy.

    Any idea of why this bizarre issue happens?

    information known issue 
    opened by cprcrack 179
  • Option to disconnect/reconnect dummies after sleep to further fix sleep issues

    Option to disconnect/reconnect dummies after sleep to further fix sleep issues

    Hi, I'm using MBA M1 on my 34uc88 (2k) monitor and I really like the app. The only issue that I have is that is does not display any picture on the external device once MBA is waking from sleep. I have to kill the app and re-launch it, which is daunting. Is there any way to fix this?

    enhancement done released 
    opened by wookash 33
  • Dummy mirroring method for HiDPI scaling (native smooth scaling not affected) - High refresh displays (refresh rates above 60Hz) are not supported

    Dummy mirroring method for HiDPI scaling (native smooth scaling not affected) - High refresh displays (refresh rates above 60Hz) are not supported

    Issue description

    Creating high refresh rate dummies in order to mirror them to high refresh rate displays is not possible.

    Root cause

    This is an inherent limitation of the macOS CGVirtualDisplay API used by the app therefore cannot be fixed at this time.

    Resolution

    The situation might change once Apple introduces ProMotion for AirPlay or Sidecar.

    information known issue 
    opened by waydabber 31
  • Mouse cursor showing up with some delay after typing when dummy mirroring is applied in macOS 12.5 or Ventura beta4/5 (macOS bug)

    Mouse cursor showing up with some delay after typing when dummy mirroring is applied in macOS 12.5 or Ventura beta4/5 (macOS bug)

    Hi! I'm currently using BetterDisplay with a Dell S3220DGF, and had this curious problem where the mouse cursor doesn't show up immediately after mouse movement after it normally disappears during typing.

    Illustration here: https://youtu.be/-mJYMJAfsEo. I immediately started moving the mouse after typing a few letters but the cursor only shows up after a small delay, meaning I couldn't find the cursor for a brief moment.

    However, when I try to do screen recording using shift+command+5, the recording did not pick up this issue and the cursor appeared immediately, despite the fact that I'm seeing the delay on the screen.

    Comparing to directly connecting without using BetterDisplay, the mouse cursor appears immediately when I move the mouse: https://youtu.be/pnAjhbmxhF0

    known issue 
    opened by GaryHanchengLiQB 29
  • Max. HiDPI resolution for Pro Display XDR?

    Max. HiDPI resolution for Pro Display XDR?

    Hi there,

    u write:

    NEW! Convert your internal and natively connected external displays to smoothly-scaled HiDPI displays on Apple Silicon - now even without mirroring a dummy (displays with notch, HDR, HDCP, high refresh rate fully supported)! *

    But it does not, iam added 4k without Dummy in BetterDisplay to my Pro Display XDR in a MB16 M1 MAX but it does not show up in HiDPI also after reboot :/

    awaiting response from issue reporter investigating 
    opened by Zorast 23
  • Random flickering starting after a while of use

    Random flickering starting after a while of use

    Hey,

    so my setup has been working well for a while. I have an M1 Macbook air and one external monitor. I use a Dummy which I then mirror to my external screen and use the internal monitor as an extended screen. Now, this setup has been stable, even through sleep. I've checked all the optional sleep options. However, since yesterday I am running into this weird issue where towards the afternoon my external monitor will start to flicker a lot. The only way to fix it is to quit better dummy or, surprisingly, to just wait. After an hour or so the flickering gets less and less noticeable until it seems to disappear. At the start of the flickering, there also seems to be some kind of burn-in or leftover pixels in my screen from whatever window I had open at the start of the flickering, those fade with time too. Also, there are some noticeable vertical lines on the screen at the start of the flickering which also fade away over time. The problem persists through MacBook restarts, better dummy reinstalls, and the creation of new dummies. Really weird issue and seems unrelated to sleep, do you have any idea what might be causing it/how to fix it? I am also running f.lux and Monitorcontrol with the gamma value table turned off, quitting those apps doesn't fix the issue though

    duplicate 
    opened by M0mentoMemes 21
  • Black bar/border, or wrong resolution on some configurations when doing mirroring

    Black bar/border, or wrong resolution on some configurations when doing mirroring

    Issue description

    Mirroring a dummy on some Intel Macs might result in lack of HiDPI resolutions or black bar/border around the screen in some configurations.

    Root cause

    The problem is related to how virtual displays and mirroring is handled on Intel Macs as opposed to Apple Silicon Macs.

    Resolution

    For the affected Intel Macs other tools are available to create custom resolutions which might be more practical to use. BetterDummy is still suitable to create virtual displays on headless Intel Macs.

    enhancement done known issue released 
    opened by waydabber 21
  • Bug: after waking up a mirrored display is dim and BetterDummy is not responding until force quit and start again

    Bug: after waking up a mirrored display is dim and BetterDummy is not responding until force quit and start again

    Quite often after a long sleep and waking up the external display is dim and BetterDummy is not responding. Scaling etc works though. After I force to quit it in the Process manager and start again everything returns to normal. I have this issue for quite long time already with different versions. Can't say when I found it the first time.

    BetterDummy Pro v1.2.7 build 8076 MacOS 12.4 MacBook Pro M1 Max 14" Xiaomi Curved Gaming Monitor 34" connected through Satechi Thunderbolt 4 dock and GRWIBEOU USB-C -> DisplayPort 8K cable

    can't reproduce workaround available 
    opened by vheathen 20
  • About the color of the screen

    About the color of the screen

    First of all, thank you very much for enabling me to open hidpi.However, I found a problem. After turning on hidpi, the display on the screen became gray. Trying to adjust the display and the description file could not be significantly alleviated.I don't know what happened, can you help me?My external monitor is DELL U2520DR.Thank you!

    bug done 
    opened by tangruilover 20
  • App incorrectly sets default DDC contrast (and for v1.3.x R/G/B black level) upon changing brightness after starting the app the first time

    App incorrectly sets default DDC contrast (and for v1.3.x R/G/B black level) upon changing brightness after starting the app the first time

    The DDC setting for Contrast, Red Gain, Red Black Gain, Blue Gain, Blue Black Gain, Green Gain, Green Black Gain completely broke the contrast settings on LG external monitors, making them appearing as extremely high contrast. The display contrast is broken immediately after changing brightness using the hotkey while on the beta. Lowering the contrast to 0 turns make the screen black, while turning it to 100 make it high contrast again. No value between 0 - 100 for any setting can restore the display to the original contrast profile. This issue has been seen on a LG 32GK650F and LG Gram+ View (portable monitor). On the LG 32GK650F, the only way to fix this is by going to the monitor settings and choosing "Picture Reset". Afterwards, BetterDisplay works normally and no longer breaks the contrast profile. On the LG Gram+ View, since there is no OSD to change the settings, the monitor contrast profile is completely broken. I've tried fine-tuning all the DDC settings, but nothing seems to restore it to the original settings. It's either clipping out all the highlights or just too dark.

    Any help on this issue is greatly appreciated!

    bug done released DDC 
    opened by alohaquando 17
  • Add option to limit native smooth scaling min. and max. resolution

    Add option to limit native smooth scaling min. and max. resolution

    Hi,

    As described in title setting resolution over 3000 pixels (for example 3076) cause crash of Monterey (12.5 - latest stable) and restarts whole system.

    In fact that high resolution is useless, so maybe you can add possibility of setting minimum and maximum resolution on slider (to avoid ultra low and ultra high resolutions)?

    Best regards

    enhancement done released 
    opened by dmkpoznan 16
  • Add brightness and volume sliders to relevant submenus if disabled in main menu

    Add brightness and volume sliders to relevant submenus if disabled in main menu

    Similar to how the contrast slider works, if these sliders are disabled in the main menu, they should still be added to the relecant submenus (Image Adjustments, DDC Control)

    enhancement done unreleased 
    opened by waydabber 1
  • Option to turn off panel backlight when combined brightness is set to zero

    Option to turn off panel backlight when combined brightness is set to zero

    For compatible displays the panel backlight could be turned off when the screen is dimmed to 0% and then turned back on again.

    Most displays won't work with this but some do so this should be disabled by default.

    Related to #1177

    enhancement done unreleased DDC 
    opened by waydabber 1
  • Option to turn off panel backlight on screensaver (for compatible displays when they are used as secondary display)

    Option to turn off panel backlight on screensaver (for compatible displays when they are used as secondary display)

    For multi-monitor setups it would be great if the panel backlight could be turned off upon screensaver start and turned back on upon logging back.

    Since the login screen is displayed while the screensaver is still in operation, this feature should be enabled for compatible secondary displays only (not the main display).

    Related to #1177

    enhancement done unreleased DDC 
    opened by waydabber 2
  • Better support for XDR display presets

    Better support for XDR display presets

    Support should be improved for non-default Apple XDR display presets (some users might be using these).

    • Recognize reference modes that has hardware brightness control disabled (switch to software brightness control)
    • Recognize switch from XDR mode to and from non-XDR mode and disable/enable upscaling accordingly
    • Adapt to Reference HDR mode properly
    enhancement done unreleased 
    opened by waydabber 0
Releases(v1.3.9)
  • v1.3.9(Dec 8, 2022)

    App icon

    About this version

    This release contains improvements and bug fixes.

    Enhancements

    • Added EDID override feature (Intel only) - #1204
    • Option to leave native mute key under OS control (for displays with problematic mute control) - #1220
    • Added options to select various DDC muting/unmuting methods - #1020
    • Added underscan slider for supported displays - #1207
    • Made EDID export folder selectable with a proper save dialog - #1239

    Fixed

    • Config Protection - Protect Main Status toggle does not work - #1231
    • If mute is marked as not supported, the app does not switch to mute via zero volume - #1225
    • Last line is missing in under Show display information - #1209
    • Typo in General settings - #1221
    Change log of v1.3.x versions

    Changes in v1.3.8

    Enhancements

    • Add feature to customize DDC inputs for a display - #1128
    • Add Undo/Skip possibility for display configuration editing - #1174
    • Add EDID export support for Intel Macs - #1155
    • Autodetect EDID size for direct I2C read by getting extension block numbers - #1191
    • Fixed: Start at login issue on Ventura until app added manually at least once - #1180
    • Fixed: When configured, DDC read is happening on startup despite safe mode activated - #1187
    • Fixed: Intel Macs - Mirroring briefly works and then the mirror breaks (previous state returns) - #1192
    • Fixed: Intel Macs - Resolution increase/decrease keyboard shortcuts did not work as expected - #1190
    • Fixed: Intel Macs - HiDPI toggle does not seem to work properly (unable to switch to LoDPI with the toggle) - #1189
    • Fixed: Intel Macs - some valid resolutions show up as Invalid - #1188
    • Fixed: Intel Macs - Reading DDC values on start does not work - #1186
    • Fixed: Intel Macs - DDC control seems a bit less smooth than optimal, timings should be adjusted - #1185
    • Fixed: Intel Macs - HDR upscaling should be disabled on Intel (only causes weird colors) - #1184
    • Fixed: Intel Macs - HDR checkbox value does not change after toggling HDR on an external display - #1183
    • Fixed: Intel Macs - Refresh rate value is not visible under Set Resolution for built-in display - #1182
    • Fixed: Intel Macs - Contrast and gain color adjustments cause artifacts - #1181
    • Removed: Display control compatibility setting is now removed from Settings/General as it is not relevant anymore - #1179

    Changes in v1.3.7

    • Added rotation toggle keyboard shortcut option + ignore built-in screen option - #1169
    • FIXED: Legacy auto-start is broken/crashes in v1.3.5/v1.3.6 - #1175

    Changes in v1.3.6

    • Add keyboard shortcut for DDC inputs - #1129
    • Add alternate formats for copyable EDID data - #1156
    • Separate DDC support and EDID and I/O Registry parsing toggle (Apple Silicon) - #1154
    • Support for DDC scale skew (curve) setting - #1153
    • Toggle for automatic brightness adjustment (Apple native) - #1171
    • Minor UI tweak - delegate some less used settings to an expandable block under Settings/keyboards - #1162
    • FIXED: Startup DDC mute read works in reverse - #1166 opened 2 days ago by waydabber
    • FIXED: DDC reads do not adhere to min and max DDC value overrides - #1167
    • FIXED: XDR upscaling is not always not enabled after launching the app the first time - have to open twice. - #1158
    • FIXED: Combined brightness slider does not reflect properly externally induced Apple display brightness changes - #1170

    Changes in v1.3.5

    • DDC Display Input control - #604
    • Retrieve and export EDID data from display (Apple Silicon only) - #1112
    • Show detailed display info under Settings/Displays (Apple Silicon only ) - #1144
    • Ability to customize factory reset and input select DDC control codes - #1136
    • Added option to customize display name and menu icon - #1137
    • Use new API (SMAppService) for automatic login (macOS Ventura only) - #1125
    • Updated Paddle SDK to new v4.4 version - #1139
    • Fixed: The expand icon (wide chevron) at the bottom of menu blocks is light gray and not obvious enough - #1111
    • Fixed: Unfoldable advanced settings font not rendered as small in Settings/App Menu - #1143
    • Fixed: Settings/Displays block look bad in some scenarios when a display is collapsed - #1145
    • Fixed: Accessibility setting menu icon not hidden when menu icons are generally disabled - #1146

    Changes in v1.3.4

    • Option to display percentage as scaling factor - #1076
    • Fixed: Refresh Rate menu item should be hidden when a display is mirror target - #1075
    • Fixed: Some items are missing from the Tools menu - #1079

    Changes in v1.3.3

    • Customizable menubar icon - #722
    • Show both resolution slider and resolution menu - #1042
    • Option to hide disconnected dummy from menu - #1068
    • A more prominent and by default visible way to connect/disconnect dummies - #1067
    • Refactor/rewrite menu generation - #1066
    • Fixed: When a display is collapsed and remains the sole display, without its fully hidden from the menu when header for a single display is disabled - #1072
    • Fixed: When both menu item and header icons are disabled, texts do not line up properly - #1071
    • Fixed: Some menu items have icons even when icons are disabled - #1070
    • Fixed: DDC menu appears with a factory reset option for non-DDC compliant displays - #1069
    • Fixed: The Set Resolution menu is erroneously available for the mirror target display - #1059
    • Removed: option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048

    Changes in v1.3.2-beta

    • Higher luminance with HDR brightness upscaling calibration - #1053
    • Recalibrated percentages for brightness upscaling on Apple XDR displays - #1053
    • Smoother XDR brightness upscaling experience for Apple XDR displays (also avoid overshoot effect) - #1051
    • Add DDC factory reset to DDC menu
    • Option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048
    • Improved native smooth scaling compatibility with some Intel macs - #1041
    • Fixed: App incorrectly sets default DDC contrast (and for v1.3.x R/G/B black level) upon changing brightness after starting the app the first time - #1046
    • Fixed: Apple brightness smooth transition toggle has no effect - #1050
    • Fixed: Sidecar display name appears in random foreign language - #1047

    Changes in v1.3.1-beta

    • Display configuration protection (also: protection for/against VRR) - #995
    • Keyboard shortcut to start/stop PIP window - #1026
    • Add display rotation keyboard shortcut - #1014
    • DDC R/G/B Gain and Black Level adjustments - #1019
    • Option to enable/disable support for specific DDC controls for a display - #1002
    • Custom Video Control Codes or multiple codes for DDC control - #1005
    • Support for on/off value override for the DDC mute command - #1009
    • Support for inverted control values for DDC - #1004
    • Support for different scale than the usual 0-100 for DDC - #1003
    • Options to adjust DDC communication timings - #1008
    • Add option to customize audio device name associated with the display for DDC volume control - #638
    • Change More Options... submenu into an expandable area - #1034, #1033
    • Dismiss button for the blue reboot banner under Settings/Displays - #1011
    • Option to hide Check for Updates form the Tools menu when it is set to be closable - #1037
    • All menu block header should be clickable to show/hide block - #1032
    • Disconnected dummies should be listed under Settings/Displays - #1031
    • Improve the design of Settings expandable subsections - #989
    • Fixed: 270 degree PIP and Full Screen Streaming rotation does not work properly - #1028

    Changes in v1.3.0-beta

    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963
    • Clarify wording of native smooth scaling manually defined limits - #916
    • Fixed: In fully headless the default headless virtual display should have a proper name - #986
    • Fixed: Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Fixed: Slider percentage does not always exactly match DDC value - #974
    • Fixed: Upon mirror configuration the menu icon is not updated properly - #943
    • Fixed: Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.3.9.dmg(5.26 MB)
  • v1.3.8(Nov 28, 2022)

    App icon

    About this version

    This release contains improvements and bug fixes. The release mostly focuses on improving compatibility with Intel Macs (long overdue!) and has some useful new features as well.

    The following change log lists all improvements compared to the previous stable v1.3.7 version.

    Enhancements

    • Add feature to customize DDC inputs for a display - #1128
    • Add Undo/Skip possibility for display configuration editing - #1174
    • Add EDID export support for Intel Macs - #1155
    • Autodetect EDID size for direct I2C read by getting extension block numbers - #1191

    Fixed

    • Start at login issue on Ventura until app added manually at least once - #1180
    • When configured, DDC read is happening on startup despite safe mode activated - #1187
    • Intel Macs - Mirroring briefly works and then the mirror breaks (previous state returns) - #1192
    • Intel Macs - Resolution increase/decrease keyboard shortcuts did not work as expected - #1190
    • Intel Macs - HiDPI toggle does not seem to work properly (unable to switch to LoDPI with the toggle) - #1189
    • Intel Macs - some valid resolutions show up as Invalid - #1188
    • Intel Macs - Reading DDC values on start does not work - #1186
    • Intel Macs - DDC control seems a bit less smooth than optimal, timings should be adjusted - #1185
    • Intel Macs - HDR upscaling should be disabled on Intel (only causes weird colors) - #1184
    • Intel Macs - HDR checkbox value does not change after toggling HDR on an external display - #1183
    • Intel Macs - Refresh rate value is not visible under Set Resolution for built-in display - #1182
    • Intel Macs - Contrast and gain color adjustments cause artifacts - #1181

    Removed

    • Display control compatibility setting is now removed from Settings/General as it is not relevant anymore - #1179
    Change log of v1.3.x versions

    Changes in v1.3.7

    • Added rotation toggle keyboard shortcut option + ignore built-in screen option - #1169
    • FIXED: Legacy auto-start is broken/crashes in v1.3.5/v1.3.6 - #1175

    Changes in v1.3.6

    • Add keyboard shortcut for DDC inputs - #1129
    • Add alternate formats for copyable EDID data - #1156
    • Separate DDC support and EDID and I/O Registry parsing toggle (Apple Silicon) - #1154
    • Support for DDC scale skew (curve) setting - #1153
    • Toggle for automatic brightness adjustment (Apple native) - #1171
    • Minor UI tweak - delegate some less used settings to an expandable block under Settings/keyboards - #1162
    • FIXED: Startup DDC mute read works in reverse - #1166 opened 2 days ago by waydabber
    • FIXED: DDC reads do not adhere to min and max DDC value overrides - #1167
    • FIXED: XDR upscaling is not always not enabled after launching the app the first time - have to open twice. - #1158
    • FIXED: Combined brightness slider does not reflect properly externally induced Apple display brightness changes - #1170

    Changes in v1.3.5

    • DDC Display Input control - #604
    • Retrieve and export EDID data from display (Apple Silicon only) - #1112
    • Show detailed display info under Settings/Displays (Apple Silicon only ) - #1144
    • Ability to customize factory reset and input select DDC control codes - #1136
    • Added option to customize display name and menu icon - #1137
    • Use new API (SMAppService) for automatic login (macOS Ventura only) - #1125
    • Updated Paddle SDK to new v4.4 version - #1139
    • Fixed: The expand icon (wide chevron) at the bottom of menu blocks is light gray and not obvious enough - #1111
    • Fixed: Unfoldable advanced settings font not rendered as small in Settings/App Menu - #1143
    • Fixed: Settings/Displays block look bad in some scenarios when a display is collapsed - #1145
    • Fixed: Accessibility setting menu icon not hidden when menu icons are generally disabled - #1146

    Changes in v1.3.4

    • Option to display percentage as scaling factor - #1076
    • Fixed: Refresh Rate menu item should be hidden when a display is mirror target - #1075
    • Fixed: Some items are missing from the Tools menu - #1079

    Changes in v1.3.3

    • Customizable menubar icon - #722
    • Show both resolution slider and resolution menu - #1042
    • Option to hide disconnected dummy from menu - #1068
    • A more prominent and by default visible way to connect/disconnect dummies - #1067
    • Refactor/rewrite menu generation - #1066
    • Fixed: When a display is collapsed and remains the sole display, without its fully hidden from the menu when header for a single display is disabled - #1072
    • Fixed: When both menu item and header icons are disabled, texts do not line up properly - #1071
    • Fixed: Some menu items have icons even when icons are disabled - #1070
    • Fixed: DDC menu appears with a factory reset option for non-DDC compliant displays - #1069
    • Fixed: The Set Resolution menu is erroneously available for the mirror target display - #1059
    • Removed: option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048

    Changes in v1.3.2-beta

    • Higher luminance with HDR brightness upscaling calibration - #1053
    • Recalibrated percentages for brightness upscaling on Apple XDR displays - #1053
    • Smoother XDR brightness upscaling experience for Apple XDR displays (also avoid overshoot effect) - #1051
    • Add DDC factory reset to DDC menu
    • Option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048
    • Improved native smooth scaling compatibility with some Intel macs - #1041
    • Fixed: App incorrectly sets default DDC contrast (and for v1.3.x R/G/B black level) upon changing brightness after starting the app the first time - #1046
    • Fixed: Apple brightness smooth transition toggle has no effect - #1050
    • Fixed: Sidecar display name appears in random foreign language - #1047

    Changes in v1.3.1-beta

    • Display configuration protection (also: protection for/against VRR) - #995
    • Keyboard shortcut to start/stop PIP window - #1026
    • Add display rotation keyboard shortcut - #1014
    • DDC R/G/B Gain and Black Level adjustments - #1019
    • Option to enable/disable support for specific DDC controls for a display - #1002
    • Custom Video Control Codes or multiple codes for DDC control - #1005
    • Support for on/off value override for the DDC mute command - #1009
    • Support for inverted control values for DDC - #1004
    • Support for different scale than the usual 0-100 for DDC - #1003
    • Options to adjust DDC communication timings - #1008
    • Add option to customize audio device name associated with the display for DDC volume control - #638
    • Change More Options... submenu into an expandable area - #1034, #1033
    • Dismiss button for the blue reboot banner under Settings/Displays - #1011
    • Option to hide Check for Updates form the Tools menu when it is set to be closable - #1037
    • All menu block header should be clickable to show/hide block - #1032
    • Disconnected dummies should be listed under Settings/Displays - #1031
    • Improve the design of Settings expandable subsections - #989
    • Fixed: 270 degree PIP and Full Screen Streaming rotation does not work properly - #1028

    Changes in v1.3.0-beta

    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963
    • Clarify wording of native smooth scaling manually defined limits - #916
    • Fixed: In fully headless the default headless virtual display should have a proper name - #986
    • Fixed: Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Fixed: Slider percentage does not always exactly match DDC value - #974
    • Fixed: Upon mirror configuration the menu icon is not updated properly - #943
    • Fixed: Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.3.8.dmg(5.24 MB)
  • v1.3.7(Nov 21, 2022)

    App icon

    About this version

    This stable release contains improvements and bug fixes.

    The following change log lists all improvements compared to the previous stable v1.3.4 version.

    Enhancements

    • Added rotation toggle keyboard shortcut option + ignore built-in screen option - #1169
    • DDC Display Input control - #604
    • Added keyboard shortcut for DDC inputs - #1129
    • Support for DDC scale skew (curve) setting - #1153
    • Retrieve and export EDID data from display (Apple Silicon only) - #1112
    • Added alternate formats for copyable EDID data - #1156
    • Show detailed display info under Settings/Displays (Apple Silicon only ) - #1144
    • Ability to customize factory reset and input select DDC control codes - #1136
    • Added option to customize display name and menu icon - #1137
    • Use new API (SMAppService) for automatic login (macOS Ventura only) - #1125
    • Updated Paddle SDK to new v4.4 version - #1139
    • Separate DDC support and EDID and I/O Registry parsing toggle (Apple Silicon) - #1154
    • Toggle for automatic brightness adjustment (Apple native) - #1171
    • Minor UI tweak - delegate some less used settings to an expandable block under Settings/keyboards - #1162

    Fixed

    • Legacy auto-start is broken/crashes in v1.3.5/v1.3.6 - #1175
    • Startup DDC mute read works in reverse - #1166 opened 2 days ago by waydabber
    • DDC reads do not adhere to min and max DDC value overrides - #1167
    • XDR upscaling is not always not enabled after launching the app the first time - have to open twice. - #1158
    • Combined brightness slider does not reflect properly externally induced Apple display brightness changes - #1170
    • The expand icon (wide chevron) at the bottom of menu blocks is light gray and not obvious enough - #1111
    • Unfoldable advanced settings font not rendered as small in Settings/App Menu - #1143
    • Settings/Displays block look bad in some scenarios when a display is collapsed - #1145
    • Accessibility setting menu icon not hidden when menu icons are generally disabled - #1146
    Change log of v1.3.x versions

    Changes in v1.3.7

    • Added rotation toggle keyboard shortcut option + ignore built-in screen option - #1169
    • FIXED: Legacy auto-start is broken/crashes in v1.3.5/v1.3.6 - #1175

    Changes in v1.3.6

    • Add keyboard shortcut for DDC inputs - #1129
    • Add alternate formats for copyable EDID data - #1156
    • Separate DDC support and EDID and I/O Registry parsing toggle (Apple Silicon) - #1154
    • Support for DDC scale skew (curve) setting - #1153
    • Toggle for automatic brightness adjustment (Apple native) - #1171
    • Minor UI tweak - delegate some less used settings to an expandable block under Settings/keyboards - #1162
    • FIXED: Startup DDC mute read works in reverse - #1166 opened 2 days ago by waydabber
    • FIXED: DDC reads do not adhere to min and max DDC value overrides - #1167
    • FIXED: XDR upscaling is not always not enabled after launching the app the first time - have to open twice. - #1158
    • FIXED: Combined brightness slider does not reflect properly externally induced Apple display brightness changes - #1170

    Changes in v1.3.5

    • DDC Display Input control - #604
    • Retrieve and export EDID data from display (Apple Silicon only) - #1112
    • Show detailed display info under Settings/Displays (Apple Silicon only ) - #1144
    • Ability to customize factory reset and input select DDC control codes - #1136
    • Added option to customize display name and menu icon - #1137
    • Use new API (SMAppService) for automatic login (macOS Ventura only) - #1125
    • Updated Paddle SDK to new v4.4 version - #1139
    • Fixed: The expand icon (wide chevron) at the bottom of menu blocks is light gray and not obvious enough - #1111
    • Fixed: Unfoldable advanced settings font not rendered as small in Settings/App Menu - #1143
    • Fixed: Settings/Displays block look bad in some scenarios when a display is collapsed - #1145
    • Fixed: Accessibility setting menu icon not hidden when menu icons are generally disabled - #1146

    Changes in v1.3.4

    • Option to display percentage as scaling factor - #1076
    • Fixed: Refresh Rate menu item should be hidden when a display is mirror target - #1075
    • Fixed: Some items are missing from the Tools menu - #1079

    Changes in v1.3.3

    • Customizable menubar icon - #722
    • Show both resolution slider and resolution menu - #1042
    • Option to hide disconnected dummy from menu - #1068
    • A more prominent and by default visible way to connect/disconnect dummies - #1067
    • Refactor/rewrite menu generation - #1066
    • Fixed: When a display is collapsed and remains the sole display, without its fully hidden from the menu when header for a single display is disabled - #1072
    • Fixed: When both menu item and header icons are disabled, texts do not line up properly - #1071
    • Fixed: Some menu items have icons even when icons are disabled - #1070
    • Fixed: DDC menu appears with a factory reset option for non-DDC compliant displays - #1069
    • Fixed: The Set Resolution menu is erroneously available for the mirror target display - #1059
    • Removed: option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048

    Changes in v1.3.2-beta

    • Higher luminance with HDR brightness upscaling calibration - #1053
    • Recalibrated percentages for brightness upscaling on Apple XDR displays - #1053
    • Smoother XDR brightness upscaling experience for Apple XDR displays (also avoid overshoot effect) - #1051
    • Add DDC factory reset to DDC menu
    • Option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048
    • Improved native smooth scaling compatibility with some Intel macs - #1041
    • Fixed: App incorrectly sets default DDC contrast (and for v1.3.x R/G/B black level) upon changing brightness after starting the app the first time - #1046
    • Fixed: Apple brightness smooth transition toggle has no effect - #1050
    • Fixed: Sidecar display name appears in random foreign language - #1047

    Changes in v1.3.1-beta

    • Display configuration protection (also: protection for/against VRR) - #995
    • Keyboard shortcut to start/stop PIP window - #1026
    • Add display rotation keyboard shortcut - #1014
    • DDC R/G/B Gain and Black Level adjustments - #1019
    • Option to enable/disable support for specific DDC controls for a display - #1002
    • Custom Video Control Codes or multiple codes for DDC control - #1005
    • Support for on/off value override for the DDC mute command - #1009
    • Support for inverted control values for DDC - #1004
    • Support for different scale than the usual 0-100 for DDC - #1003
    • Options to adjust DDC communication timings - #1008
    • Add option to customize audio device name associated with the display for DDC volume control - #638
    • Change More Options... submenu into an expandable area - #1034, #1033
    • Dismiss button for the blue reboot banner under Settings/Displays - #1011
    • Option to hide Check for Updates form the Tools menu when it is set to be closable - #1037
    • All menu block header should be clickable to show/hide block - #1032
    • Disconnected dummies should be listed under Settings/Displays - #1031
    • Improve the design of Settings expandable subsections - #989
    • Fixed: 270 degree PIP and Full Screen Streaming rotation does not work properly - #1028

    Changes in v1.3.0-beta

    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963
    • Clarify wording of native smooth scaling manually defined limits - #916
    • Fixed: In fully headless the default headless virtual display should have a proper name - #986
    • Fixed: Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Fixed: Slider percentage does not always exactly match DDC value - #974
    • Fixed: Upon mirror configuration the menu icon is not updated properly - #943
    • Fixed: Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.3.7.dmg(5.16 MB)
  • v1.3.6(Nov 20, 2022)

    App icon

    About this version

    This release contains improvements and bug fixes.

    UPDATE: This version has an issue with auto-start (Big Sur and Monterey, but affects upgrading Ventura users as well), so the version was relegated to pre-release status. Use v1.3.7 instead which has this bug fixed!

    Enhancements

    • Add keyboard shortcut for DDC inputs - #1129
    • Add alternate formats for copyable EDID data - #1156
    • Separate DDC support and EDID and I/O Registry parsing toggle (Apple Silicon) - #1154
    • Support for DDC scale skew (curve) setting - #1153
    • Toggle for automatic brightness adjustment (Apple native) - #1171
    • Minor UI tweak - delegate some less used settings to an expandable block under Settings/keyboards - #1162

    Fixed

    • Startup DDC mute read works in reverse - #1166 opened 2 days ago by waydabber
    • DDC reads do not adhere to min and max DDC value overrides - #1167
    • XDR upscaling is not always not enabled after launching the app the first time - have to open twice. - #1158
    • Combined brightness slider does not reflect properly externally induced Apple display brightness changes - #1170
    Change log of earlier v1.3.x versions

    Changes in v1.3.5

    • DDC Display Input control - #604
    • Retrieve and export EDID data from display (Apple Silicon only) - #1112
    • Show detailed display info under Settings/Displays (Apple Silicon only ) - #1144
    • Ability to customize factory reset and input select DDC control codes - #1136
    • Added option to customize display name and menu icon - #1137
    • Use new API (SMAppService) for automatic login (macOS Ventura only) - #1125
    • Updated Paddle SDK to new v4.4 version - #1139
    • Fixed: The expand icon (wide chevron) at the bottom of menu blocks is light gray and not obvious enough - #1111
    • Fixed: Unfoldable advanced settings font not rendered as small in Settings/App Menu - #1143
    • Fixed: Settings/Displays block look bad in some scenarios when a display is collapsed - #1145
    • Fixed: Accessibility setting menu icon not hidden when menu icons are generally disabled - #1146

    Changes in v1.3.4

    • Option to display percentage as scaling factor - #1076
    • Fixed: Refresh Rate menu item should be hidden when a display is mirror target - #1075
    • Fixed: Some items are missing from the Tools menu - #1079

    Changes in v1.3.3

    • Customizable menubar icon - #722
    • Show both resolution slider and resolution menu - #1042
    • Option to hide disconnected dummy from menu - #1068
    • A more prominent and by default visible way to connect/disconnect dummies - #1067
    • Refactor/rewrite menu generation - #1066
    • Fixed: When a display is collapsed and remains the sole display, without its fully hidden from the menu when header for a single display is disabled - #1072
    • Fixed: When both menu item and header icons are disabled, texts do not line up properly - #1071
    • Fixed: Some menu items have icons even when icons are disabled - #1070
    • Fixed: DDC menu appears with a factory reset option for non-DDC compliant displays - #1069
    • Fixed: The Set Resolution menu is erroneously available for the mirror target display - #1059
    • Removed: option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048

    Changes in v1.3.2-beta

    • Higher luminance with HDR brightness upscaling calibration - #1053
    • Recalibrated percentages for brightness upscaling on Apple XDR displays - #1053
    • Smoother XDR brightness upscaling experience for Apple XDR displays (also avoid overshoot effect) - #1051
    • Add DDC factory reset to DDC menu
    • Option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048
    • Improved native smooth scaling compatibility with some Intel macs - #1041
    • Fixed: App incorrectly sets default DDC contrast (and for v1.3.x R/G/B black level) upon changing brightness after starting the app the first time - #1046
    • Fixed: Apple brightness smooth transition toggle has no effect - #1050
    • Fixed: Sidecar display name appears in random foreign language - #1047

    Changes in v1.3.1-beta

    • Display configuration protection (also: protection for/against VRR) - #995
    • Keyboard shortcut to start/stop PIP window - #1026
    • Add display rotation keyboard shortcut - #1014
    • DDC R/G/B Gain and Black Level adjustments - #1019
    • Option to enable/disable support for specific DDC controls for a display - #1002
    • Custom Video Control Codes or multiple codes for DDC control - #1005
    • Support for on/off value override for the DDC mute command - #1009
    • Support for inverted control values for DDC - #1004
    • Support for different scale than the usual 0-100 for DDC - #1003
    • Options to adjust DDC communication timings - #1008
    • Add option to customize audio device name associated with the display for DDC volume control - #638
    • Change More Options... submenu into an expandable area - #1034, #1033
    • Dismiss button for the blue reboot banner under Settings/Displays - #1011
    • Option to hide Check for Updates form the Tools menu when it is set to be closable - #1037
    • All menu block header should be clickable to show/hide block - #1032
    • Disconnected dummies should be listed under Settings/Displays - #1031
    • Improve the design of Settings expandable subsections - #989
    • Fixed: 270 degree PIP and Full Screen Streaming rotation does not work properly - #1028

    Changes in v1.3.0-beta

    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963
    • Clarify wording of native smooth scaling manually defined limits - #916
    • Fixed: In fully headless the default headless virtual display should have a proper name - #986
    • Fixed: Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Fixed: Slider percentage does not always exactly match DDC value - #974
    • Fixed: Upon mirror configuration the menu icon is not updated properly - #943
    • Fixed: Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.3.6.dmg(5.16 MB)
  • v1.3.5-beta(Nov 14, 2022)

    App icon

    About this version

    This beta release contains new features and fixes some issues found in the previous stable release (see details for more info).

    Enhancements

    • DDC Display Input control - #604
    • Retrieve and export EDID data from display (Apple Silicon only) - #1112
    • Show detailed display info under Settings/Displays (Apple Silicon only ) - #1144
    • Ability to customize factory reset and input select DDC control codes - #1136
    • Added option to customize display name and menu icon - #1137
    • Use new API (SMAppService) for automatic login (macOS Ventura only) - #1125
    • Updated Paddle SDK to new v4.4 version - #1139

    Fixed

    • The expand icon (wide chevron) at the bottom of menu blocks is light gray and not obvious enough - #1111
    • Unfoldable advanced settings font not rendered as small in Settings/App Menu - #1143
    • Settings/Displays block look bad in some scenarios when a display is collapsed - #1145
    • Accessibility setting menu icon not hidden when menu icons are generally disabled - #1146
    Change log of previous v1.3.x versions

    Changes in v1.3.4

    • Option to display percentage as scaling factor - #1076
    • Fixed: Refresh Rate menu item should be hidden when a display is mirror target - #1075
    • Fixed: Some items are missing from the Tools menu - #1079

    Changes in v1.3.3

    • Customizable menubar icon - #722
    • Show both resolution slider and resolution menu - #1042
    • Option to hide disconnected dummy from menu - #1068
    • A more prominent and by default visible way to connect/disconnect dummies - #1067
    • Refactor/rewrite menu generation - #1066
    • Fixed: When a display is collapsed and remains the sole display, without its fully hidden from the menu when header for a single display is disabled - #1072
    • Fixed: When both menu item and header icons are disabled, texts do not line up properly - #1071
    • Fixed: Some menu items have icons even when icons are disabled - #1070
    • Fixed: DDC menu appears with a factory reset option for non-DDC compliant displays - #1069
    • Fixed: The Set Resolution menu is erroneously available for the mirror target display - #1059
    • Removed: option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048

    Changes in v1.3.2-beta

    • Higher luminance with HDR brightness upscaling calibration - #1053
    • Recalibrated percentages for brightness upscaling on Apple XDR displays - #1053
    • Smoother XDR brightness upscaling experience for Apple XDR displays (also avoid overshoot effect) - #1051
    • Add DDC factory reset to DDC menu
    • Option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048
    • Improved native smooth scaling compatibility with some Intel macs - #1041
    • Fixed: App incorrectly sets default DDC contrast (and for v1.3.x R/G/B black level) upon changing brightness after starting the app the first time - #1046
    • Fixed: Apple brightness smooth transition toggle has no effect - #1050
    • Fixed: Sidecar display name appears in random foreign language - #1047

    Changes in v1.3.1-beta

    • Display configuration protection (also: protection for/against VRR) - #995
    • Keyboard shortcut to start/stop PIP window - #1026
    • Add display rotation keyboard shortcut - #1014
    • DDC R/G/B Gain and Black Level adjustments - #1019
    • Option to enable/disable support for specific DDC controls for a display - #1002
    • Custom Video Control Codes or multiple codes for DDC control - #1005
    • Support for on/off value override for the DDC mute command - #1009
    • Support for inverted control values for DDC - #1004
    • Support for different scale than the usual 0-100 for DDC - #1003
    • Options to adjust DDC communication timings - #1008
    • Add option to customize audio device name associated with the display for DDC volume control - #638
    • Change More Options... submenu into an expandable area - #1034, #1033
    • Dismiss button for the blue reboot banner under Settings/Displays - #1011
    • Option to hide Check for Updates form the Tools menu when it is set to be closable - #1037
    • All menu block header should be clickable to show/hide block - #1032
    • Disconnected dummies should be listed under Settings/Displays - #1031
    • Improve the design of Settings expandable subsections - #989
    • Fixed: 270 degree PIP and Full Screen Streaming rotation does not work properly - #1028

    Changes in v1.3.0-beta

    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963
    • Clarify wording of native smooth scaling manually defined limits - #916
    • Fixed: In fully headless the default headless virtual display should have a proper name - #986
    • Fixed: Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Fixed: Slider percentage does not always exactly match DDC value - #974
    • Fixed: Upon mirror configuration the menu icon is not updated properly - #943
    • Fixed: Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.3.5-beta.dmg(5.14 MB)
  • v1.3.4(Oct 18, 2022)

    App icon

    About this version

    This stable release contains improvements found in previous v1.3.x versions and contains fixes for some issues found in the recently released v1.3.3 stable version (see the details for more info).

    The following change log lists all improvements compared to the v1.2.9 version.

    Enhancements

    • Option to display percentage as scaling factor (new in v1.3.4) - #1076
    • Smoother XDR brightness upscaling experience for Apple XDR displays (also avoid overshoot effect) - #1051
    • Recalibrated percentages for brightness upscaling on Apple XDR displays - #1053
    • Higher luminance with HDR brightness upscaling calibration - #1053
    • Improved native smooth scaling compatibility with Intel macs - #1041
    • Display configuration protection (also: protection for/against VRR) - #995
    • DDC R/G/B Gain and Black Level adjustments - #1019
    • Add DDC factory reset to DDC menu
    • Customizable menubar icon - #722
    • Show both resolution slider and resolution menu - #1042
    • Option to hide disconnected dummy from menu - #1068
    • A more prominent and by default visible way to connect/disconnect dummies - #1067
    • Keyboard shortcut to start/stop PIP window - #1026
    • Add display rotation keyboard shortcut - #1014
    • Option to enable/disable support for specific DDC controls for a display - #1002
    • Custom Video Control Codes or multiple codes for DDC control - #1005
    • Support for on/off value override for the DDC mute command - #1009
    • Support for inverted control values for DDC - #1004
    • Support for different scale than the usual 0-100 for DDC - #1003
    • Options to adjust DDC communication timings - #1008
    • Add option to customize audio device name associated with the display for DDC volume control - #638
    • Change More Options... submenu into an expandable area - #1034, #1033
    • Dismiss button for the blue reboot banner under Settings/Displays - #1011
    • Option to hide Check for Updates form the Tools menu when it is set to be closable - #1037
    • All menu block header should be clickable to show/hide block - #1032
    • Disconnected dummies should be listed under Settings/Displays - #1031
    • Improve the design of Settings expandable subsections - #989
    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963

    Fixed

    • Apple brightness smooth transition toggle has no effect - #1050
    • Sidecar display name appears in random foreign language - #1047
    • When a display is collapsed and remains the sole display, without its fully hidden from the menu when header for a single display is disabled - #1072
    • When both menu item and header icons are disabled, texts do not line up properly - #1071
    • 270 degree PIP and Full Screen Streaming rotation does not work properly - #1028
    • In fully headless the default headless virtual display should have a proper name - #986
    • Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Slider percentage does not always exactly match DDC value - #974
    • Upon mirror configuration the menu icon is not updated properly - #943
    • Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917
    • Various internal efficiency improvements, refactoring, wording improvements etc.
    Change log of v1.3.x versions

    Changes in v1.3.4

    • Option to display percentage as scaling factor - #1076
    • Fixed: Refresh Rate menu item should be hidden when a display is mirror target - #1075
    • Fixed: Some items are missing from the Tools menu - #1079

    Changes in v1.3.3

    • Customizable menubar icon - #722
    • Show both resolution slider and resolution menu - #1042
    • Option to hide disconnected dummy from menu - #1068
    • A more prominent and by default visible way to connect/disconnect dummies - #1067
    • Refactor/rewrite menu generation - #1066
    • Fixed: When a display is collapsed and remains the sole display, without its fully hidden from the menu when header for a single display is disabled - #1072
    • Fixed: When both menu item and header icons are disabled, texts do not line up properly - #1071
    • Fixed: Some menu items have icons even when icons are disabled - #1070
    • Fixed: DDC menu appears with a factory reset option for non-DDC compliant displays - #1069
    • Fixed: The Set Resolution menu is erroneously available for the mirror target display - #1059
    • Removed: option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048

    Changes in v1.3.2-beta

    • Higher luminance with HDR brightness upscaling calibration - #1053
    • Recalibrated percentages for brightness upscaling on Apple XDR displays - #1053
    • Smoother XDR brightness upscaling experience for Apple XDR displays (also avoid overshoot effect) - #1051
    • Add DDC factory reset to DDC menu
    • Option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048
    • Improved native smooth scaling compatibility with some Intel macs - #1041
    • Fixed: App incorrectly sets default DDC contrast (and for v1.3.x R/G/B black level) upon changing brightness after starting the app the first time - #1046
    • Fixed: Apple brightness smooth transition toggle has no effect - #1050
    • Fixed: Sidecar display name appears in random foreign language - #1047

    Changes in v1.3.1-beta

    • Display configuration protection (also: protection for/against VRR) - #995
    • Keyboard shortcut to start/stop PIP window - #1026
    • Add display rotation keyboard shortcut - #1014
    • DDC R/G/B Gain and Black Level adjustments - #1019
    • Option to enable/disable support for specific DDC controls for a display - #1002
    • Custom Video Control Codes or multiple codes for DDC control - #1005
    • Support for on/off value override for the DDC mute command - #1009
    • Support for inverted control values for DDC - #1004
    • Support for different scale than the usual 0-100 for DDC - #1003
    • Options to adjust DDC communication timings - #1008
    • Add option to customize audio device name associated with the display for DDC volume control - #638
    • Change More Options... submenu into an expandable area - #1034, #1033
    • Dismiss button for the blue reboot banner under Settings/Displays - #1011
    • Option to hide Check for Updates form the Tools menu when it is set to be closable - #1037
    • All menu block header should be clickable to show/hide block - #1032
    • Disconnected dummies should be listed under Settings/Displays - #1031
    • Improve the design of Settings expandable subsections - #989
    • Fixed: 270 degree PIP and Full Screen Streaming rotation does not work properly - #1028

    Changes in v1.3.0-beta

    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963
    • Clarify wording of native smooth scaling manually defined limits - #916
    • Fixed: In fully headless the default headless virtual display should have a proper name - #986
    • Fixed: Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Fixed: Slider percentage does not always exactly match DDC value - #974
    • Fixed: Upon mirror configuration the menu icon is not updated properly - #943
    • Fixed: Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.3.4.dmg(5.16 MB)
  • v1.3.3(Oct 16, 2022)

    App icon

    About this version

    This stable release contains improvements found in previous pre-release versions along with some additional improvements and bug fixes.

    Enhancements

    • Customizable menubar icon - #722
    • Show both resolution slider and resolution menu - #1042
    • Option to hide disconnected dummy from menu - #1068
    • A more prominent and by default visible way to connect/disconnect dummies - #1067
    • Refactor/rewrite menu generation - #1066

    Fixed

    • When a display is collapsed and remains the sole display, without its fully hidden from the menu when header for a single display is disabled - #1072
    • When both menu item and header icons are disabled, texts do not line up properly - #1071
    • Some menu items have icons even when icons are disabled - #1070
    • DDC menu appears with a factory reset option for non-DDC compliant displays - #1069
    • The Set Resolution menu is erroneously available for the mirror target display - #1059

    Removed

    • Option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048
    Change log of previous v1.3.x versions

    Changes in v1.3.2-beta

    • Higher luminance with HDR brightness upscaling calibration - #1053
    • Recalibrated percentages for brightness upscaling on Apple XDR displays - #1053
    • Smoother XDR brightness upscaling experience for Apple XDR displays (also avoid overshoot effect) - #1051
    • Add DDC factory reset to DDC menu
    • Option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048
    • Improved native smooth scaling compatibility with some Intel macs - #1041
    • Fixed: App incorrectly sets default DDC contrast (and for v1.3.x R/G/B black level) upon changing brightness after starting the app the first time - #1046
    • Fixed: Apple brightness smooth transition toggle has no effect - #1050
    • Fixed: Sidecar display name appears in random foreign language - #1047

    Changes in v1.3.1-beta

    • Display configuration protection (also: protection for/against VRR) - #995
    • Keyboard shortcut to start/stop PIP window - #1026
    • Add display rotation keyboard shortcut - #1014
    • DDC R/G/B Gain and Black Level adjustments - #1019
    • Option to enable/disable support for specific DDC controls for a display - #1002
    • Custom Video Control Codes or multiple codes for DDC control - #1005
    • Support for on/off value override for the DDC mute command - #1009
    • Support for inverted control values for DDC - #1004
    • Support for different scale than the usual 0-100 for DDC - #1003
    • Options to adjust DDC communication timings - #1008
    • Add option to customize audio device name associated with the display for DDC volume control - #638
    • Change More Options... submenu into an expandable area - #1034, #1033
    • Dismiss button for the blue reboot banner under Settings/Displays - #1011
    • Option to hide Check for Updates form the Tools menu when it is set to be closable - #1037
    • All menu block header should be clickable to show/hide block - #1032
    • Disconnected dummies should be listed under Settings/Displays - #1031
    • Improve the design of Settings expandable subsections - #989
    • Fixed: 270 degree PIP and Full Screen Streaming rotation does not work properly - #1028

    Changes in v1.3.0-beta

    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963
    • Clarify wording of native smooth scaling manually defined limits - #916
    • Fixed: In fully headless the default headless virtual display should have a proper name - #986
    • Fixed: Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Fixed: Slider percentage does not always exactly match DDC value - #974
    • Fixed: Upon mirror configuration the menu icon is not updated properly - #943
    • Fixed: Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.3.3.dmg(5.16 MB)
  • v1.3.2-beta(Oct 7, 2022)

    App icon

    About this version

    This beta contains some nice improvements and some important fixes (more features are planned - check out the enhancement list). If you encounter any issues, please report! In case of show-stopper bugs, it is safe to downgrade to the previous betas or the v1.2.9 stable version after using this version.

    New

    • Higher luminance with HDR brightness upscaling calibration - #1053
    • Recalibrated percentages for brightness upscaling on Apple XDR displays - #1053
    • Smoother XDR brightness upscaling experience for Apple XDR displays (also avoid overshoot effect) - #1051
    • Add DDC factory reset to DDC menu
    • Option to have a tri-state collapsible header in menu instead of the more options menu expander - #1048
    • Improved native smooth scaling compatibility with some Intel macs - #1041

    Fixed

    • App incorrectly sets default DDC contrast (and for v1.3.x R/G/B black level) upon changing brightness after starting the app the first time - #1046
    • Apple brightness smooth transition toggle has no effect - #1050
    • Sidecar display name appears in random foreign language - #1047

    The details of the associated issues/enhancements is available here.

    Change log of previous v1.3.x versions

    Changes in v1.3.1-beta

    • Display configuration protection (also: protection for/against VRR) - #995
    • Keyboard shortcut to start/stop PIP window - #1026
    • Add display rotation keyboard shortcut - #1014
    • DDC R/G/B Gain and Black Level adjustments - #1019
    • Option to enable/disable support for specific DDC controls for a display - #1002
    • Custom Video Control Codes or multiple codes for DDC control - #1005
    • Support for on/off value override for the DDC mute command - #1009
    • Support for inverted control values for DDC - #1004
    • Support for different scale than the usual 0-100 for DDC - #1003
    • Options to adjust DDC communication timings - #1008
    • Add option to customize audio device name associated with the display for DDC volume control - #638
    • Change More Options... submenu into an expandable area - #1034, #1033
    • Dismiss button for the blue reboot banner under Settings/Displays - #1011
    • Option to hide Check for Updates form the Tools menu when it is set to be closable - #1037
    • All menu block header should be clickable to show/hide block - #1032
    • Disconnected dummies should be listed under Settings/Displays - #1031
    • Improve the design of Settings expandable subsections - #989
    • Fixed: 270 degree PIP and Full Screen Streaming rotation does not work properly - #1028

    Changes in v1.3.0-beta

    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963
    • Clarify wording of native smooth scaling manually defined limits - #916
    • Fixed: In fully headless the default headless virtual display should have a proper name - #986
    • Fixed: Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Fixed: Slider percentage does not always exactly match DDC value - #974
    • Fixed: Upon mirror configuration the menu icon is not updated properly - #943
    • Fixed: Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.3.2-beta.dmg(5.15 MB)
  • v1.3.1-beta(Oct 2, 2022)

    App icon

    About this version

    This is the second v1.3.x version of the app. Released as beta since it is still a work in progress (more features are planned - check out the enhancement list). If you encounter any issues, especially regarding DDC usage on Intel, please report! In case of show-stopper bugs, it is safe to downgrade to the previous beta or the v1.2.9 stable version after using this version.

    This release contains new features, various enhancements, tweaks and fixes.

    New

    • Display configuration protection (also: protection for/against VRR) - #995
    • Keyboard shortcut to start/stop PIP window - #1026
    • Add display rotation keyboard shortcut - #1014
    • DDC R/G/B Gain and Black Level adjustments - #1019
    • Option to enable/disable support for specific DDC controls for a display - #1002
    • Custom Video Control Codes or multiple codes for DDC control - #1005
    • Support for on/off value override for the DDC mute command - #1009
    • Support for inverted control values for DDC - #1004
    • Support for different scale than the usual 0-100 for DDC - #1003
    • Options to adjust DDC communication timings - #1008
    • Add option to customize audio device name associated with the display for DDC volume control - #638
    • Change More Options... submenu into an expandable area - #1034, #1033
    • Dismiss button for the blue reboot banner under Settings/Displays - #1011
    • Option to hide Check for Updates form the Tools menu when it is set to be closable - #1037
    • All menu block header should be clickable to show/hide block - #1032
    • Disconnected dummies should be listed under Settings/Displays - #1031
    • Improve the design of Settings expandable subsections - #989

    Fixed

    • 270 degree PIP and Full Screen Streaming rotation does not work properly - #1028

    The details of the associated issues/enhancements is available here.

    Change log of previous v1.3.x versions

    Changes in v1.3.0-beta

    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963
    • Clarify wording of native smooth scaling manually defined limits - #916
    • Fixed: In fully headless the default headless virtual display should have a proper name - #986
    • Fixed: Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Fixed: Slider percentage does not always exactly match DDC value - #974
    • Fixed: Upon mirror configuration the menu icon is not updated properly - #943
    • Fixed: Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.3.1-beta.dmg(5.13 MB)
  • v1.3.0-beta(Sep 11, 2022)

    App icon

    About this version

    This is the first v1.3.x version of the app. Released as beta since it is still a work in progress (more features are planned - check out the enhancement list), but it should be a fairly stable so it can (hopefully) be used on a daily basis.

    This release contains new features, various enhancements, tweaks and fixes.

    New

    • Add option to circumvent the lack of macOS support for the HiDPI variant for native pixel resolution - #965
    • Support reading DDC values upon startup - #633
    • Make restoring DDC values optional - #983
    • Add option to prohibit keyboard control for a display - #967
    • Add hardware DDC contrast control with keyboard shortcuts - #635
    • Add option to hide volume OSD for a display - #966
    • Add option to adjust/disable control smoothing - #634
    • Improve mirroring submenu usability - #927
    • Add option to hide a display from the app menu - #984
    • Collapsible headers for displays under Settings/Displays - #981
    • Increase the size of Settings a bit - #964
    • Put the accessibility permissions warning triangle to a more appropriate location - #963
    • Clarify wording of native smooth scaling manually defined limits - #916

    Fixed

    • In fully headless the default headless virtual display should have a proper name - #986
    • Restoring saved DDC values on startup on Apple Silicon macs - #982
    • Slider percentage does not always exactly match DDC value - #974
    • Upon mirror configuration the menu icon is not updated properly - #943
    • Slider right side text wiggle issue when only sliders are present in the Menu and Tools block is closed - #917

    The detailed list of the associated issues/enhancements is available here.

    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.3.0-beta.dmg(5.09 MB)
  • v1.2.9(Aug 18, 2022)

    App icon

    About this version

    This release contains various minor enhancements, tweaks to existing functionality and fixes.

    New

    • Added PIP window auto (re)connect option - option to start PIP window when connecting to a display or dummy - #573
    • Added option to toggle PIP window shadow (works when window titlebar is hidden and free scaling is enabled) - #870
    • App now saves PIP window location - #869
    • Added option to customize native smooth scaling min. and max. resolution - #866
    • Added warning about smooth scaling HiDPI not available on pre-12.4 macOS versions to reduce confusion - #761
    • Added option treat a display detected Apple-made as third party/generic - #810
    • Added toggle to allow invalid resolutions and allow 8K+ native scaling options - dependent on macOS support - #834
    • Added option to hide the display header in menu when only one display is present (and there are no dummies)- #886
    • Added option to close the Tools menu into the bottom icon row (instead of collapsing it) - #887
    • Added option to toggle hiding PIP menu item with single display (by default it is hidden now) - #899
    • Menu items wiggle slightly vertically depending on visible content due to differing icon sizes - #907

    Fixed

    • Color adjustments, XDR upscaling, dimming might not work upon wake in certain situations - #863
    • Associated dummy still auto-connects in safe mode (SHIFT is pressed during startup) - #856
    • XDR upscaling - slider is rather ineffective beyond combined brightness of 125% on the MBP - #861
    • Apply Display System Configuration button does not take into account the last field update - #891
    • App locked during credentials prompt when clicking Settings/Displays/Apply... - #892
    • Menu items wiggle slightly vertically depending on visible content due to differing icon sizes - #907
    • Typo in settings - #830

    The detailed list of the associated issues/enhancements is available here.


    Click here for a detailed changelog of previous v1.2.x versions

    Changes in v1.2.8

    • Enable Night Shift on Televisions - ability to configure your TV as a computer monitor to let Night Shift and True Tone to take effect. Useful for TV as monitor setups. - #756
    • Added option to force-enable color adjustments on non-natively connected displays - works with DisplayLink displays using the new v1.7.x+ drivers with color-temperature alteration support enabled. - #750
    • Added True Tone and Dark Mode toggles under Tools/System Colors - #748
    • In-app external display HDR switch toggle can now also disable True Tone (alongside Night Shift) during a HDR session - #748
    • Added a notification to Tools/System Colors when Night Shift and/or True Tone was disabled by the in-app HDR switch - #748
    • Ability to flip image horizontally (and vertically) for Picture in Picture and Full Screen Streaming - this is especially useful for teleprompter devices - #757
    • Fixed: 'Manually add custom resolutions' does not work properly (only one resolution added instead of multiple entries) - #771
    • Fixed: Restore software brightness/dimming levels, color alterations, external display HDR brightness upscaling levels after resolution switch, app restart or sleep. - #802
    • Fixed: Volume OSD not showing on the mirror source screen when the volume controlled display is a mirror target - #732
    • Fixed: Custom system configuration for displays with 0 as vendor or model ID not stored properly - #740
    • Fixed: Various other stability improvements.

    Changes in v1.2.7

    • Fixed: Third-party external display HDR upscaling does not get activated - #715
    • Fixed: Some settings are not enabled until an other setting is changed on that specific pref pane - #716
    • Fixed: Brightness OSD is not visible on dummy screen when it is being mirrored to a real screen (regression) - #655
    • Fixed: If native media keys used during display configuration, keys might get stuck afterwards - #725

    Changes in v1.2.6

    • Less intrusive alternative for the permissions problem alert dialog - #699
    • Emphasize the display header under Displays - #704
    • Display reconfiguarion app menu icon - #703
    • Fixed: Newly connected display with smooth scaling enabled is not detected properly - 694
    • Fixed: Ambient light sensor induced XDR macOS battery drain issue - #702

    Changes in v1.2.5c-beta

    • Fixed: Some text in settings is cut off - #683
    • Fixed: Display configuration is editable for DisplayLink connected displays (which don't support this feature) - #681
    • Fixed: Keyboard brightness control does not work when hardware control is disabled in the latest beta - #679
    • Fixed: With combined brightness, when the brightness is decresed to zero externally for Apple displays, external controls can't recover the brightness - #687
    • Fixed: The resolution list in simple mode should show only resolutions for the current refresh rate - #686
    • Fixed: (Suggestion) Reverse resolution list in submenu to show high resolutions first - #684
    • Fixed: Resolution slider always falls short of fully reaching the end even at 100% - #685
    • Fixed: Resolution slider changes to Low resolution when the max value was set once - #682

    Changes in v1.2.5b-beta

    • Added option Reset color table on neutral settings + explanation - #644
    • Added cool option to show hw/sw subsliders when combined brightness is enabled
    • Fixed: menu blocks cannot be collapsed and some other display or dummy related settings cannot be changed - #666
    • Fixed: resolution slider is missing issues - #665
    • Fixed: corrupt system configuration when the display is in a rotated during the procedure - #665
    • Fixed: brightness OSD is not visible on dummy screen when it is being mirrored to a real screen - #655

    Changes in v1.2.5a-beta

    • App rebranding (in progress) - #641
    • Added feature to manage display system configuration - #645
    • Added feature to allow smooth resolution slider for displays - requires Pro - #645
    • Added feature to override various display data (display name, native resolution, default resolution) - #645
    • Added feature to add custom scaled resolutions to native displays - #645
    • Add option to have only resolutions in the resolution slider that matches/approximates native aspect ratio - #658
    • Added option to show resolution slider as percentage for smoothly-scaled displays - #660
    • Added support for M2 Macbook Air - #656
    • Added support for macOS 13 Ventura - #664
    • Added a way to show some technical info about the displays for troubleshooting - #650
    • Fixed: v1.2.4 and v1.1.24 regression in terms of handing display UUIDs - #662

    Changes in v1.2.4-beta

    • Added option to show slider labels - #630
    • Added an option under Preferences/General to enable/disable all brightness related display control functionality - #628
    • Added option to disengage from F14/F15 keys - #629
    • Create a Displays tab for various display related settings - #603
    • Preferences tab should be reorganized to look consistent (scrolling type) - #621 opened 5 days ago by waydabber
    • Startup in safe mode should not restore previous brightness and color adjustment settings - #620
    • A proper prompt to gain Accessibility Privilege for media key control upon startup - #613
    • Streaming status should be shown in app menu just like mirroring - #619
    • Update combined brightness slider/keyboard control state for Apple screens when brightness is changed outside of the app - #602
    • Fixed: "Make fine scale default" for brightness control is at a wrong place in Preferences - #626
    • Fixed: XDR upscale should not be activated on EDR capable non-XDR Apple displays - #622
    • Fixed: Brightness keyboard shortcuts should not affect dummy screens directly but only non-dummy mirror or stream target displays - #616
    • Fixed: DDC Volume slider does not zero on mute + app forgets mute state after restart - #605
    • Fixed: Combined brightness sub-hw-zero-dimming and XDR upscale switching points should always correspond to a full OSD chiclet - #618
    • Fixed: Full screen stream can be resized by clicking on the top/bottom/left/right border of the stream target screen - #617
    • Fixed: Oversaturation when changing between combined and not combined color controls for upscaled Apple XDR displays - #614
    • Fixed: Night Shift should be turned back off when it was turned off by activating HDR mode from app-menu - #606
    • Fixed: Custom keyboard shortcuts don't work when app Menu is open - #596
    • Fixed: Resolution menu/slider is a wreck for some real displays in Monterey 12.4 - #601 opened 11 days ago by waydabber
    • Fixed: Resolution issue with app-created dummies optimized for the new 14" and 16" macbook pro screens and some other displays - #581

    Changes in v1.2.3-beta

    • Added various options to manage brightness control methods - #599
    • Combined keyboard control of hardware (Apple, DDC) brightness, software dimming and XDR/HDR upscale - #589
    • Combined hardware brightness, software dimming, XDR/HDR upscale slider - #588
    • Additional options to define keyboard control target screen - #587
    • Advanced options for native keyboard control for brightness and audio - #586
    • Implement Apple native key support for brightness and volume - #583
    • Added fine scale brightness/volume control for custom keyboard shortcuts - #585
    • Brightness and color control smooth transitions - #547
    • Implement DDC Mute control for external displays - #582
    • Implement DDC Volume control for external displays - #580
    • Implement DDC brightness control for external displays - #515
    • Implement Apple brightness control - #516
    • Make the contents of general Tools menu block configurable - #571
    • Option to match menu icon with main display icon - #593
    • Fixed: Display name suffixes might get messed up with multiple displays of same name - #594
    • Fixed: Slider graphics and text colors are somewhat off with some backgrounds - #572

    Changes in v1.2.2-beta

    • Added color temperature adjustment slider (especially useful for TVs that are incompatible with Night Shift) - #555
    • Added contrast control - #566
    • Add gain option to squeeze out some more nits or improve brightness when watching a dark movie - #561
    • Added R/G/B tint (gamma) control for... I don't know - why not? - #560
    • HDR/XDR brightness upscale setting is now remembered permanently, don't need to toggle it all the time - #557
    • Added Night Shift controls to the menu (so you don't have to look for that deeply hidden nightshift slider anymore in System Preferences) - #548
    • Added keyboard shortcut options for Night Shift and color temperature - #556
    • Added option to auto-disable Night Shift when reference HDR mode is enabled on an external display in the app menu - #554
    • Added option to reset all color adjustments - #564
    • Restore last applied brightness/color adjustments upon reconnect/restart - #563
    • Redesign the bottom part of the menu - #567
    • Fixed: App keeps forgetting I have a license - update Paddle SDK to 4.3.0 - #558
    • Fixed: After resetting the app in Preferences no items appear under the display in the menu - #565
    • Fixed: Dimming overlay (Sidecar, Dummy, AirPlay, DisplayLink) not resized properly on resolution change - #551
    • Fixed: Enabling HDR/XDR Upscale makes brightness slider disappear - #568
    • Fixed: Max dummy resolution gets limited when switching to portrait mode - #559

    Changes in v1.2.1-beta

    • Updated menu appearance, persistent collapsible display/dummy menu blocks - #546
    • Gamma correction slider (you can enable it under Preferences/Appearance) - #525
    • Overlay dimming for virtual displays, Sidecar/AirPlay and DisplayLink - #513
    • System OSD shown for keyboard shortcut induced brightness changes
    • Custom keyboard shortcut for brightness, gamma, HDR upscale and adjustments reset - #521
      Note: Apple keyboard native keys support not added yet!
    • Updated Appearance and Keyboard shortcuts tab - #536
    • Configurable menu location for display/dummy information, toggles and tools and new sliders - #531, #535
    • Fixed: Resolution slider not updated in some circumstances - #534
    • Fixed: Non-whole-numbers refresh rates not shown properly in menu - #541
    • Fixed: Resolution sliders go missing - #532
    • Fixed: Trial counter does not update properly - #533
    • Integrated DDC control framework for Apple Silicon and Intel - #514
      Note: DDC brightness and volume control not yet accessible!

    Changes in v1.2.0-beta (compared to v1.1.12)

    • HDR/XDR upscaling (extra brightness) - #499
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.2.9.dmg(5.06 MB)
  • v1.2.8(Jul 26, 2022)

    App icon

    About this version

    This release is mainly about bug fixes and stability improvements. Some useful new features were are added as well.

    New

    • Enable Night Shift on Televisions - ability to configure your TV as a computer monitor to let Night Shift and True Tone to take effect. Useful for TV as monitor setups. - #756
    • Added option to force-enable color adjustments on non-natively connected displays - works with DisplayLink displays using the new v1.7.x+ drivers with color-temperature alteration support enabled. - #750
    • Added True Tone and Dark Mode toggles under Tools/System Colors - #748
    • In-app external display HDR switch toggle can now also disable True Tone (alongside Night Shift) during a HDR session - #748
    • Added a notification to Tools/System Colors when Night Shift and/or True Tone was disabled by the in-app HDR switch - #748
    • Ability to flip image horizontally (and vertically) for Picture in Picture and Full Screen Streaming - this is especially useful for teleprompter devices - #757

    Fixed

    • 'Manually add custom resolutions' does not work properly (only one resolution added instead of multiple entries) - #771
    • Restore software brightness/dimming levels, color alterations, external display HDR brightness upscaling levels after resolution switch, app restart or sleep. - #802
    • Volume OSD not showing on the mirror source screen when the volume controlled display is a mirror target - #732
    • Custom system configuration for displays with 0 as vendor or model ID not stored properly - #740
    • Various other stability improvements.

    Click here for a detailed changelog of previous v1.2.x versions

    Changes in v1.2.7

    • Fixed: Third-party external display HDR upscaling does not get activated - #715
    • Fixed: Some settings are not enabled until an other setting is changed on that specific pref pane - #716
    • Fixed: Brightness OSD is not visible on dummy screen when it is being mirrored to a real screen (regression) - #655
    • Fixed: If native media keys used during display configuration, keys might get stuck afterwards - #725

    Changes in v1.2.6

    • Less intrusive alternative for the permissions problem alert dialog - #699
    • Emphasize the display header under Displays - #704
    • Display reconfiguarion app menu icon - #703
    • Fixed: Newly connected display with smooth scaling enabled is not detected properly - 694
    • Fixed: Ambient light sensor induced XDR macOS battery drain issue - #702

    Changes in v1.2.5c-beta

    • Fixed: Some text in settings is cut off - #683
    • Fixed: Display configuration is editable for DisplayLink connected displays (which don't support this feature) - #681
    • Fixed: Keyboard brightness control does not work when hardware control is disabled in the latest beta - #679
    • Fixed: With combined brightness, when the brightness is decresed to zero externally for Apple displays, external controls can't recover the brightness - #687
    • Fixed: The resolution list in simple mode should show only resolutions for the current refresh rate - #686
    • Fixed: (Suggestion) Reverse resolution list in submenu to show high resolutions first - #684
    • Fixed: Resolution slider always falls short of fully reaching the end even at 100% - #685
    • Fixed: Resolution slider changes to Low resolution when the max value was set once - #682

    Changes in v1.2.5b-beta

    • Added option Reset color table on neutral settings + explanation - #644
    • Added cool option to show hw/sw subsliders when combined brightness is enabled
    • Fixed: menu blocks cannot be collapsed and some other display or dummy related settings cannot be changed - #666
    • Fixed: resolution slider is missing issues - #665
    • Fixed: corrupt system configuration when the display is in a rotated during the procedure - #665
    • Fixed: brightness OSD is not visible on dummy screen when it is being mirrored to a real screen - #655

    Changes in v1.2.5a-beta

    • App rebranding (in progress) - #641
    • Added feature to manage display system configuration - #645
    • Added feature to allow smooth resolution slider for displays - requires Pro - #645
    • Added feature to override various display data (display name, native resolution, default resolution) - #645
    • Added feature to add custom scaled resolutions to native displays - #645
    • Add option to have only resolutions in the resolution slider that matches/approximates native aspect ratio - #658
    • Added option to show resolution slider as percentage for smoothly-scaled displays - #660
    • Added support for M2 Macbook Air - #656
    • Added support for macOS 13 Ventura - #664
    • Added a way to show some technical info about the displays for troubleshooting - #650
    • Fixed: v1.2.4 and v1.1.24 regression in terms of handing display UUIDs - #662

    Changes in v1.2.4-beta

    • Added option to show slider labels - #630
    • Added an option under Preferences/General to enable/disable all brightness related display control functionality - #628
    • Added option to disengage from F14/F15 keys - #629
    • Create a Displays tab for various display related settings - #603
    • Preferences tab should be reorganized to look consistent (scrolling type) - #621 opened 5 days ago by waydabber
    • Startup in safe mode should not restore previous brightness and color adjustment settings - #620
    • A proper prompt to gain Accessibility Privilege for media key control upon startup - #613
    • Streaming status should be shown in app menu just like mirroring - #619
    • Update combined brightness slider/keyboard control state for Apple screens when brightness is changed outside of the app - #602
    • Fixed: "Make fine scale default" for brightness control is at a wrong place in Preferences - #626
    • Fixed: XDR upscale should not be activated on EDR capable non-XDR Apple displays - #622
    • Fixed: Brightness keyboard shortcuts should not affect dummy screens directly but only non-dummy mirror or stream target displays - #616
    • Fixed: DDC Volume slider does not zero on mute + app forgets mute state after restart - #605
    • Fixed: Combined brightness sub-hw-zero-dimming and XDR upscale switching points should always correspond to a full OSD chiclet - #618
    • Fixed: Full screen stream can be resized by clicking on the top/bottom/left/right border of the stream target screen - #617
    • Fixed: Oversaturation when changing between combined and not combined color controls for upscaled Apple XDR displays - #614
    • Fixed: Night Shift should be turned back off when it was turned off by activating HDR mode from app-menu - #606
    • Fixed: Custom keyboard shortcuts don't work when app Menu is open - #596
    • Fixed: Resolution menu/slider is a wreck for some real displays in Monterey 12.4 - #601 opened 11 days ago by waydabber
    • Fixed: Resolution issue with app-created dummies optimized for the new 14" and 16" macbook pro screens and some other displays - #581

    Changes in v1.2.3-beta

    • Added various options to manage brightness control methods - #599
    • Combined keyboard control of hardware (Apple, DDC) brightness, software dimming and XDR/HDR upscale - #589
    • Combined hardware brightness, software dimming, XDR/HDR upscale slider - #588
    • Additional options to define keyboard control target screen - #587
    • Advanced options for native keyboard control for brightness and audio - #586
    • Implement Apple native key support for brightness and volume - #583
    • Added fine scale brightness/volume control for custom keyboard shortcuts - #585
    • Brightness and color control smooth transitions - #547
    • Implement DDC Mute control for external displays - #582
    • Implement DDC Volume control for external displays - #580
    • Implement DDC brightness control for external displays - #515
    • Implement Apple brightness control - #516
    • Make the contents of general Tools menu block configurable - #571
    • Option to match menu icon with main display icon - #593
    • Fixed: Display name suffixes might get messed up with multiple displays of same name - #594
    • Fixed: Slider graphics and text colors are somewhat off with some backgrounds - #572

    Changes in v1.2.2-beta

    • Added color temperature adjustment slider (especially useful for TVs that are incompatible with Night Shift) - #555
    • Added contrast control - #566
    • Add gain option to squeeze out some more nits or improve brightness when watching a dark movie - #561
    • Added R/G/B tint (gamma) control for... I don't know - why not? - #560
    • HDR/XDR brightness upscale setting is now remembered permanently, don't need to toggle it all the time - #557
    • Added Night Shift controls to the menu (so you don't have to look for that deeply hidden nightshift slider anymore in System Preferences) - #548
    • Added keyboard shortcut options for Night Shift and color temperature - #556
    • Added option to auto-disable Night Shift when reference HDR mode is enabled on an external display in the app menu - #554
    • Added option to reset all color adjustments - #564
    • Restore last applied brightness/color adjustments upon reconnect/restart - #563
    • Redesign the bottom part of the menu - #567
    • Fixed: App keeps forgetting I have a license - update Paddle SDK to 4.3.0 - #558
    • Fixed: After resetting the app in Preferences no items appear under the display in the menu - #565
    • Fixed: Dimming overlay (Sidecar, Dummy, AirPlay, DisplayLink) not resized properly on resolution change - #551
    • Fixed: Enabling HDR/XDR Upscale makes brightness slider disappear - #568
    • Fixed: Max dummy resolution gets limited when switching to portrait mode - #559

    Changes in v1.2.1-beta

    • Updated menu appearance, persistent collapsible display/dummy menu blocks - #546
    • Gamma correction slider (you can enable it under Preferences/Appearance) - #525
    • Overlay dimming for virtual displays, Sidecar/AirPlay and DisplayLink - #513
    • System OSD shown for keyboard shortcut induced brightness changes
    • Custom keyboard shortcut for brightness, gamma, HDR upscale and adjustments reset - #521
      Note: Apple keyboard native keys support not added yet!
    • Updated Appearance and Keyboard shortcuts tab - #536
    • Configurable menu location for display/dummy information, toggles and tools and new sliders - #531, #535
    • Fixed: Resolution slider not updated in some circumstances - #534
    • Fixed: Non-whole-numbers refresh rates not shown properly in menu - #541
    • Fixed: Resolution sliders go missing - #532
    • Fixed: Trial counter does not update properly - #533
    • Integrated DDC control framework for Apple Silicon and Intel - #514
      Note: DDC brightness and volume control not yet accessible!

    Changes in v1.2.0-beta (compared to v1.1.12)

    • HDR/XDR upscaling (extra brightness) - #499
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.2.8.dmg(5.03 MB)
  • v1.2.7(Jun 25, 2022)

    App icon

    About this version

    This service release contains fixes for some of the issues found in the previous v1.2.6 version.

    • Fixed: Third party external display HDR upscaling does not activate - #715
    • Fixed: Some settings are not enabled until an other setting is changed on that specific pref pane - #716
    • Fixed: Brightness OSD is not visible on dummy screen when it is being mirrored to a real screen (regression) - #655
    • Fixed: If native media keys used during display configuration, keys might get stuck afterwards - #725

    As a refresher, the previous version introduced some major changes:

    • BetterDummy is now BetterDisplay
    • Native smooth resolution scaling - have a flexible scaled resolution slider on Apple Silicon even without a dummy!
    • XDR/HDR upscaling - unlock the full brightness of your Apple XDR or third party HDR displays!
    • Custom resolutions - create any number of native custom HiDPI resolutions on Apple Silicon! Redefine the native and default resolutions!
    • Brightness control - control the brightness of your internal and external displays - all methods (native, DDC, colortable, overlay) supported. Also change color temperature, gamma, gain, contrast, color gain. Supports DDC audio volume control.
    Click here for a detailed changelog of v1.2.x versions

    Changes in v1.2.7

    • Fixed: Third-party external display HDR upscaling does not get activated - #715
    • Fixed: Some settings are not enabled until an other setting is changed on that specific pref pane - #716
    • Fixed: Brightness OSD is not visible on dummy screen when it is being mirrored to a real screen (regression) - #655
    • Fixed: If native media keys used during display configuration, keys might get stuck afterwards - #725

    Changes in v1.2.6

    • Less intrusive alternative for the permissions problem alert dialog - #699
    • Emphasize the display header under Displays - #704
    • Display reconfiguarion app menu icon - #703
    • Fixed: Newly connected display with smooth scaling enabled is not detected properly - 694
    • Fixed: Ambient light sensor induced XDR macOS battery drain issue - #702

    Changes in v1.2.5c-beta

    • Fixed: Some text in settings is cut off - #683
    • Fixed: Display configuration is editable for DisplayLink connected displays (which don't support this feature) - #681
    • Fixed: Keyboard brightness control does not work when hardware control is disabled in the latest beta - #679
    • Fixed: With combined brightness, when the brightness is decresed to zero externally for Apple displays, external controls can't recover the brightness - #687
    • Fixed: The resolution list in simple mode should show only resolutions for the current refresh rate - #686
    • Fixed: (Suggestion) Reverse resolution list in submenu to show high resolutions first - #684
    • Fixed: Resolution slider always falls short of fully reaching the end even at 100% - #685
    • Fixed: Resolution slider changes to Low resolution when the max value was set once - #682

    Changes in v1.2.5b-beta

    • Added option Reset color table on neutral settings + explanation - #644
    • Added cool option to show hw/sw subsliders when combined brightness is enabled
    • Fixed: menu blocks cannot be collapsed and some other display or dummy related settings cannot be changed - #666
    • Fixed: resolution slider is missing issues - #665
    • Fixed: corrupt system configuration when the display is in a rotated during the procedure - #665
    • Fixed: brightness OSD is not visible on dummy screen when it is being mirrored to a real screen - #655

    Changes in v1.2.5a-beta

    • App rebranding (in progress) - #641
    • Added feature to manage display system configuration - #645
    • Added feature to allow smooth resolution slider for displays - requires Pro - #645
    • Added feature to override various display data (display name, native resolution, default resolution) - #645
    • Added feature to add custom scaled resolutions to native displays - #645
    • Add option to have only resolutions in the resolution slider that matches/approximates native aspect ratio - #658
    • Added option to show resolution slider as percentage for smoothly-scaled displays - #660
    • Added support for M2 Macbook Air - #656
    • Added support for macOS 13 Ventura - #664
    • Added a way to show some technical info about the displays for troubleshooting - #650
    • Fixed: v1.2.4 and v1.1.24 regression in terms of handing display UUIDs - #662

    Changes in v1.2.4-beta

    • Added option to show slider labels - #630
    • Added an option under Preferences/General to enable/disable all brightness related display control functionality - #628
    • Added option to disengage from F14/F15 keys - #629
    • Create a Displays tab for various display related settings - #603
    • Preferences tab should be reorganized to look consistent (scrolling type) - #621 opened 5 days ago by waydabber
    • Startup in safe mode should not restore previous brightness and color adjustment settings - #620
    • A proper prompt to gain Accessibility Privilege for media key control upon startup - #613
    • Streaming status should be shown in app menu just like mirroring - #619
    • Update combined brightness slider/keyboard control state for Apple screens when brightness is changed outside of the app - #602
    • Fixed: "Make fine scale default" for brightness control is at a wrong place in Preferences - #626
    • Fixed: XDR upscale should not be activated on EDR capable non-XDR Apple displays - #622
    • Fixed: Brightness keyboard shortcuts should not affect dummy screens directly but only non-dummy mirror or stream target displays - #616
    • Fixed: DDC Volume slider does not zero on mute + app forgets mute state after restart - #605
    • Fixed: Combined brightness sub-hw-zero-dimming and XDR upscale switching points should always correspond to a full OSD chiclet - #618
    • Fixed: Full screen stream can be resized by clicking on the top/bottom/left/right border of the stream target screen - #617
    • Fixed: Oversaturation when changing between combined and not combined color controls for upscaled Apple XDR displays - #614
    • Fixed: Night Shift should be turned back off when it was turned off by activating HDR mode from app-menu - #606
    • Fixed: Custom keyboard shortcuts don't work when app Menu is open - #596
    • Fixed: Resolution menu/slider is a wreck for some real displays in Monterey 12.4 - #601 opened 11 days ago by waydabber
    • Fixed: Resolution issue with app-created dummies optimized for the new 14" and 16" macbook pro screens and some other displays - #581

    Changes in v1.2.3-beta

    • Added various options to manage brightness control methods - #599
    • Combined keyboard control of hardware (Apple, DDC) brightness, software dimming and XDR/HDR upscale - #589
    • Combined hardware brightness, software dimming, XDR/HDR upscale slider - #588
    • Additional options to define keyboard control target screen - #587
    • Advanced options for native keyboard control for brightness and audio - #586
    • Implement Apple native key support for brightness and volume - #583
    • Added fine scale brightness/volume control for custom keyboard shortcuts - #585
    • Brightness and color control smooth transitions - #547
    • Implement DDC Mute control for external displays - #582
    • Implement DDC Volume control for external displays - #580
    • Implement DDC brightness control for external displays - #515
    • Implement Apple brightness control - #516
    • Make the contents of general Tools menu block configurable - #571
    • Option to match menu icon with main display icon - #593
    • Fixed: Display name suffixes might get messed up with multiple displays of same name - #594
    • Fixed: Slider graphics and text colors are somewhat off with some backgrounds - #572

    Changes in v1.2.2-beta

    • Added color temperature adjustment slider (especially useful for TVs that are incompatible with Night Shift) - #555
    • Added contrast control - #566
    • Add gain option to squeeze out some more nits or improve brightness when watching a dark movie - #561
    • Added R/G/B tint (gamma) control for... I don't know - why not? - #560
    • HDR/XDR brightness upscale setting is now remembered permanently, don't need to toggle it all the time - #557
    • Added Night Shift controls to the menu (so you don't have to look for that deeply hidden nightshift slider anymore in System Preferences) - #548
    • Added keyboard shortcut options for Night Shift and color temperature - #556
    • Added option to auto-disable Night Shift when reference HDR mode is enabled on an external display in the app menu - #554
    • Added option to reset all color adjustments - #564
    • Restore last applied brightness/color adjustments upon reconnect/restart - #563
    • Redesign the bottom part of the menu - #567
    • Fixed: App keeps forgetting I have a license - update Paddle SDK to 4.3.0 - #558
    • Fixed: After resetting the app in Preferences no items appear under the display in the menu - #565
    • Fixed: Dimming overlay (Sidecar, Dummy, AirPlay, DisplayLink) not resized properly on resolution change - #551
    • Fixed: Enabling HDR/XDR Upscale makes brightness slider disappear - #568
    • Fixed: Max dummy resolution gets limited when switching to portrait mode - #559

    Changes in v1.2.1-beta

    • Updated menu appearance, persistent collapsible display/dummy menu blocks - #546
    • Gamma correction slider (you can enable it under Preferences/Appearance) - #525
    • Overlay dimming for virtual displays, Sidecar/AirPlay and DisplayLink - #513
    • System OSD shown for keyboard shortcut induced brightness changes
    • Custom keyboard shortcut for brightness, gamma, HDR upscale and adjustments reset - #521
      Note: Apple keyboard native keys support not added yet!
    • Updated Appearance and Keyboard shortcuts tab - #536
    • Configurable menu location for display/dummy information, toggles and tools and new sliders - #531, #535
    • Fixed: Resolution slider not updated in some circumstances - #534
    • Fixed: Non-whole-numbers refresh rates not shown properly in menu - #541
    • Fixed: Resolution sliders go missing - #532
    • Fixed: Trial counter does not update properly - #533
    • Integrated DDC control framework for Apple Silicon and Intel - #514
      Note: DDC brightness and volume control not yet accessible!

    Changes in v1.2.0-beta (compared to v1.1.12)

    • HDR/XDR upscaling (extra brightness) - #499
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.2.7.dmg(5.02 MB)
  • v1.2.6(Jun 18, 2022)

    App icon

    About this version

    The app has a new name. Say hello to BetterDisplay!

    • It's not just the about name, the app has some cool new features as well (see below)!
    • Those who upgrade from BetterDummy via the built-in updater will see the app icon changed but the app name will remain unchanged in the Applications folder. All existing features work the same!
    • The app works with your existing Pro license, no need to purchase a new license!
    • Of course the existing free features and many of the new features are available completely free!

    Some of the exciting new features compared to the previous stable version:

    • BetterDummy is now BetterDisplay!
    • Native smooth resolution scaling - have a flexible scaled resolution slider on Apple Silicon even without a dummy! *
    • Custom resolutions - create any number of native custom HiDPI resolutions on Apple Silicon! Redefine the native and default resolutions!
    • Brightness control - control the brightness of your internal and external displays - all methods (native, DDC, colortable, overlay) supported!
    • XDR/HDR upscaling - unlock the full brightness of your Apple XDR or third party HDR displays! *
    • Change the audio volume of your external display via DDC.
    • Use native Apple keyboard brightness/volume key support with native OSD.
    • Color temperature, gamma, gain, contrast and color control. *
    • Various improvements and bug-fixes (see detailed changelog).

    Some or all aspect of the features marked with an asterisk (*) require a Pro license.

    Note to beta users: the app is marked as stable so after upgrading to this, you'll not receive further beta updates unless Receive beta updates is enabled under Settings/General.

    Click here for a detailed changelog of v1.2.x versions

    Changes in v1.2.6

    • Less intrusive alternative for the permissions problem alert dialog - #699
    • Emphasize the display header under Displays - #704
    • Display reconfiguarion app menu icon - #703
    • Fixed: Newly connected display with smooth scaling enabled is not detected properly - 694
    • Fixed: Ambient light sensor induced XDR macOS battery drain issue - #702

    Changes in v1.2.5a/b/c

    • rev. c - Fixed: Some text in settings is cut off - #683
    • rev. c - Fixed: Display configuration is editable for DisplayLink connected displays (which don't support this feature) - #681
    • rev. c - Fixed: Keyboard brightness control does not work when hardware control is disabled in the latest beta - #679
    • rev. c - Fixed: With combined brightness, when the brightness is decresed to zero externally for Apple displays, external controls can't recover the brightness - #687
    • rev. c - Fixed: The resolution list in simple mode should show only resolutions for the current refresh rate - #686
    • rev. c - Fixed: (Suggestion) Reverse resolution list in submenu to show high resolutions first - #684
    • rev. c - Fixed: Resolution slider always falls short of fully reaching the end even at 100% - #685
    • rev. c - Fixed: Resolution slider changes to Low resolution when the max value was set once - #682
    • rev. b - Added option Reset color table on neutral settings + explanation - #644
    • rev. b - Added cool option to show hw/sw subsliders when combined brightness is enabled
    • rev. b - Fixed: menu blocks cannot be collapsed and some other display or dummy related settings cannot be changed - #666
    • rev. b - Fixed: resolution slider is missing issues - #665
    • rev. b - Fixed: corrupt system configuration when the display is in a rotated during the procedure - #665
    • rev. b - Fixed: brightness OSD is not visible on dummy screen when it is being mirrored to a real screen - #655
    • App rebranding (in progress) - #641
    • Added feature to manage display system configuration - #645
    • Added feature to allow smooth resolution slider for displays - requires Pro - #645
    • Added feature to override various display data (display name, native resolution, default resolution) - #645
    • Added feature to add custom scaled resolutions to native displays - #645
    • Add option to have only resolutions in the resolution slider that matches/approximates native aspect ratio - #658
    • Added option to show resolution slider as percentage for smoothly-scaled displays - #660
    • Added support for M2 Macbook Air - #656
    • Added support for macOS 13 Ventura - #664
    • Added a way to show some technical info about the displays for troubleshooting - #650
    • Fixed: v1.2.4 and v1.1.24 regression in terms of handing display UUIDs - #662

    Changes in v1.2.4

    • Added option to show slider labels - #630
    • Added an option under Preferences/General to enable/disable all brightness related display control functionality - #628
    • Added option to disengage from F14/F15 keys - #629
    • Create a Displays tab for various display related settings - #603
    • Preferences tab should be reorganized to look consistent (scrolling type) - #621 opened 5 days ago by waydabber
    • Startup in safe mode should not restore previous brightness and color adjustment settings - #620
    • A proper prompt to gain Accessibility Privilege for media key control upon startup - #613
    • Streaming status should be shown in app menu just like mirroring - #619
    • Update combined brightness slider/keyboard control state for Apple screens when brightness is changed outside of the app - #602
    • Fixed: "Make fine scale default" for brightness control is at a wrong place in Preferences - #626
    • Fixed: XDR upscale should not be activated on EDR capable non-XDR Apple displays - #622
    • Fixed: Brightness keyboard shortcuts should not affect dummy screens directly but only non-dummy mirror or stream target displays - #616
    • Fixed: DDC Volume slider does not zero on mute + app forgets mute state after restart - #605
    • Fixed: Combined brightness sub-hw-zero-dimming and XDR upscale switching points should always correspond to a full OSD chiclet - #618
    • Fixed: Full screen stream can be resized by clicking on the top/bottom/left/right border of the stream target screen - #617
    • Fixed: Oversaturation when changing between combined and not combined color controls for upscaled Apple XDR displays - #614
    • Fixed: Night Shift should be turned back off when it was turned off by activating HDR mode from app-menu - #606
    • Fixed: Custom keyboard shortcuts don't work when app Menu is open - #596
    • Fixed: Resolution menu/slider is a wreck for some real displays in Monterey 12.4 - #601 opened 11 days ago by waydabber
    • Fixed: Resolution issue with app-created dummies optimized for the new 14" and 16" macbook pro screens and some other displays - #581

    Changes in v1.2.3

    • Added various options to manage brightness control methods - #599
    • Combined keyboard control of hardware (Apple, DDC) brightness, software dimming and XDR/HDR upscale - #589
    • Combined hardware brightness, software dimming, XDR/HDR upscale slider - #588
    • Additional options to define keyboard control target screen - #587
    • Advanced options for native keyboard control for brightness and audio - #586
    • Implement Apple native key support for brightness and volume - #583
    • Added fine scale brightness/volume control for custom keyboard shortcuts - #585
    • Brightness and color control smooth transitions - #547
    • Implement DDC Mute control for external displays - #582
    • Implement DDC Volume control for external displays - #580
    • Implement DDC brightness control for external displays - #515
    • Implement Apple brightness control - #516
    • Make the contents of general Tools menu block configurable - #571
    • Option to match menu icon with main display icon - #593
    • Fixed: Display name suffixes might get messed up with multiple displays of same name - #594
    • Fixed: Slider graphics and text colors are somewhat off with some backgrounds - #572

    Changes in v1.2.2

    • Added color temperature adjustment slider (especially useful for TVs that are incompatible with Night Shift) - #555
    • Added contrast control - #566
    • Add gain option to squeeze out some more nits or improve brightness when watching a dark movie - #561
    • Added R/G/B tint (gamma) control for... I don't know - why not? - #560
    • HDR/XDR brightness upscale setting is now remembered permanently, don't need to toggle it all the time - #557
    • Added Night Shift controls to the menu (so you don't have to look for that deeply hidden nightshift slider anymore in System Preferences) - #548
    • Added keyboard shortcut options for Night Shift and color temperature - #556
    • Added option to auto-disable Night Shift when reference HDR mode is enabled on an external display in the app menu - #554
    • Added option to reset all color adjustments - #564
    • Restore last applied brightness/color adjustments upon reconnect/restart - #563
    • Redesign the bottom part of the menu - #567
    • Fixed: App keeps forgetting I have a license - update Paddle SDK to 4.3.0 - #558
    • Fixed: After resetting the app in Preferences no items appear under the display in the menu - #565
    • Fixed: Dimming overlay (Sidecar, Dummy, AirPlay, DisplayLink) not resized properly on resolution change - #551
    • Fixed: Enabling HDR/XDR Upscale makes brightness slider disappear - #568
    • Fixed: Max dummy resolution gets limited when switching to portrait mode - #559

    Changes in v1.2.1

    • Updated menu appearance, persistent collapsible display/dummy menu blocks - #546
    • Gamma correction slider (you can enable it under Preferences/Appearance) - #525
    • Overlay dimming for virtual displays, Sidecar/AirPlay and DisplayLink - #513
    • System OSD shown for keyboard shortcut induced brightness changes
    • Custom keyboard shortcut for brightness, gamma, HDR upscale and adjustments reset - #521
      Note: Apple keyboard native keys support not added yet!
    • Updated Appearance and Keyboard shortcuts tab - #536
    • Configurable menu location for display/dummy information, toggles and tools and new sliders - #531, #535
    • Fixed: Resolution slider not updated in some circumstances - #534
    • Fixed: Non-whole-numbers refresh rates not shown properly in menu - #541
    • Fixed: Resolution sliders go missing - #532
    • Fixed: Trial counter does not update properly - #533
    • Integrated DDC control framework for Apple Silicon and Intel - #514
      Note: DDC brightness and volume control not yet accessible!

    Changes in v1.2.0 (compared to v1.1.12)

    • HDR/XDR upscaling (extra brightness) - #499
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.2.6.dmg(5.00 MB)
  • v1.2.5-beta(Jun 11, 2022)

    App icon

    About this version

    Finally! Native smooth scaling and HiDPI for your displays on Apple Silicon

    At last, what many of you've been waiting for! There is now an option in the app to enable a smooth HiDPI resolution scaling on Apple Silicon for internal displays and natively connected external displays. This means you do not have to create a dummy and mirror it to your main screen simply to have flexible HiDPI resolutions and a resolution slider.

    Screen Shot 2022-06-11 at 17 40 32
    • This also fixes a host of issues for those who simply want flexible resolutions - high refresh rate, Apple TV/HDCP content, sleep issues.
    • The smooth resolution scaling feature also works with the notch for the new MBPs and the new MBA.
    • Please note that the smooth resolution scale is a Pro feature and it might still have bugs so if it does not work on your setup, please let me know (on the Discord channel or open an Issue). The feature was tested on Apple Silicon.
    • While at it, I also added some other nifty features - you can now override you real display's name, native resolution, default resolution and also add your own custom scaled HiDPI resolutions on Apple Silicon. These are available for free for the benefit of all.
    • When correctly set up, you should see a super flexible resolution scaling slider (if resolution slider is not disabled) for your affected displays in the app menu (just like if they were dummies - but they are not!).
    • To enable the feature, simply navigate to the Displays section in Preferences, enable the Edit and manage the system configuration of this display feature first under a suitable display, and then enable the Allow smooth resolution scale option just below it as it appears. If you did this for all the relevant displays, click on the Apply System Display Configuration button at the bottom of the screen, enter your admin password and then reboot:
    • Please note that the smooth scaling feature works on macOS Monterey 12.4 or 12.5 beta and also macOS 13 Ventura and the upper limit of the flexible resolutions is the pixel-doubled native resolution of the display (so for a 1440p display it maxes out at 1440p HiDPI). The feature works only for natively connected (USB-C/DisplayPort, HDMI) and internal displays. For Sidecar, DisplayLink or if you want higher-than-native resolutions (for extra screen real estate) you still need dummy mirroring for flexible scaling on Apple Silicon.

    Say hello to BetterDisplay!

    An other major news is the fact that the app is being rebranded from BetterDummy to BetterDisplay. This process is not 100% completed (see the progress here), but this build has a new app icon, menu bar icon and the labels inside the app now reflect this upcoming change.

    • For those who use the built-in updater to update, the app will retain the name BetterDummy in the Application folders to avoid (or foster?) confusion. :)
    Detailed change log

    Changes in v1.2.5a/b/c

    • rev. c - Fixed: Some text in settings is cut off - #683
    • rev. c - Fixed: Display configuration is editable for DisplayLink connected displays (which don't support this feature) - #681
    • rev. c - Fixed: Keyboard brightness control does not work when hardware control is disabled in the latest beta - #679
    • rev. c - Fixed: With combined brightness, when the brightness is decresed to zero externally for Apple displays, external controls can't recover the brightness - #687
    • rev. c - Fixed: The resolution list in simple mode should show only resolutions for the current refresh rate - #686
    • rev. c - Fixed: (Suggestion) Reverse resolution list in submenu to show high resolutions first - #684
    • rev. c - Fixed: Resolution slider always falls short of fully reaching the end even at 100% - #685
    • rev. c - Fixed: Resolution slider changes to Low resolution when the max value was set once - #682
    • rev. b - Added option Reset color table on neutral settings + explanation - #644
    • rev. b - Added cool option to show hw/sw subsliders when combined brightness is enabled
    • rev. b - Fixed: menu blocks cannot be collapsed and some other display or dummy related settings cannot be changed - #666
    • rev. b - Fixed: resolution slider is missing issues - #665
    • rev. b - Fixed: corrupt system configuration when the display is in a rotated during the procedure - #665
    • rev. b - Fixed: brightness OSD is not visible on dummy screen when it is being mirrored to a real screen - #655
    • App rebranding (in progress) - #641
    • Added feature to manage display system configuration - #645
    • Added feature to allow smooth resolution slider for displays - requires Pro - #645
    • Added feature to override various display data (display name, native resolution, default resolution) - #645
    • Added feature to add custom scaled resolutions to native displays - #645
    • Add option to have only resolutions in the resolution slider that matches/approximates native aspect ratio - #658
    • Added option to show resolution slider as percentage for smoothly-scaled displays - #660
    • Added support for M2 Macbook Air - #656
    • Added support for macOS 13 Ventura - #664
    • Added a way to show some technical info about the displays for troubleshooting - #650
    • Fixed: v1.2.4 and v1.1.24 regression in terms of handing display UUIDs - #662

    Changes in v1.2.4

    • Added option to show slider labels - #630
    • Added an option under Preferences/General to enable/disable all brightness related display control functionality - #628
    • Added option to disengage from F14/F15 keys - #629
    • Create a Displays tab for various display related settings - #603
    • Preferences tab should be reorganized to look consistent (scrolling type) - #621 opened 5 days ago by waydabber
    • Startup in safe mode should not restore previous brightness and color adjustment settings - #620
    • A proper prompt to gain Accessibility Privilege for media key control upon startup - #613
    • Streaming status should be shown in app menu just like mirroring - #619
    • Update combined brightness slider/keyboard control state for Apple screens when brightness is changed outside of the app - #602
    • Fixed: "Make fine scale default" for brightness control is at a wrong place in Preferences - #626
    • Fixed: XDR upscale should not be activated on EDR capable non-XDR Apple displays - #622
    • Fixed: Brightness keyboard shortcuts should not affect dummy screens directly but only non-dummy mirror or stream target displays - #616
    • Fixed: DDC Volume slider does not zero on mute + app forgets mute state after restart - #605
    • Fixed: Combined brightness sub-hw-zero-dimming and XDR upscale switching points should always correspond to a full OSD chiclet - #618
    • Fixed: Full screen stream can be resized by clicking on the top/bottom/left/right border of the stream target screen - #617
    • Fixed: Oversaturation when changing between combined and not combined color controls for upscaled Apple XDR displays - #614
    • Fixed: Night Shift should be turned back off when it was turned off by activating HDR mode from app-menu - #606
    • Fixed: Custom keyboard shortcuts don't work when app Menu is open - #596
    • Fixed: Resolution menu/slider is a wreck for some real displays in Monterey 12.4 - #601 opened 11 days ago by waydabber
    • Fixed: Resolution issue with app-created dummies optimized for the new 14" and 16" macbook pro screens and some other displays - #581

    Changes in v1.2.3

    • Added various options to manage brightness control methods - #599
    • Combined keyboard control of hardware (Apple, DDC) brightness, software dimming and XDR/HDR upscale - #589
    • Combined hardware brightness, software dimming, XDR/HDR upscale slider - #588
    • Additional options to define keyboard control target screen - #587
    • Advanced options for native keyboard control for brightness and audio - #586
    • Implement Apple native key support for brightness and volume - #583
    • Added fine scale brightness/volume control for custom keyboard shortcuts - #585
    • Brightness and color control smooth transitions - #547
    • Implement DDC Mute control for external displays - #582
    • Implement DDC Volume control for external displays - #580
    • Implement DDC brightness control for external displays - #515
    • Implement Apple brightness control - #516
    • Make the contents of general Tools menu block configurable - #571
    • Option to match menu icon with main display icon - #593
    • Fixed: Display name suffixes might get messed up with multiple displays of same name - #594
    • Fixed: Slider graphics and text colors are somewhat off with some backgrounds - #572

    Changes in v1.2.2

    • Added color temperature adjustment slider (especially useful for TVs that are incompatible with Night Shift) - #555
    • Added contrast control - #566
    • Add gain option to squeeze out some more nits or improve brightness when watching a dark movie - #561
    • Added R/G/B tint (gamma) control for... I don't know - why not? - #560
    • HDR/XDR brightness upscale setting is now remembered permanently, don't need to toggle it all the time - #557
    • Added Night Shift controls to the menu (so you don't have to look for that deeply hidden nightshift slider anymore in System Preferences) - #548
    • Added keyboard shortcut options for Night Shift and color temperature - #556
    • Added option to auto-disable Night Shift when reference HDR mode is enabled on an external display in the app menu - #554
    • Added option to reset all color adjustments - #564
    • Restore last applied brightness/color adjustments upon reconnect/restart - #563
    • Redesign the bottom part of the menu - #567
    • Fixed: App keeps forgetting I have a license - update Paddle SDK to 4.3.0 - #558
    • Fixed: After resetting the app in Preferences no items appear under the display in the menu - #565
    • Fixed: Dimming overlay (Sidecar, Dummy, AirPlay, DisplayLink) not resized properly on resolution change - #551
    • Fixed: Enabling HDR/XDR Upscale makes brightness slider disappear - #568
    • Fixed: Max dummy resolution gets limited when switching to portrait mode - #559

    Changes in v1.2.1

    • Updated menu appearance, persistent collapsible display/dummy menu blocks - #546
    • Gamma correction slider (you can enable it under Preferences/Appearance) - #525
    • Overlay dimming for virtual displays, Sidecar/AirPlay and DisplayLink - #513
    • System OSD shown for keyboard shortcut induced brightness changes
    • Custom keyboard shortcut for brightness, gamma, HDR upscale and adjustments reset - #521
      Note: Apple keyboard native keys support not added yet!
    • Updated Appearance and Keyboard shortcuts tab - #536
    • Configurable menu location for display/dummy information, toggles and tools and new sliders - #531, #535
    • Fixed: Resolution slider not updated in some circumstances - #534
    • Fixed: Non-whole-numbers refresh rates not shown properly in menu - #541
    • Fixed: Resolution sliders go missing - #532
    • Fixed: Trial counter does not update properly - #533
    • Integrated DDC control framework for Apple Silicon and Intel - #514
      Note: DDC brightness and volume control not yet accessible!

    Changes in v1.2.0 (compared to v1.1.12)

    • HDR/XDR upscaling (extra brightness) - #499
    Source code(tar.gz)
    Source code(zip)
    BetterDisplay-v1.2.5c-beta.dmg(4.90 MB)
  • v1.1.24(Jun 2, 2022)

    About this version

    This stable version is mostly about bug fixes - it contains all relevant fixes from the latest v1.2.x beta version (which is still under development). Some new functionality and an updated appearance was also carried over from the v1.2.x version. The new advanced display control features (brightness, color control, hardware management, XDR/HDR brightness upscaling (beyond 100% brightness), DDC control, display volume control) are not present in this version - if you want to use these, please download the latest v1.2.x beta build.

    Changes in v1.1.24 (compared to the previous stable version v1.1.12)

    • Added Night Shift slider/control to Tools menu - #548
    • Added keyboard shortcut for Night Shift - #556
    • Added option to auto-disable Night Shift when enabling HDR - #554
    • Added option to show submenu toggles at main menu level - #531
    • Added option to match menu icon with main display icon - #593
    • Improved slider graphics and text colors - #572
    • Introduced new configurable Tools menu block - #567, #571
    • Improved menu usability + collapsible menu blocks - #546
    • Streaming status is shown in app menu (like mirroring) - #619
    • Reorganized Preferences tab - #621, #536
    • Option to add slider labels - #630
    • Fixed: Resolution issue with app-created dummies optimized for the new 14" and 16" macbook pro screens and some other displays - #581
    • Fixed: Resolution menu/slider fake resolutions appear in macOS Monterey v12.4 - #601
    • Fixed: Custom keyboard shortcuts not working when menu is open - #596
    • Fixed: Full screen stream unexpected resizing issue - #617
    • Fixed: Limited max dummy resolution limit in portrait mode - #559
    • Fixed: Display name suffixes might get messed up with multiple displays of same name - #594
    • Fixed: After resetting the app in Preferences no items appear under the display in the menu - #565
    • Fixed: App keeps forgetting I have a license - update Paddle SDK to 4.3.0 - #558
    • Fixed: Refresh Rate list does not properly show non-whole natural number Refresh Rates - #541
    • Fixed: Resolution slider not updated correctly upon mode change in some circumstances - #534
    • Fixed: Trial counter does not seem to update in Preferences - #533
    • Fixed: In some instances resolution sliders go missing - #532
    Click here for a detailed change log from v1.0.13 to v1.1.12...

    Changes in v1.1.12

    • Fixed menu icon hiding - #507
    • Fixed slider text adjustment - #508

    Changes in v1.1.12-rc

    • Customizable menu layout - #481
    • Added nice menu item icons to all menu items (only when enabled in Preferences) - #500
    • Option to use alternative display identification instead of UUID for DisplayLink - #503
    • Added back default portrait options to the New Dummy menu - #501
    • Various bug fixes and improvements

    Changes in v1.1.11-beta

    • Add keyboard shortcuts to control the app - #11
    • Add safe mode during startup (by pressing Shift) - #475
    • Add Refresh Rate submenu to real displays - #480
    • Add low resolution switch to real displays as well - #486
    • Add a HDR toggle to the menu for (HDR capable) real displays - #479
    • Option to hide full screen stream temporarily - #488
    • Option to pause/freeze PIP window or full screen stream - #473
    • Option to hide mouse cursor for PIP window and full screen stream - #493
    • New dummy for display should default to current resolution, or allow to change default resolution via setting - #438
    • Rename the option 'Filp Aspect Ratio' back to 'Portrait' for better discoverability - #472
    • Fixed: Mouse is not visible in streamed real screens - #489
    • Fixed: Resolution slider should stick to current refresh rate - #482
    • Fixed: Changing mirror sleep settings do not register - #478
    • Fixed: Resolution slider omits native (highest) resolution - #494
    • Installer is now in DMG format for easier use

    Changes in v1.1.10-beta

    • Paddle integration - #368
    • Fixed: Switching inputs causes dummy to become pixelated - #443
    • Fixed: Native and Default resolutions are not indicated in the resolution menu sometimes - #458
    • Fixed: Resolution slider text is hard to read in dark mode - #442
    • Add move display adjacent to the corner of an other display in the move menu - #453

    Changes in v1.1.0-beta9

    • Mirror sets show up as grouped in the menu - #416
    • Main menu icons are optional - #426
    • Display/dummy menu headers have icons - #427
    • Option to reconnect all dummies - #424
    • Show variable refresh rates in resolution menu - #422
    • Change how reconnect after wake works - #425
    • Prompt about missing Screen Recording permissions upon full screen streaming. - #437
    • Inline resolution text in slider
    • Fixed resolution slider's rightmost setting not registering - #440
    • Fixed high memory usage issue - #434
    • Various other fixes and improvements

    Changes in v1.1.0-beta8

    • Real display rotation (for supported displays) - #397
    • Ability to resize dummy (redefine aspect ratio or resolution) - #418
    • Various internal changes required for future features - #410, #417, #421
    • Various stability and other improvements.
    • Might have introduced new bugs, sorry about that.
    • Fixed mirrored dummy sleep workaround not working properly in previous beta.

    Changes in v1.1.0-beta7

    • Create dummies with custom aspect ratios or resolutions - #84
    • Added feature to assist moving displays around - #385
    • Auto-configure and mirror or stream a dummy suited for display - #405
    • Full screen streaming is now more resilient - #400
    • Support off-center full-screen streaming (suitable for TVs used in close-up) - #196
    • Ability to preserve aspect ratio with full screen streaming - #396
    • Beta versions will receive beta updates no matter what - beta opt-out setting will apply on first stable update - #395
    • More detailed info about the display under in the Configuration submenu
    • Various bug fixes and improvements

    Changes in v1.1.0-beta6

    • You can now rename dummies - #159
    • Option to change if a display/dummy is main or extended - #380
    • More info about dummies and displays - #373
    • Added mirroring menu for real displays - #379
    • Mirroring menu distinguishes between mirror targets and sources - #378
    • Experimental option to prohibit the mouse from entering a display when it is covered with a full screen stream - #367
    • Fixed iPad Air 2020 aspect ratio problem - #375
    • Several bugs have been fixed (probably some new introduced)

    Changes in v1.1.0-beta5

    • Fixed beta channel update issue (previous betas won't receive auto updates, sorry about that)
    • Various other bug fixes

    Changes in v1.1.0-beta4

    • Fixed full screen streaming target display best resolution scaling
    • Solved conflict when multiple screens was streamed to the same target display
    • Fixed full screen streaming resolution mismatch and display identification confusion
    • Display resolutions are now updated in the menu properly when changed outside of the app

    Changes in v1.1.0-beta3

    • Resolution selector for non-dummy displays as well - #87
    • Enhanced resolution selector menu for displays (helps understanding EDID issues) - #356
    • Add a hint to the menu if mirroring might be misconfigured - #357
    • Picture in Picture mode for non-dummy screens as well - #259
    • Some general refactoring.

    Changes in v1.1.0-beta2

    • Proper Preferences pane instead of the Settings menu. - #94
    • Option to enable sub-720p resolutions. - #265
    • Quick was to disconnect and reconnect a dummy. - #313
    • Dummy default colorspace is sRGB instead of Generic RGB. - #331
    • Expiration date is pushed off by an other month.

    Changes in v1.1.0-beta1

    • Removal of the 10 minute tryout period and the need to manually start the tryout every time the app starts.
    • Removal of the pre-release version header from the top of the menu (man that was annoying :)).
    • Added an expiration date for the app (checked during app startup against the current system date).

    Changes in v1.1.0-alpha2

    • Lots of bug fixes.
    • Lots of brand new bugs. :)
    • Added some new features (see below).
    • Improved clarity for full screen stream.
    • Removed time limit (except for the Pro features)

    Changes in v1.1.0-alpha1

    • More logical menu layout
    • A more intuitive resolution slider instead of resolution list
    • Quick toggle for Low Resolution mode
    • Indicate displays matching aspect ratios in the create new dummy menu
    • Connecting a newly created dummy is now optional
    • Automate display rearrangement for first time dummy connect (with option to disable)
    • Use an entire desktop as a Window
    • PIP window priority setting
    • PIP window rotation
    • PIP window freeform aspect-ratio
    • PIP window title-less mode
    • Stream your dummy contents to a display as an alternative of mirroring
    • Full screen stream rotation
    • Quick toggle for portrait mode
    • Support for portrait orientation of all aspect ratios
    • Portrait Sidecar & built-in screen support with full screen streaming
    • Automation of display rearrangement when changing to/from portrait dummy orientation
    • Dummy automatically follows orientation of associated display
    • Automate the process of mirror creation for a display
    • Enforce mirroring for dummies associated with displays

    Known Issues

    Source code(tar.gz)
    Source code(zip)
    BetterDummy-v1.1.24.dmg(4.14 MB)
  • v1.1.12(Apr 20, 2022)

    About this version

    • This version includes licensing for Pro features with an in-app check-out system.
    • By purchasing a Pro license for $15 (includes VAT, sales tax, payment fees etc.) you support the development. Thank you for this!
    • There is a trial period for 14 days. If you don't purchase, you can still keep using the app for free after the trial without the Pro features. :)
    • For more information check out this discussion!

    To the backers of the open-source project

    • I'd like to thank you for backing the open source project in the past by providing you with a Pro coupon code.
    • As Open Collective won't let me reach out you directly, please contact me at Discord by sending me private message with a screenshot of the confirmation you received when you donated. I'll respond with a code (some patience might be needed). Thank you!

    List of major new features in v1.1.10 compared to v1.0.x

    Note: Items marked with an asterix (*) are available in BetterDummy Pro

    General

    • More logical and customizable menu layout
    • Menu item icons (configurable)
    • Proper Preferences pane
    • Keyboard shortcuts *

    Dummy creation and management

    • A more intuitive resolution slider instead of resolution list
    • Quick toggle for Low Resolution mode
    • Option to disconnect and reconnect on lock
    • Indicate displays matching aspect ratios in the create new dummy menu
    • Connecting a newly created dummy is now optional
    • Automate display rearrangement for first time dummy connect (with option to disable)
    • Option to enable sub-720p resolutions
    • Quick way to disconnect and reconnect a dummy
    • You can now rename dummies *
    • Added information about dummies
    • Create dummies with custom aspect ratios or resolutions *
    • Auto-configure dummy, mirroring and streaming suited for a display *
    • Ability to move connected dummies in the display coordinate space
    • You can now resize dummies *

    Real (non-dummy) display management

    • Show real and other virtual displays as well in the menu
    • Resolution selector for real (non-dummy) displays as well
    • Configure mirroring for real displays
    • Configure full screen streaming for real displays *
    • Picture in Picture for real displays *
    • Setting main/extended status
    • Option to reconnect all dummies
    • Added information about displays
    • Ability to move displays in the display coordinate space
    • Display rotation
    • Quickly enable/disable HDR mode (for supported displays)
    • Change refresh rate from menu
    • Quickly change between low and HiDPI resolution

    Picture-in-Picture (PIP) window

    • Show an entire desktop in a window *
    • Works both for real and dummy displays *
    • PIP window priority setting *
    • PIP window rotation *
    • PIP window freeform aspect-ratio *
    • PIP window title-less mode *
    • Picture in Picture mode for real displays *
    • Pause PIP stream *

    Full-screen streaming

    • Stream your dummy contents to a display as an alternative of mirroring *
    • Works both for real and dummy displays *
    • Full screen stream rotation *
    • Automatically set native mode for full screen stream target display (with an option to disable it) *
    • Improved clarity *
    • Support for off-center streaming (suitable for TVs used in displays in close proximity for example) *
    • Fixed or stretched aspect ratio *
    • Full screen streaming for real displays *
    • Temporarily hide full screen stream *
    • Pause full screen stream *

    Portrait mode

    • Quick toggle for portrait mode
    • Support for portrait orientation of all aspect ratios
    • Portrait Sidecar & built-in screen support with full screen streaming *
    • Automation of display rearrangement when changing to/from portrait dummy orientation *
    • Dummy automatically follows orientation of associated display *

    Mirroring

    • Automate the process of mirror creation for a display *
    • Enforce mirroring for dummies associated with displays *
    • Add some mirroring info + a hint to the menu if mirroring might be misconfigured
    • Mirrored items appear combined in the menu
    Click here for a detailed change log from v1.0.13 to v1.1.12...

    Changes in v1.1.12

    • Fixed menu icon hiding - #507
    • Fixed slider text adjustment - #508

    Changes in v1.1.12-rc

    • Customizable menu layout - #481
    • Added nice menu item icons to all menu items (only when enabled in Preferences) - #500
    • Option to use alternative display identification instead of UUID for DisplayLink - #503
    • Added back default portrait options to the New Dummy menu - #501
    • Various bug fixes and improvements

    Changes in v1.1.11-beta

    • Add keyboard shortcuts to control the app - #11
    • Add safe mode during startup (by pressing Shift) - #475
    • Add Refresh Rate submenu to real displays - #480
    • Add low resolution switch to real displays as well - #486
    • Add a HDR toggle to the menu for (HDR capable) real displays - #479
    • Option to hide full screen stream temporarily - #488
    • Option to pause/freeze PIP window or full screen stream - #473
    • Option to hide mouse cursor for PIP window and full screen stream - #493
    • New dummy for display should default to current resolution, or allow to change default resolution via setting - #438
    • Rename the option 'Filp Aspect Ratio' back to 'Portrait' for better discoverability - #472
    • Fixed: Mouse is not visible in streamed real screens - #489
    • Fixed: Resolution slider should stick to current refresh rate - #482
    • Fixed: Changing mirror sleep settings do not register - #478
    • Fixed: Resolution slider omits native (highest) resolution - #494
    • Installer is now in DMG format for easier use

    Changes in v1.1.10-beta

    • Paddle integration - #368
    • Fixed: Switching inputs causes dummy to become pixelated - #443
    • Fixed: Native and Default resolutions are not indicated in the resolution menu sometimes - #458
    • Fixed: Resolution slider text is hard to read in dark mode - #442
    • Add move display adjacent to the corner of an other display in the move menu - #453

    Changes in v1.1.0-beta9

    • Mirror sets show up as grouped in the menu - #416
    • Main menu icons are optional - #426
    • Display/dummy menu headers have icons - #427
    • Option to reconnect all dummies - #424
    • Show variable refresh rates in resolution menu - #422
    • Change how reconnect after wake works - #425
    • Prompt about missing Screen Recording permissions upon full screen streaming. - #437
    • Inline resolution text in slider
    • Fixed resolution slider's rightmost setting not registering - #440
    • Fixed high memory usage issue - #434
    • Various other fixes and improvements

    Changes in v1.1.0-beta8

    • Real display rotation (for supported displays) - #397
    • Ability to resize dummy (redefine aspect ratio or resolution) - #418
    • Various internal changes required for future features - #410, #417, #421
    • Various stability and other improvements.
    • Might have introduced new bugs, sorry about that.
    • Fixed mirrored dummy sleep workaround not working properly in previous beta.

    Changes in v1.1.0-beta7

    • Create dummies with custom aspect ratios or resolutions - #84
    • Added feature to assist moving displays around - #385
    • Auto-configure and mirror or stream a dummy suited for display - #405
    • Full screen streaming is now more resilient - #400
    • Support off-center full-screen streaming (suitable for TVs used in close-up) - #196
    • Ability to preserve aspect ratio with full screen streaming - #396
    • Beta versions will receive beta updates no matter what - beta opt-out setting will apply on first stable update - #395
    • More detailed info about the display under in the Configuration submenu
    • Various bug fixes and improvements

    Changes in v1.1.0-beta6

    • You can now rename dummies - #159
    • Option to change if a display/dummy is main or extended - #380
    • More info about dummies and displays - #373
    • Added mirroring menu for real displays - #379
    • Mirroring menu distinguishes between mirror targets and sources - #378
    • Experimental option to prohibit the mouse from entering a display when it is covered with a full screen stream - #367
    • Fixed iPad Air 2020 aspect ratio problem - #375
    • Several bugs have been fixed (probably some new introduced)

    Changes in v1.1.0-beta5

    • Fixed beta channel update issue (previous betas won't receive auto updates, sorry about that)
    • Various other bug fixes

    Changes in v1.1.0-beta4

    • Fixed full screen streaming target display best resolution scaling
    • Solved conflict when multiple screens was streamed to the same target display
    • Fixed full screen streaming resolution mismatch and display identification confusion
    • Display resolutions are now updated in the menu properly when changed outside of the app

    Changes in v1.1.0-beta3

    • Resolution selector for non-dummy displays as well - #87
    • Enhanced resolution selector menu for displays (helps understanding EDID issues) - #356
    • Add a hint to the menu if mirroring might be misconfigured - #357
    • Picture in Picture mode for non-dummy screens as well - #259
    • Some general refactoring.

    Changes in v1.1.0-beta2

    • Proper Preferences pane instead of the Settings menu. - #94
    • Option to enable sub-720p resolutions. - #265
    • Quick was to disconnect and reconnect a dummy. - #313
    • Dummy default colorspace is sRGB instead of Generic RGB. - #331
    • Expiration date is pushed off by an other month.

    Changes in v1.1.0-beta1

    • Removal of the 10 minute tryout period and the need to manually start the tryout every time the app starts.
    • Removal of the pre-release version header from the top of the menu (man that was annoying :)).
    • Added an expiration date for the app (checked during app startup against the current system date).

    Changes in v1.1.0-alpha2

    • Lots of bug fixes.
    • Lots of brand new bugs. :)
    • Added some new features (see below).
    • Improved clarity for full screen stream.
    • Removed time limit (except for the Pro features)

    Changes in v1.1.0-alpha1

    • More logical menu layout
    • A more intuitive resolution slider instead of resolution list
    • Quick toggle for Low Resolution mode
    • Indicate displays matching aspect ratios in the create new dummy menu
    • Connecting a newly created dummy is now optional
    • Automate display rearrangement for first time dummy connect (with option to disable)
    • Use an entire desktop as a Window
    • PIP window priority setting
    • PIP window rotation
    • PIP window freeform aspect-ratio
    • PIP window title-less mode
    • Stream your dummy contents to a display as an alternative of mirroring
    • Full screen stream rotation
    • Quick toggle for portrait mode
    • Support for portrait orientation of all aspect ratios
    • Portrait Sidecar & built-in screen support with full screen streaming
    • Automation of display rearrangement when changing to/from portrait dummy orientation
    • Dummy automatically follows orientation of associated display
    • Automate the process of mirror creation for a display
    • Enforce mirroring for dummies associated with displays

    Known Issues

    • Trial counter might not update properly in the app menu or Preferences
    • In some instances resolution sliders might go missing (empty space appears instead)
    • Resolution slider is not updated during some configuration changes
    • Also see the standard known issue list
    Source code(tar.gz)
    Source code(zip)
    BetterDummy-v1.1.12.dmg(3.80 MB)
  • v1.0.13(Dec 15, 2021)

    Notes

    • This is the open source version of the app. Source code for this version is now fully available in the opensource branch on the app's GitHub page.
    • This is a minor bugfix release.

    Changes

    • Fixed currently selected resolution not being reflected in the menu (issue 246)
    • Added "Use display serial number for association" setting (issue 211)
    • Some cosmetic changes for UI consistency
    Source code(tar.gz)
    Source code(zip)
    BetterDummy-v1.0.13.zip(2.17 MB)
  • v1.0.12(Nov 28, 2021)

    Changes

    • Various cosmetic changes, slightly redesigned menubar icon, reorganized menu for easier access.
    • Better support for association with virtual displays (like Sidecar, DisplayLink etc) - note: you need to reassociate the display in v1.0.12 for these devices!
    • Fixed update issue related to sandboxing. Users of v1.0.10 and v1.0.11 will not be able to update though. :(
    • Some under-the-hood changes and bug fixes.

    Notes

    • The built-in app update fails due to a sandboxing issue when updating from versions 1.0.10 and v1.0.11. If you are on these versions you'll need to download the update manually! Really sorry about this!
    • If you have any issues with this release (besides the list of known issues), please let me know!
    Source code(tar.gz)
    Source code(zip)
    BetterDummy-v1.0.12.zip(2.17 MB)
  • v1.0.10(Nov 12, 2021)

    Changes

    • Added option to enable up to 16K resolutions under Settings (this might benefit 5K double-wide and ultrawide users to allow for higher resolution HiDPI).
    • Added options to connect/disconnect/discard/disassociate all dummies at once.
    • Added option to associate a dummy with a real display - association result in the dummy auto connecting/disconnecting whenever the associated display is present or removed from the configuration.
    • Added in-menu resolution selector for connected dummies.
    • Added option to enable low-resolution options in menu resolution selector.
    • Added option to hide the menubar icon.
    • Enabled full sandboxing.

    If you find the app useful, please consider donating. I am truly thankful for all the support, every little bit counts.

    Don't forget to star the GitHub project and spread the word!

    If you have any issues with this release, please let me know!

    Source code(tar.gz)
    Source code(zip)
    BetterDummy-v1.0.10.zip(2.16 MB)
  • v1.0.9(Nov 5, 2021)

    Changes

    • Added some additional aspect ratios (notably support for newer iPads).
    • Added application reset.
    • Added option to enable/disable the workaround for macOS virtual display sleep bug that affects some setups. *
    • Fixed crash on sleep affecting some with v1.0.8.

    Don't forget to Star the GitHub project! :)

    If you have any issues with this release, please let me know!

    * Virtual Displays mirrored to an other displays tend to break sleep on some setups (the screen just freezes). The problem is unrelated to BetterDummy and seems to be a bug in macOS - on affected setups it can be replicated without BD, simply by attempting to mirror a Sidecar display (or an other virtual screen of similar kind) and initiate sleep. A Bug Report has been submitted to Apple regarding this but the timetable of a proper fix is highly uncertain. The app implements a workaround for the issue, but since on some configs the workaround itself caused issues, an option was now added to disable it.

    Source code(tar.gz)
    Source code(zip)
    BetterDummy-v1.0.9.zip(2.11 MB)
  • v1.0.7(Oct 29, 2021)

    Changes

    • Improved handling of resolutions
    • Updated Manage Dummies menu
    • Start at Login option
    • Auto-update functionality
    • Unlocked resolutions up to 8K+ (8192px) *
    • Updated tailor-made app and menubar icons in place of the old generic icons *

    The app is still a work in progress. If you have any issues with this release, please let me know!

    * Note: the attached release binary was updated to v1.0.7e with the marked additional features but otherwise the app has no new features compared to the old v1.0.7, therefore this slightly updated version is not offered via the in-app update mechanism.

    Source code(tar.gz)
    Source code(zip)
    BetterDummy-v1.0.7.zip(2.10 MB)
  • v1.0.6b(Oct 28, 2021)

    Changes

    • Added more resolutions.
    • Option to connect/disconnect dummy without destroying it. It is preferred to disconnect a dummy instead of discarding it if you want to reuse a dummy later (this preserves previous display configuration and avoids creating unnecessary ColorSync profiles and display configuration entries stored by the OS).
    • Option to cycle connected dummies upon wake.
    • Release is properly notarized.

    Known issues

    • Start at login option is not working yet.
    Source code(tar.gz)
    Source code(zip)
    BetterDummy-v1.0.6b2.zip(725.91 KB)
  • v1.0.5(Oct 27, 2021)

  • v1.0.2(Oct 26, 2021)

    Minor updates:

    • Fixed restoring settings of multiple dummy displays.
    • Each dummy now has an unique persistent serial number. This means that multiple dummies of the same aspect ratio can be created (for multi-display setup) and upon app restart the previous display configuration is recognized and restored by macOS.
    • Internal refactoring to allow room for planned future improvements.

    Note:

    • The format of the preferences store has changed so the app will forget all its settings when upgrading from v1.0.1.
    Source code(tar.gz)
    Source code(zip)
    BetterDummy-v1.0.2.zip(704.55 KB)
  • v1.0.1(Oct 25, 2021)

  • v1.0.0-beta1(Oct 24, 2021)

    Initial release:

    • Should be fully functional.
    • All aspect ratios added.
    • Ability to save display configuration and restore upon startup.
    • Mirrored dummy screen sleep glitch is fixed by utilizing an other glitch - this might work well on all configs. Proceed with caution!
    • Tested only on M1 and Monterey.
    Source code(tar.gz)
    Source code(zip)
    BetterDummy-v1.0.0.zip(740.54 KB)
Owner
Istvan T.
Istvan T.
Minecraft-silicon - Generate Apple Silicon-native versions of Minecraft

Minecraft Silicon A dead simple utility to generate Apple Silicon-native Minecra

Cole Feuer 4 Jun 21, 2022
A software bill of materials (SBoM) generator for Swift packages

Swift Package SBoM A software bill of materials (SBoM) generator for Swift packages. Run this command to print a JSON representation of a CycloneDX SB

Mattt 17 Dec 12, 2022
A framework to provide logic designed to prompt users at the ideal moment for a review of your app/software

ReviewKit ReviewKit is a Swift package/framework that provides logic designed to prompt users at the ideal moment for a review of your app. At a basic

Simon Mitchell 25 Jun 7, 2022
Project shows how to unit test asynchronous API calls in Swift using Mocking without using any 3rd party software

UnitTestingNetworkCalls-Swift Project shows how to unit test asynchronous API ca

Gary M 0 May 6, 2022
Because Objective-C should have inherited more from Smalltalk

OpinionatedC Sometimes, Objective-C is just overly verbose. Life is too short to enumerateObjectsUsingBlock and who has the time to create sub-arrays

Leo Schweizer 52 Apr 7, 2022
The simplest way to display the librarie's licences used in your application.

Features • Usage • Translation • Customisation • Installation • License Display a screen with all licences used in your application can be painful to

Florian Gabach 51 Feb 28, 2022
Mac app to change .ipa file app icons and display names

IPAEdit Mac app to change .ipa file app icon, display name, and app version to avoid updates Compatible with macOS 10.11+ Install To install either cl

Ethan Goodhart 23 Dec 28, 2022
Headline News Widget for Pock.You can display the articles fetched by rss.

Headline News Widget for Pock This is a headline news widget plugin for Pock You can display the articles fetched by rss. Demo In the demo video, the

null 11 Aug 30, 2022
Display LaTeX using SwiftUI & LaTeX DSL

Swift LaTeX Display LaTeX using MathJax. The package also provides a custom LaTeX DSL, which enables you write LaTeX the way you write SwiftUI Views.

Vaida 2 Oct 28, 2022
Swift library to develop custom Alexa Skills

AlexaSkillsKit AlexaSkillsKit is a Swift library that allows you to develop custom skills for Amazon Alexa, the voice service that powers Echo. It tak

Claus Höfele 170 Dec 27, 2022
This is a Swift package with support for macOS that allows to start Java Jar's with the default or a custom JVM.

Jar.swift jar runner for macos Jar.swift is created and maintaned with ❥ by Sascha Muellner. What? This is a Swift package with support for macOS that

Swift Package Repository 1 Nov 11, 2021
Google ProtocolBuffers for Apple Swift

Protocol Buffers for Swift An implementation of Protocol Buffers in Swift. Protocol Buffers are a way of encoding structured data in an efficient yet

Alexey Khokhlov 933 Nov 4, 2022
an Apple Watch® BINGO number generator app with histogram and history.

B4-BINGO-Number-Generator an Apple Watch® BINGO number generator app with histogram and history. This is a basic app using the Apple Watch which displ

Thomas Cavalli 1 Dec 7, 2021
Ecolande - Application realisé pendant l'Apple foundation Program.

Ecolande Application realisé pendant l'Apple foundation Program. Ecoland est l'application qui a été réalisé pendant l'Apple Foundation Program. Nous

Bilal Larose 1 Dec 31, 2021
A tool to convert Apple PencilKit data to Scribble Proto3.

ScribbleConverter Example To run the example project, clone the repo, and run pod install from the Example directory first. Requirements Installation

Paul Han 1 Aug 1, 2022
A most fully customization calendar for Apple platforms 📅

KVKCalendar KVKCalendar is a most fully customization calendar. Library consists of five modules for displaying various types of calendar (day, week,

Kviatkovskii Sergei 353 Jan 5, 2023
DDC Library for Apple Silicon Macs

AppleSiliconDDC DDC Library for Apple Silicon Macs Usage Upcoming... For sample implementation take a look at the source code of MonitorControl (as Ar

Istvan T. 7 Oct 7, 2022
A CLI utility to check or uncheck Open Using Rosetta preference for Apple Silicon macs.

SetArchPrefForURL A CLI utility to "check" or "uncheck" "Open Using Rosetta" preference for Apple Silicon macs. Usage: SetArchPrefForURL <path-to-the-

Tapan Thaker 19 Oct 31, 2022
Minecraft-silicon - Generate Apple Silicon-native versions of Minecraft

Minecraft Silicon A dead simple utility to generate Apple Silicon-native Minecra

Cole Feuer 4 Jun 21, 2022
Automated Apple Music Lossless Sample Rate Switching for Audio Devices on Macs.

LosslessSwitcher switches your current audio device's sample rate to match the currently playing lossless song on your Apple Music app, automatically.

Vincent Neo 371 Dec 27, 2022