mirror of
https://github.com/nextcloud/desktop.git
synced 2025-10-26 11:17:43 +00:00
Temporarily change copy share link button image after clicking
Signed-off-by: Claudio Cambra <claudio.cambra@nextcloud.com>
This commit is contained in:
parent
540eb11bf2
commit
30673976be
@ -13,6 +13,9 @@ class ShareTableItemView: NSTableCellView {
|
||||
@IBOutlet private weak var label: NSTextField!
|
||||
@IBOutlet private weak var copyLinkButton: NSButton!
|
||||
@IBOutlet private weak var optionsButton: NSButton!
|
||||
private var originalCopyImage: NSImage?
|
||||
private var copiedButtonImage: NSImage?
|
||||
private var tempButtonTimer: Timer?
|
||||
|
||||
var share: NKShare? {
|
||||
didSet {
|
||||
@ -38,5 +41,25 @@ class ShareTableItemView: NSTableCellView {
|
||||
let pasteboard = NSPasteboard.general
|
||||
pasteboard.declareTypes([.string], owner: nil)
|
||||
pasteboard.setString(share.url, forType: .string)
|
||||
|
||||
guard tempButtonTimer == nil else { return }
|
||||
|
||||
originalCopyImage = copyLinkButton.image
|
||||
copiedButtonImage = NSImage(
|
||||
systemSymbolName: "checkmark.circle.fill",
|
||||
accessibilityDescription: "Public link has been copied icon"
|
||||
)
|
||||
var config = NSImage.SymbolConfiguration(scale: .medium)
|
||||
if #available(macOS 12.0, *) {
|
||||
config = config.applying(.init(hierarchicalColor: .systemGreen))
|
||||
}
|
||||
copiedButtonImage = copiedButtonImage?.withSymbolConfiguration(config)
|
||||
copyLinkButton.image = copiedButtonImage
|
||||
tempButtonTimer = Timer.scheduledTimer(withTimeInterval: 3.0, repeats: false) { timer in
|
||||
self.copyLinkButton.image = self.originalCopyImage
|
||||
self.copiedButtonImage = nil
|
||||
self.tempButtonTimer?.invalidate()
|
||||
self.tempButtonTimer = nil
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user