Proposal: Kirigami, QQuickStyle, Window backgrounds

Michael Martin Moro michael at planed.es
Sat Jan 31 00:21:06 GMT 2026


Hi !

Some time last year, I implemented a very simple QQuickStyle for Oxygen. 
However, Kirigami applications wouldn't display the iconic gradient 
background, as Kirigami Pages feature their own background. Upon further 
inspection, I figured a/the reason why that background was enforced: 
StackView transitions between pages required it, as a transparent 
background visually breaks the transitions.

I came up with the following patch:
https://invent.kde.org/plaristote/kirigami

First thing it does, is getting rid of the Page's custom background, 
which allows the Window's background to be visible (at least when the 
Window component is used, which isn't always the case: I believe 
systemsettings is an instance of that).

Since that breaks the page transitions, it also uses ShaderEffect on the 
Page element, which duplicates the Window's background, as an underlay, 
updating the offset as the transition updates, so the background remains 
still. The effect gets enabled when the StackView status for the page is 
either Activating or Deactivating.

Lastly, I added a test at tests/BackgroundTest.qml, which creates a 
Window using a background with flashy colors in a gradient: opening a 
new page should show the page's content being effectively hidden or 
revealed by the next page, as it slides over the previous page, all 
while the background seems to remain still.

I'm not quite sure how acceptable that would be. It can't be as 
efficient as displaying a plain background. And I don't have a device to 
check just how that behaves on limited hardware running Plasma 
Mobile. I'm also not sure how to start a pull request, assuming that is 
even appropriate at this point.

I'm hoping to get some pointers from the people directly involved with 
the KDE frameworks.

Cheers !





More information about the kde-core-devel mailing list