diff options
| author | Nippy <nippy@rp1.hu> | 2026-05-08 19:50:49 +0200 |
|---|---|---|
| committer | Nippy <nippy@rp1.hu> | 2026-05-08 19:50:49 +0200 |
| commit | 3462bcc46ecf74f576ea4397f16492c16bd75b10 (patch) | |
| tree | c5ab7aef4498647e057bda8d49c11e5f9dda74c9 /raveos-hyprland-theme/theme-data/dms/Modules/ControlCenter/Components/HeaderPane.qml | |
| parent | 56616f693b4f263cbf0d47da43b67424efa6022d (diff) | |
| download | RaveOS-PKGBUILD-3462bcc46ecf74f576ea4397f16492c16bd75b10.tar.gz RaveOS-PKGBUILD-3462bcc46ecf74f576ea4397f16492c16bd75b10.zip | |
raveos update
Diffstat (limited to 'raveos-hyprland-theme/theme-data/dms/Modules/ControlCenter/Components/HeaderPane.qml')
| -rw-r--r-- | raveos-hyprland-theme/theme-data/dms/Modules/ControlCenter/Components/HeaderPane.qml | 118 |
1 files changed, 118 insertions, 0 deletions
diff --git a/raveos-hyprland-theme/theme-data/dms/Modules/ControlCenter/Components/HeaderPane.qml b/raveos-hyprland-theme/theme-data/dms/Modules/ControlCenter/Components/HeaderPane.qml new file mode 100644 index 0000000..d36c5b6 --- /dev/null +++ b/raveos-hyprland-theme/theme-data/dms/Modules/ControlCenter/Components/HeaderPane.qml @@ -0,0 +1,118 @@ +import QtQuick +import qs.Common +import qs.Services +import qs.Widgets + +Rectangle { + id: root + + LayoutMirroring.enabled: I18n.isRtl + LayoutMirroring.childrenInherit: true + + property bool editMode: false + + signal powerButtonClicked + signal lockRequested + signal editModeToggled + signal settingsButtonClicked + + Component.onCompleted: DgopService.addRef("system") + Component.onDestruction: DgopService.removeRef("system") + + implicitHeight: 70 + radius: Theme.cornerRadius + color: Theme.withAlpha(Theme.surfaceContainerHigh, Theme.popupTransparency) + border.color: Qt.rgba(Theme.outline.r, Theme.outline.g, Theme.outline.b, 0.08) + border.width: 0 + + Row { + anchors.left: parent.left + anchors.verticalCenter: parent.verticalCenter + anchors.leftMargin: Theme.spacingL + anchors.rightMargin: Theme.spacingL + spacing: Theme.spacingM + + DankCircularImage { + id: avatarContainer + + width: 60 + height: 60 + imageSource: { + if (PortalService.profileImage === "") + return ""; + + if (PortalService.profileImage.startsWith("/")) + return "file://" + PortalService.profileImage; + + return PortalService.profileImage; + } + fallbackIcon: "person" + } + + Column { + anchors.verticalCenter: parent.verticalCenter + spacing: 2 + + Typography { + text: UserInfoService.fullName || UserInfoService.username || I18n.tr("User") + style: Typography.Style.Subtitle + color: Theme.surfaceText + } + + Typography { + text: DgopService.uptime || I18n.tr("Unknown") + style: Typography.Style.Caption + color: Theme.surfaceVariantText + } + } + } + + Row { + id: actionButtonsRow + anchors.right: parent.right + anchors.verticalCenter: parent.verticalCenter + anchors.rightMargin: Theme.spacingXS + spacing: Theme.spacingXS + + DankActionButton { + buttonSize: 36 + iconName: "lock" + iconSize: Theme.iconSize - 4 + iconColor: Theme.surfaceText + backgroundColor: "transparent" + onClicked: { + root.lockRequested(); + } + } + + DankActionButton { + buttonSize: 36 + iconName: "power_settings_new" + iconSize: Theme.iconSize - 4 + iconColor: Theme.surfaceText + backgroundColor: "transparent" + onClicked: root.powerButtonClicked() + } + + DankActionButton { + buttonSize: 36 + iconName: "settings" + iconSize: Theme.iconSize - 4 + iconColor: Theme.surfaceText + backgroundColor: "transparent" + onClicked: { + root.settingsButtonClicked(); + PopoutService.focusOrToggleSettings(); + } + } + + DankActionButton { + buttonSize: 36 + iconName: editMode ? "done" : "edit" + iconSize: Theme.iconSize - 4 + iconColor: editMode ? Theme.primary : Theme.surfaceText + backgroundColor: "transparent" + onClicked: root.editModeToggled() + } + } +} |