Per-corner border-radius not applied correctly to unified window decoration
I'm working on a libhandy styling for a custom GTK theme, and discovered a bug with how the border-radiuses are handled with the unified window decoration.
I'm trying to apply border-radius only to the top corners, and use 0px radius in bottom corners. This seems to work correctly only for the outer window border, and the "inside" of the window uses the same radius for all corners.
Here's a screenshot to demonstrate the issue, where the border-radiuses are injected with GTK Inspector when using Adwaita theme:
The injected CSS:
window.csd.unified:not(.solid-csd):not(.fullscreen):not(.tiled):not(.tiled-top):not(.tiled-bottom):not(.tiled-left):not(.tiled-right):not(.maximized) {
border-radius: 20px 20px 0 0;
}
window.csd.unified:not(.solid-csd):not(.fullscreen):not(.tiled):not(.tiled-top):not(.tiled-bottom):not(.tiled-left):not(.tiled-right):not(.maximized) > decoration {
border-radius: 20px 20px 0 0;
}
window.csd.unified:not(.solid-csd):not(.fullscreen):not(.tiled):not(.tiled-top):not(.tiled-bottom):not(.tiled-left):not(.tiled-right):not(.maximized) > decoration-overlay {
border-radius: 20px 20px 0 0;
}
or in SASS, based on the _Adwaita-base.scss
:
window.csd.unified:not(.solid-csd):not(.fullscreen) {
&:not(.tiled):not(.tiled-top):not(.tiled-bottom):not(.tiled-left):not(.tiled-right):not(.maximized) {
&,
> decoration,
> decoration-overlay {
border-radius: 20px 20px 0 0;
}
}
}
Tested with libhandy-1.0.0
.