jaelpark / chamferwm

A tiling X11 window manager with Vulkan compositor.
https://jaelpark.github.io/chamferwm-docs/
BSD 3-Clause "New" or "Revised" License
249 stars 11 forks source link

Cannot change window border width #4

Closed juanitotc closed 5 years ago

juanitotc commented 5 years ago

Assuming the window border is controlled by:

self.borderWidth = (0.005,0.005);

..changing the number does not change the width of the border, which obscures the window controls (maximise, minimise, exit).

jaelpark commented 5 years ago

Thanks for the report. This is because the shader is not taking the pixel density properly into account. It looks fine on some resolutions, but for some others the borders might look too thick. Obviously this has to be further worked on. I will commit a fix at some point soon.

jaelpark commented 5 years ago

I modified the shader a bit so that it scales the borders based on the screen resolution. To change the border width manually, at the moment the only way is to tune the scaling value in the fragment shader and recompile it. Value 1.0 would result in the border thickness you had in your screenshot in #2, and anything smaller scales it down.

borderWidth in the config controls only the gap between the containers. The name might be a bit misleading, and I may have to consider changing it. I'm not sure if I want to associate any configuration attributes with the border width itself, since depending on the shader, the border decoration can be completely arbitrary even in a way that the concept of thickness wouldn't make much sense. The provided fragment shader acts more or less merely as a example default, from which the user can customize the look of the border to whatever they can think of.