Skip to content

feat(brightness): add setting to sync all monitors automatically#3150

Open
agokule wants to merge 4 commits into
noctalia-dev:mainfrom
agokule:feat/sync-monitor-brightness
Open

feat(brightness): add setting to sync all monitors automatically#3150
agokule wants to merge 4 commits into
noctalia-dev:mainfrom
agokule:feat/sync-monitor-brightness

Conversation

@agokule

@agokule agokule commented Jun 26, 2026

Copy link
Copy Markdown

Summary

I have added a toggle under brightness.sync_all_monitors in the config schema, which by default is turned off (matches the previous default behaviour). If turned on, it will make it so that when you change the brightness of one monitor, it changes the brightness of all monitors by that amount. This way, all monitors can be synced to the same brightness if the user wants.

Motivation

Personally, I have a setup with 2 identical monitors side-by-side, which is probably a somewhat common setup. Naturally, when you have this setup, you'd want both monitors to always have the same brightness at all times, it looks bad if one is really bright and the other isn't. So, this is a solution to that problem.

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Refactoring
  • Build / packaging

Related Issue

I guess it's related to #2136 and #1289 although these were for v4 and are closed.

Testing

  • Ran just test, all tests passed.
  • Ran noctalia msg brightness-up, brightness-down, and brightness-set to test if the changes affect the IPC as well, and it does.

Manual Coverage

  • Tested on Niri
  • Tested on Hyprland
  • Tested on Sway
  • Tested on another compositor:
  • Tested with multiple monitors

These do not apply to this change:

  • Tested with different bar positions and density settings
  • Tested at different interface scaling values

Screenshots / Videos

image
2026-06-25.19-56-42.mp4

Checklist

  • This PR is ready for review, or it is marked as Draft.
  • I read and followed the relevant guidance in CONTRIBUTING.md.
  • I ran just format with clang-format v22+ installed, or this PR has no code changes.
  • I ran the relevant build or test commands, or explained why they were not run.
  • I self-reviewed the changes.
  • I checked for new warnings or errors.
  • I will update end-user documentation after merge, or this PR does not change user-facing configuration or behavior.
  • I added or updated assets/translations/en.json, or this PR adds no new user-facing strings.
  • I did not edit non-English translation files unless this PR is explicitly for translation tooling, an import/export sync, or a maintainer-requested locale change.
  • I used the existing canonical names for config keys, IPC names, paths, and identifiers.

@agokule agokule changed the title feat: add setting to sync brightness of all monitors automatically feat(brightness): add setting to sync all monitors automatically Jun 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant