Sitelet https://github.com/MonitorControl/MonitorControl/pull/1879
Skip to content

feat: Add option to ignore built-in display in combined slider mode - #1879

Open
jonaaix wants to merge 1 commit into
MonitorControl:mainfrom
jonaaix:feature/combined-slider-ignore-builtin
Open

feat: Add option to ignore built-in display in combined slider mode#1879
jonaaix wants to merge 1 commit into
MonitorControl:mainfrom
jonaaix:feature/combined-slider-ignore-builtin

Conversation

@jonaaix

@jonaaix jonaaix commented Jul 23, 2026

Copy link
Copy Markdown

Add option to ignore built-in display in combined slider mode

Summary

When "Use combined slider for all displays" is enabled, the combined slider also controls the built-in MacBook display. Since the built-in display gets significantly brighter than typical external monitors at the same relative setting, it always stands out — making the combined slider practically unusable in everyday use.

This PR adds a new "Ignore built-in display" checkbox, shown only when combined slider mode is selected. When enabled, the built-in display is excluded from combined control.

What changed

  • New checkbox in Settings → App menu → Multiple displays, visible only when "Use combined slider for all displays" is selected (same show/hide behavior as the existing hint text below the popup)
  • Menu slider: the built-in display is no longer added to the combined slider handler, so the slider only controls external displays
  • Keyboard control: when "All screens" is selected for keyboard brightness, the built-in display is filtered out of the affected displays as well (both media keys and custom shortcuts go through getAffectedDisplays, so both paths are covered with a single change)
  • The built-in display's brightness remains fully controllable via Control Center / System Settings

Implementation notes

  • New preference key combineExcludeBuiltin (defaults to off — no behavior change for existing users)
  • The condition (combined mode + option enabled) is encapsulated in DisplayManager.isBuiltinExcludedFromCombinedSlider() and used by both MenuHandler and DisplayManager.getAffectedDisplays()
  • Localizations added for all 20 languages (following the pattern of feat: support "only when external display show menu bar icon" option #1817)

Screenshots

image

How to test

  1. Settings → App menu → Multiple displays → select "Use combined slider for all displays"
  2. Enable the new "Ignore built-in display" checkbox
  3. Move the combined brightness slider in the menu → only external displays change, built-in display stays
  4. Press brightness keys (with keyboard brightness set to "All screens") → again only external displays change
  5. Disable the checkbox → built-in display is controlled together with all displays again

When 'Use combined slider for all displays' is enabled, a new
'Ignore built-in display' checkbox appears in the App menu settings.
When checked, the built-in (MacBook) display is excluded from the
combined menu slider and from 'all screens' keyboard brightness
control, since its much higher peak brightness otherwise stands out
next to external displays.
@waydabber

Copy link
Copy Markdown
Member

Thank you for putting this together and for the clear description and localizations! This is a thoughtful and well-executed contribution.

My concern is that the new App menu option also changes the behavior of the separate Keyboard setting: “All screens” would no longer actually control all screens. Changing the App menu slider mode would therefore silently change keyboard behavior as well, which could be confusing.

Because of this coupling, I won’t merge the PR, but the contribution is still valuable. I’ll leave it open as a fork recommendation for anyone specifically looking for a MonitorControl version with this behavior. Thanks again for the work and effort!

@waydabber waydabber added the AI contribution / fork recommendation Unplanned PR (typically AI) with improvements which may be of interest to the community label Aug 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AI contribution / fork recommendation Unplanned PR (typically AI) with improvements which may be of interest to the community

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants