launcher v1

This commit is contained in:
Benjamin Palko 2025-08-19 23:31:39 -04:00
parent 8504f8ddd2
commit 3e1eb1b014
12 changed files with 1604 additions and 4 deletions

View file

@ -0,0 +1,57 @@
import qs.config
import qs.widgets
import Quickshell
import Quickshell.Widgets
import QtQuick
import QtQuick.Layouts
Item {
id: root
required property DesktopEntry modelData
required property int index
property bool active: false
anchors.margins: 8
anchors.left: parent?.left
anchors.right: parent?.right
implicitHeight: grid.height
GridLayout {
id: grid
flow: GridLayout.TopToBottom
columnSpacing: 8
rowSpacing: 2
columns: 2
rows: 2
anchors.left: root?.left
anchors.right: root?.right
IconImage {
Layout.columnSpan: 1
Layout.rowSpan: 2
source: Quickshell.iconPath(root.modelData.runInTerminal ? "terminal-app" : root.modelData.icon, "image-missing")
implicitSize: 32
}
StyledText {
text: root.modelData.name.trim()
Layout.fillWidth: true
color: root.active ? Theme.palette.primarycontent : Theme.palette.basecontent
font.pixelSize: 14
font.bold: true
}
StyledText {
text: root.modelData.comment != "" ? root.modelData.comment : root.modelData.genericName
Layout.fillWidth: true
color: root.active ? Theme.palette.primarycontent : Theme.palette.basecontent
font.pixelSize: 10
elide: Text.ElideRight
}
}
}