diff --git a/.config/quickshell/modules/sidebarLeft/aiChat/AiMessage.qml b/.config/quickshell/modules/sidebarLeft/aiChat/AiMessage.qml index 4c412719a..b9e75e246 100644 --- a/.config/quickshell/modules/sidebarLeft/aiChat/AiMessage.qml +++ b/.config/quickshell/modules/sidebarLeft/aiChat/AiMessage.qml @@ -168,7 +168,7 @@ Rectangle { MaterialSymbol { id: notVisibleToModelText anchors.centerIn: parent - iconSize: Appearance.font.pixelSize.larger + iconSize: Appearance.font.pixelSize.small color: Appearance.colors.colSubtext text: "visibility_off" } @@ -177,14 +177,26 @@ Rectangle { } } - RowLayout { + ButtonGroup { spacing: 5 AiMessageControlButton { id: copyButton - buttonIcon: "content_copy" + buttonIcon: activated ? "inventory" : "content_copy" + onClicked: { Hyprland.dispatch(`exec wl-copy '${StringUtils.shellSingleQuoteEscape(root.messageData.content)}'`) + copyButton.activated = true + copyIconTimer.restart() + } + + Timer { + id: copyIconTimer + interval: 1500 + repeat: false + onTriggered: { + copyButton.activated = false + } } StyledToolTip { content: qsTr("Copy") diff --git a/.config/quickshell/modules/sidebarLeft/aiChat/AiMessageControlButton.qml b/.config/quickshell/modules/sidebarLeft/aiChat/AiMessageControlButton.qml index 2effec24c..b3a39ce49 100644 --- a/.config/quickshell/modules/sidebarLeft/aiChat/AiMessageControlButton.qml +++ b/.config/quickshell/modules/sidebarLeft/aiChat/AiMessageControlButton.qml @@ -7,14 +7,13 @@ import QtQuick.Controls import QtQuick.Layouts import Quickshell -RippleButton { +GroupButton { id: button property string buttonIcon property bool activated: false toggled: activated - implicitHeight: 30 - implicitWidth: 30 + baseWidth: height contentItem: MaterialSymbol { horizontalAlignment: Text.AlignHCenter