From: Claudio Cambra Date: Thu, 11 May 2023 06:10:30 +0000 (+0800) Subject: Also customise appearance of copy button in sharedelegate when clicked X-Git-Tag: archive/raspbian/3.16.7-1_deb13u1+rpi1~1^2~12^2~10^2~47^2~1 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=0419e293951fa894ac39b6444201fbeea6155983;p=nextcloud-desktop.git Also customise appearance of copy button in sharedelegate when clicked Signed-off-by: Claudio Cambra --- diff --git a/src/gui/filedetails/ShareDelegate.qml b/src/gui/filedetails/ShareDelegate.qml index e48deaf4d..9c7d5a730 100644 --- a/src/gui/filedetails/ShareDelegate.qml +++ b/src/gui/filedetails/ShareDelegate.qml @@ -175,30 +175,50 @@ GridLayout { CustomButton { id: copyLinkButton + function copyShareLink() { + clipboardHelper.text = root.link; + clipboardHelper.selectAll(); + clipboardHelper.copy(); + clipboardHelper.clear(); + + shareLinkCopied = true; + shareLinkCopyTimer.start(); + } + + property bool shareLinkCopied: false + Layout.alignment: Qt.AlignCenter - Layout.preferredWidth: Style.iconButtonWidth - Layout.preferredHeight: width + Layout.preferredWidth: shareLinkCopied ? implicitWidth : Style.iconButtonWidth + Layout.preferredHeight: Style.iconButtonWidth toolTipText: qsTr("Copy share link location") - bgColor: Style.lightHover - bgNormalOpacity: 0 + text: shareLinkCopied ? qsTr("Copied!") : "" + textColor: Style.ncHeaderTextColor + contentsFont.bold: true + bgColor: shareLinkCopied ? Style.positiveColor : Style.lightHover + bgNormalOpacity: shareLinkCopied ? 1 : 0 - imageSource: "image://svgimage-custom-color/copy.svg/" + Style.ncTextColor + imageSource: shareLinkCopied ? "image://svgimage-custom-color/copy.svg/" + Style.ncHeaderTextColor : + "image://svgimage-custom-color/copy.svg/" + Style.ncTextColor icon.width: 16 icon.height: 16 visible: root.isLinkShare || root.isInternalLinkShare enabled: visible - onClicked: { - clipboardHelper.text = root.link; - clipboardHelper.selectAll(); - clipboardHelper.copy(); - clipboardHelper.clear(); + onClicked: copyShareLink() + + TextEdit { + id: clipboardHelper + visible: false } - TextEdit { id: clipboardHelper; visible: false} + Timer { + id: shareLinkCopyTimer + interval: Style.veryLongAnimationDuration + onTriggered: copyLinkButton.shareLinkCopied = false + } } CustomButton {