Advance Wayland and KDE package bring-up

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
2026-04-14 10:51:06 +01:00
parent 51f3c21121
commit cf12defd28
15214 changed files with 20594243 additions and 269 deletions
@@ -0,0 +1,56 @@
/*
* SPDX-FileCopyrightText: 2018 Eike Hein <hein@kde.org>
* SPDX-FileCopyrightText: 2018 Marco Martin <mart@kde.org>
* SPDX-FileCopyrightText: 2018 Kai Uwe Broulik <kde@privat.broulik.de>
*
* SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick
import org.kde.kirigami as Kirigami
import org.kde.kirigami.templates as KT
KT.InlineMessage {
id: root
// a rectangle padded with anchors.margins is used to simulate a border
padding: bgFillRect.anchors.margins + Kirigami.Units.smallSpacing
background: Kirigami.ShadowedRectangle {
id: bgBorderRect
color: switch (root.type) {
case Kirigami.MessageType.Positive: return Kirigami.Theme.positiveTextColor;
case Kirigami.MessageType.Warning: return Kirigami.Theme.neutralTextColor;
case Kirigami.MessageType.Error: return Kirigami.Theme.negativeTextColor;
default: return Kirigami.Theme.activeTextColor;
}
radius: Kirigami.Units.cornerRadius
shadow.size: 12
shadow.xOffset: 0
shadow.yOffset: 1
shadow.color: Qt.rgba(0, 0, 0, 0.5)
Rectangle {
id: bgFillRect
anchors.fill: parent
anchors.margins: 1
color: Kirigami.Theme.backgroundColor
radius: bgBorderRect.radius
}
Rectangle {
anchors.fill: bgFillRect
color: bgBorderRect.color
opacity: 0.20
radius: bgFillRect.radius
}
}
}
@@ -0,0 +1,96 @@
/*
* SPDX-FileCopyrightText: 2015 Marco Martin <mart@kde.org>
*
* SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick
import QtQuick.Controls.Material
import org.kde.kirigami as Kirigami
Kirigami.BasicThemeDefinition {
textColor: Material.foreground
disabledTextColor: Qt.alpha(Material.foreground, 0.6)
highlightColor: Material.accent
//FIXME: something better?
highlightedTextColor: Material.background
backgroundColor: Material.background
alternateBackgroundColor: Qt.darker(Material.background, 1.05)
hoverColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
focusColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
activeTextColor: Material.primary
activeBackgroundColor: Material.primary
linkColor: "#2980B9"
linkBackgroundColor: "#2980B9"
visitedLinkColor: "#7F8C8D"
visitedLinkBackgroundColor: "#7F8C8D"
negativeTextColor: "#DA4453"
negativeBackgroundColor: "#DA4453"
neutralTextColor: "#F67400"
neutralBackgroundColor: "#F67400"
positiveTextColor: "#27AE60"
positiveBackgroundColor: "#27AE60"
buttonTextColor: Material.foreground
buttonBackgroundColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, false, false)
buttonAlternateBackgroundColor: Qt.darker(Material.buttonColor, 1.05)
buttonHoverColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
buttonFocusColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
viewTextColor: Material.foreground
viewBackgroundColor: Material.dialogColor
viewAlternateBackgroundColor: Qt.darker(Material.dialogColor, 1.05)
viewHoverColor: Material.listHighlightColor
viewFocusColor: Material.listHighlightColor
selectionTextColor: Material.primaryHighlightedTextColor
selectionBackgroundColor: Material.textSelectionColor
selectionAlternateBackgroundColor: Qt.darker(Material.textSelectionColor, 1.05)
selectionHoverColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
selectionFocusColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
tooltipTextColor: fontMetrics.Material.foreground
tooltipBackgroundColor: fontMetrics.Material.tooltipColor
tooltipAlternateBackgroundColor: Qt.darker(Material.tooltipColor, 1.05)
tooltipHoverColor: fontMetrics.Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
tooltipFocusColor: fontMetrics.Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
complementaryTextColor: fontMetrics.Material.foreground
complementaryBackgroundColor: fontMetrics.Material.background
complementaryAlternateBackgroundColor: Qt.lighter(fontMetrics.Material.background, 1.05)
complementaryHoverColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
complementaryFocusColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
headerTextColor: fontMetrics.Material.primaryTextColor
headerBackgroundColor: fontMetrics.Material.primaryColor
headerAlternateBackgroundColor: Qt.lighter(fontMetrics.Material.primaryColor, 1.05)
headerHoverColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
headerFocusColor: Material.buttonColor(Material.theme, Material.background, Material.accent, true, false, true, false)
defaultFont: fontMetrics.font
property list<QtObject> children: [
TextMetrics {
id: fontMetrics
//this is to get a source of dark colors
Material.theme: Material.Dark
}
]
onSync: object => {
//TODO: actually check if it's a dark or light color
if (object.Kirigami.Theme.colorSet === Kirigami.Theme.Complementary) {
object.Material.theme = Material.Dark
} else {
object.Material.theme = Material.Light
}
object.Material.foreground = object.Kirigami.Theme.textColor
object.Material.background = object.Kirigami.Theme.backgroundColor
object.Material.primary = object.Kirigami.Theme.highlightColor
object.Material.accent = object.Kirigami.Theme.highlightColor
}
}
@@ -0,0 +1,31 @@
/*
* SPDX-FileCopyrightText: 2016 Marco Martin <mart@kde.org>
*
* SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick
import org.kde.kirigami as Kirigami
import "../../templates" as T
T.AbstractApplicationHeader {
id: root
// Always use header bg color for toolbar (if available), even if the page
// it's located on uses a different color set
Kirigami.Theme.inherit: false
Kirigami.Theme.colorSet: Kirigami.Theme.Header
background: Rectangle {
color: Kirigami.Theme.backgroundColor
Kirigami.Separator {
visible: root.separatorVisible && (!root.page || !root.page.header || !root.page.header.visible || root.page.header.toString().indexOf("ToolBar") === -1)
anchors {
left: parent.left
right: parent.right
bottom: root.y <= 0 ? parent.bottom : undefined
top: root.y <= 0 ? undefined : parent.top
}
}
}
}
@@ -0,0 +1,91 @@
/*
* SPDX-FileCopyrightText: 2015 Marco Martin <mart@kde.org>
*
* SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick
import org.kde.kirigami as Kirigami
Kirigami.BasicThemeDefinition {
textColor: palette.windowText
disabledTextColor: disabledPalette.windowText
highlightColor: palette.highlight
highlightedTextColor: palette.highlightedText
backgroundColor: palette.window
alternateBackgroundColor: Qt.darker(palette.window, 1.05)
activeTextColor: palette.highlightedText
activeBackgroundColor: palette.highlight
linkColor: "#2980B9"
linkBackgroundColor: "#2980B9"
visitedLinkColor: "#7F8C8D"
visitedLinkBackgroundColor: "#7F8C8D"
hoverColor: palette.highlight
focusColor: palette.highlight
negativeTextColor: "#DA4453"
negativeBackgroundColor: "#DA4453"
neutralTextColor: "#F67400"
neutralBackgroundColor: "#F67400"
positiveTextColor: "#27AE60"
positiveBackgroundColor: "#27AE60"
buttonTextColor: palette.buttonText
buttonBackgroundColor: palette.button
buttonAlternateBackgroundColor: Qt.darker(palette.button, 1.05)
buttonHoverColor: palette.highlight
buttonFocusColor: palette.highlight
viewTextColor: palette.text
viewBackgroundColor: palette.base
viewAlternateBackgroundColor: palette.alternateBase
viewHoverColor: palette.highlight
viewFocusColor: palette.highlight
selectionTextColor: palette.highlightedText
selectionBackgroundColor: palette.highlight
selectionAlternateBackgroundColor: Qt.darker(palette.highlight, 1.05)
selectionHoverColor: palette.highlight
selectionFocusColor: palette.highlight
tooltipTextColor: palette.text
tooltipBackgroundColor: palette.base
tooltipAlternateBackgroundColor: palette.alternateBase
tooltipHoverColor: palette.highlight
tooltipFocusColor: palette.highlight
complementaryTextColor: palette.text
complementaryBackgroundColor: palette.base
complementaryAlternateBackgroundColor: palette.alternateBase
complementaryHoverColor: palette.highlight
complementaryFocusColor: palette.highlight
headerTextColor: palette.text
headerBackgroundColor: palette.base
headerAlternateBackgroundColor: palette.alternateBase
headerHoverColor: palette.highlight
headerFocusColor: palette.highlight
defaultFont: fontMetrics.font
property list<QtObject> children: [
TextMetrics {
id: fontMetrics
},
SystemPalette {
id: palette
colorGroup: SystemPalette.Active
},
SystemPalette {
id: disabledPalette
colorGroup: SystemPalette.Disabled
}
]
function __propagateColorSet(object, context) {}
function __propagateTextColor(object, color) {}
function __propagateBackgroundColor(object, color) {}
function __propagatePrimaryColor(object, color) {}
function __propagateAccentColor(object, color) {}
}