From e87038ca041442c160b4e64cb6dbb7b90cc2a119 Mon Sep 17 00:00:00 2001 From: Levi Neely <141506390+lneely@users.noreply.github.com> Date: Tue, 14 Jul 2026 15:58:46 +0200 Subject: [PATCH] plasmoid: fix highlighted session text unreadable on light themes Replace KirigamiDelegates.RoundedItemDelegate (not available in all Kirigami versions) with PlasmaComponents.ItemDelegate. Add explicit highlightedTextColor bindings to labels and icon in the session list delegate for both KF5 and KF6 builds. --- plasmoid/contents/ui/main-kf5.qml | 14 +++++++++++--- plasmoid/contents/ui/main.qml | 17 ++++++++++++----- 2 files changed, 23 insertions(+), 8 deletions(-) diff --git a/plasmoid/contents/ui/main-kf5.qml b/plasmoid/contents/ui/main-kf5.qml index 90c2ab3..230eb04 100644 --- a/plasmoid/contents/ui/main-kf5.qml +++ b/plasmoid/contents/ui/main-kf5.qml @@ -152,9 +152,11 @@ Item { if (state.startsWith("calling")) return "system-run" return "media-playback-start" } - color: modelData.state !== "idle" - ? Kirigami.Theme.positiveTextColor - : Kirigami.Theme.textColor + color: sessionDelegate.highlighted + ? Kirigami.Theme.highlightedTextColor + : (modelData.state !== "idle" + ? Kirigami.Theme.positiveTextColor + : Kirigami.Theme.textColor) } PlasmaComponents.Label { @@ -165,6 +167,9 @@ Item { font.family: "monospace" font.pointSize: Kirigami.Theme.defaultFont.pointSize visible: !sessionDelegate.renaming + color: sessionDelegate.highlighted + ? Kirigami.Theme.highlightedTextColor + : Kirigami.Theme.textColor } TextField { @@ -200,6 +205,9 @@ Item { opacity: 0.7 font.pointSize: Kirigami.Theme.defaultFont.pointSize visible: !sessionDelegate.renaming + color: sessionDelegate.highlighted + ? Kirigami.Theme.highlightedTextColor + : Kirigami.Theme.textColor } PlasmaComponents.ToolButton { diff --git a/plasmoid/contents/ui/main.qml b/plasmoid/contents/ui/main.qml index d34197d..8f796b3 100644 --- a/plasmoid/contents/ui/main.qml +++ b/plasmoid/contents/ui/main.qml @@ -6,7 +6,6 @@ import org.kde.plasma.plasmoid import org.kde.plasma.components as PlasmaComponents import org.kde.plasma.extras as PlasmaExtras import org.kde.kirigami as Kirigami -import org.kde.kirigami.delegates as KirigamiDelegates import org.ollie.private as Ollie PlasmoidItem { @@ -139,7 +138,7 @@ PlasmoidItem { clip: true model: dbus.sessions - delegate: KirigamiDelegates.RoundedItemDelegate { + delegate: PlasmaComponents.ItemDelegate { id: sessionDelegate width: sessionList.width highlighted: modelData.id === dbus.activeSessionId @@ -158,9 +157,11 @@ PlasmoidItem { if (state.startsWith("calling")) return "system-run" return "media-playback-start" } - color: modelData.state !== "idle" - ? Kirigami.Theme.positiveTextColor - : Kirigami.Theme.textColor + color: sessionDelegate.highlighted + ? Kirigami.Theme.highlightedTextColor + : (modelData.state !== "idle" + ? Kirigami.Theme.positiveTextColor + : Kirigami.Theme.textColor) } PlasmaComponents.Label { @@ -171,6 +172,9 @@ PlasmoidItem { font.family: "monospace" font.pixelSize: Kirigami.Theme.defaultFont.pixelSize visible: !sessionDelegate.renaming + color: sessionDelegate.highlighted + ? Kirigami.Theme.highlightedTextColor + : Kirigami.Theme.textColor } TextField { @@ -206,6 +210,9 @@ PlasmoidItem { opacity: 0.7 font.pixelSize: Kirigami.Theme.smallFont.pixelSize visible: !sessionDelegate.renaming + color: sessionDelegate.highlighted + ? Kirigami.Theme.highlightedTextColor + : Kirigami.Theme.textColor } PlasmaComponents.ToolButton {