summaryrefslogtreecommitdiffstats
path: root/src/utils/clipboard.rs
diff options
context:
space:
mode:
authorsigoden <sigoden@gmail.com>2024-10-16 22:01:10 +0800
committerGitHub <noreply@github.com>2024-10-16 22:01:10 +0800
commit81db81518adb2509bc018f1942ddc3308df521f3 (patch)
tree43089c41cc4d65f1b99fadd18ef429b8e1ebf22e /src/utils/clipboard.rs
parent0673dca816d733b703a447882b0fcbe83fcdb7e5 (diff)
downloadaichat-81db81518adb2509bc018f1942ddc3308df521f3.tar.gz
refactor: clipboard::set_text (#928)
Avoid copying no content on Linux
Diffstat (limited to 'src/utils/clipboard.rs')
-rw-r--r--src/utils/clipboard.rs6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/utils/clipboard.rs b/src/utils/clipboard.rs
index 6617fa4..c4444e3 100644
--- a/src/utils/clipboard.rs
+++ b/src/utils/clipboard.rs
@@ -8,7 +8,11 @@ lazy_static::lazy_static! {
pub fn set_text(text: &str) -> anyhow::Result<()> {
let mut clipboard = CLIPBOARD.lock().unwrap();
match clipboard.as_mut() {
- Some(clipboard) => clipboard.set_text(text)?,
+ Some(clipboard) => {
+ clipboard.set_text(text)?;
+ #[cfg(target_os = "linux")]
+ std::thread::sleep(std::time::Duration::from_millis(50));
+ }
None => anyhow::bail!("Failed to copy the text; no available clipboard"),
}
Ok(())