Brightness OSD potential bugs fixes #126

Closed
opened 2026-06-14 23:06:45 +02:00 by AramJonghu · 4 comments
Collaborator

This could both be an enhancement and/or bug. I thought I should create an issue on this as this was discussed some time ago, but might benefit getting a closer look with the quirks on laptop brightness for example. Also, having a refresher on what is the current state could be helpful.

Issue

Current issue is that the on screen display (OSD) does not live update on brightness changes.

When does it happen?

When invoking a brightnessctl set command. This can be done via hyprland keybinds, manual cli, or a custom made binary which uses brightnessctl.


Is this worth looking into to have it function on Laptops? I did encounter this on my Desktop as well, but I never really change my desktop monitor brightness.

> This could both be an enhancement and/or bug. I thought I should create an issue on this as this was discussed some time ago, but might benefit getting a closer look with the quirks on laptop brightness for example. Also, having a refresher on what is the current state could be helpful. ### Issue Current issue is that the on screen display (OSD) does not live update on brightness changes. ### When does it happen? When invoking a brightnessctl set command. This can be done via hyprland keybinds, manual cli, or a custom made binary which uses brightnessctl. --- Is this worth looking into to have it function on Laptops? I did encounter this on my Desktop as well, but I never really change my desktop monitor brightness.
AramJonghu added the bugenhancement labels 2026-06-14 23:06:45 +02:00
AramJonghu self-assigned this 2026-06-14 23:06:45 +02:00
zach was assigned by AramJonghu 2026-06-14 23:06:45 +02:00
AramJonghu added this to the Zshell board project 2026-06-14 23:06:45 +02:00
Owner

Unfortunately this is not possible, to my knowledge, without constantly polling ddcutil-like commands which is very, very slow and in some cases pause rendering anything at all to the monitor.

The startup lag of ZShell is like 60-80% caused by the initial ddcutil call to fetch brightness at that moment. It is not something I want to do after start. If you want the UI to update when you use keybinds and such for it, then you can bind the keybinds to ZShell's exposed IPC or Hyprland globalshortcuts.

Unfortunately this is not possible, to my knowledge, without constantly polling `ddcutil`-like commands which is very, very slow and in some cases pause rendering anything at all to the monitor. The startup lag of ZShell is like 60-80% caused by the initial `ddcutil` call to fetch brightness at that moment. It is not something I want to do after start. If you want the UI to update when you use keybinds and such for it, then you can bind the keybinds to ZShell's exposed IPC or Hyprland globalshortcuts.
Author
Collaborator

Right, I forgot about the global shortcuts. I will try those and report back. Though yea definitely not good to constantly poll ddcutil.

Right, I forgot about the global shortcuts. I will try those and report back. Though yea definitely not good to constantly poll ddcutil.
Author
Collaborator

Using globalshortcuts seems to work and the OSD responds properly. One thing of note:

  • Brightness cannot be below 1 (or 1%). OLED displays would go completely black. Can this be set somewhere?

EDIT: Also noticed that ddcutil service is off in the settings, but OSD still responds to brightness changes.

Using globalshortcuts seems to work and the OSD responds properly. One thing of note: - Brightness cannot be below 1 (or 1%). OLED displays would go completely black. Can this be set somewhere? EDIT: Also noticed that ddcutil service is off in the settings, but OSD still responds to brightness changes.
Author
Collaborator

@zach you are the goat. I consider the issue closed as per be8b7ae436. Context PR.

@zach you are the goat. I consider the issue closed as per [be8b7ae436](https://git.zach-dev.cc/zach/z-bar-qt/commit/be8b7ae4368a5cf8a99c92fb656cb9470b8046e3). Context [PR](https://git.zach-dev.cc/zach/z-bar-qt/pulls/122).
AramJonghu moved this to Review in Zshell board on 2026-06-17 13:21:22 +02:00
AramJonghu moved this to Done in Zshell board on 2026-06-18 23:13:59 +02:00
Sign in to join this conversation.
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: zach/z-bar-qt#126