n4n0GH / hello

the complete KDE theme
219 stars 26 forks source link

Have window border follow the titlebar color or have an optional override #40

Closed ripefig closed 4 years ago

ripefig commented 4 years ago

When you set a custom color for the titlebar, the color of the border is unaffected. For example if you set a dark titlebar, the border still follows the current system color scheme, resulting in an incoherent appearance.

image

I think it makes more sense to have it follow the titlebar color set in hello preferences by default, with an option to set a separate border color if necessary.

An alternate/supplementary solution would be to allow the border to cut into the chrome on some applications, like on Mac OS (this would require a Kwin effect and probably some additional hackery in the decoration):

image

ripefig commented 4 years ago

The shaders basically solve the problem but I think it still makes sense to have the broder color follow the titlebar color by default.

n4n0GH commented 4 years ago

This already exists; check out the "Window specific settings" option in the customization menu. Reasoning behind this: Qt native applications use a specific color palette to draw the window backgrounds and frame borders. By adhering to this specification, you achieve a somewhat coherent visual aesthetic no matter your border sizes. If however you want to color the frame in the same color as the titlebar, you can do so on a per-window base. Just set it up once and it'll be used whenever you open a new instance of that window. Regarding your idea of providing a alternative color for the frame itself; I like the thought, but it's not possible to draw just the bottom or just the left or right border in color #f00 as far as I know. I'll do some research on that though because I agree to your reasoning of wanting to melt the frame border with the application chrome. It will, however, be available only as a window specific setting.

n4n0GH commented 4 years ago

Coming back to what I wrote earlier; it makes no sense lmao. These are the main areas of a window that we have to consider for this: window_parts Purple is the titlebar, green the borders on the side, blue the border on the bottom and orange is the window content. If users would be able to color the bottom border by default in the color of the titlebar or another color they choose (such as to melt with the application's chrome) but still use wider side borders, the resulting effect would be an overlap of colors outside of the intended scope. This would work fine with the "no side borders" setting, but with any other border setting it'd instantly look like crapola. So as it is right now, you are capable of creating your desired end-result by simply configuring a window that is in need of a new splash of color. This creates a saner behavior for the entire desktop while still giving you enough flexibility to customize the theme and make it fit your needs. I'll close this issue for now, but feel free to continue the discussion.