Hi !
I’m currently trying to write a QtQuickControls style based on org.kde.desktop that more closely integrates the Oxygen QStyle to QML and Kirigami applications.
I’m having a couple of issues:
- ApplicationWindow’s background work with bare QML applications, but not with Kirigami
- MenuItem style applies on Kirigami menus… but not with bare QML applications
Both can be shown in the following screenshots:
Kirigami application. The menu style applies entirely, but the application window’s background doesn’t use my style’s background. When I pop a menuBar, my style’s background does appear on the bar: it seems like something from either Kirigami or the org.kde.desktop style has a non-transparent background, which draws over the window’s background. I just can’t figure out what: I’ve replaced the backgrounds of Page, Pane, ToolBar, MenuBar, Drawer with transparent rectangles, and it only worked for the MenuBar. Any hint on how to move forward from here would help !
Plain QML application. Here, my gradient background does show. However, the MenuItem don’t use the style from the MenuItem template. The reason it happens is because I’m describing the menu using Actions rather than MenuItem, which is something I believe became possible with Qt6… but with other styles (like Material), the style applies in both cases. Is there something I’m doing wrong ?
The way it works is, I’m trying to inherit as much as possible from org.kde.desktop (which I know isn’t designed to just reproduce oxygen, but any QStyle in general, but it saves me time for the most Oxygen elements, which already render as expected).
So the basis for all my elements is something like this:
import QtQuick
import org.kde.desktop as Style
Style.Page {
background: Rectangle {
color: "transparent"
}
}
For most elements, it works as I would expect. I do have issues with scrollbars and tooltips. They do not render as they would with the org.kde.desktop style: instead, it looks more like org.kde.breeze, with slightly different colors. It’s a bit puzzling, but it probably won’t be too hard to reimplement those from scratch anyway.
I’m also wondering if there could be a way to swap the QT_QUICK_CONTROLS_STYLE environment varibable on a global level, with systemsettings, when changing the application style. Could the QStyle commuicate that there’s a custom QtQuickControls style that should be use along with them (like with Breeze, and hopefully one day with Oxygen if I can complete this work) ?
Any thoughts, and any help would be very welcome !


