Mario, yeah... Also ThinkPads have the same problem, because no event is sent from the kernel.
So, I had the same idea you had to fix this. However the change has to be done at UPower level, since if u-p-s (or you try with gdbus call) calls GetBrigthtness it always get the last cached value.
So, in my opinion, UPower should have a trick to fetch the current value on get, and not return the cached value. In this way we can add a workaround (which I already have in terms of code) to UPS to update the cached brightness when changing it.
Not sure how upstream would see that, but I think we can try.
Mario, yeah... Also ThinkPads have the same problem, because no event is sent from the kernel.
So, I had the same idea you had to fix this. However the change has to be done at UPower level, since if u-p-s (or you try with gdbus call) calls GetBrigthtness it always get the last cached value.
So, in my opinion, UPower should have a trick to fetch the current value on get, and not return the cached value. In this way we can add a workaround (which I already have in terms of code) to UPS to update the cached brightness when changing it.
Not sure how upstream would see that, but I think we can try.