fix chain update
Signed-off-by: fufesou <shuanglongchen@yeah.net>
This commit is contained in:
parent
a767df185f
commit
6e61cfb381
@ -95,6 +95,11 @@ lazy_static::lazy_static! {
|
||||
static ref TEXT_CLIPBOARD_STATE: Arc<Mutex<TextClipboardState>> = Arc::new(Mutex::new(TextClipboardState::new()));
|
||||
}
|
||||
|
||||
#[cfg(not(any(target_os = "android", target_os = "ios")))]
|
||||
pub fn update_clipboard_text(text: String) {
|
||||
*OLD_CLIPBOARD_TEXT.lock().unwrap() = text;
|
||||
}
|
||||
|
||||
#[cfg(not(any(target_os = "android", target_os = "ios")))]
|
||||
pub fn get_key_state(key: enigo::Key) -> bool {
|
||||
use enigo::KeyboardControllable;
|
||||
|
@ -187,9 +187,14 @@ pub fn update_clipboard(clipboard: Clipboard, old: Option<&Arc<Mutex<String>>>)
|
||||
}
|
||||
match ClipboardContext::new() {
|
||||
Ok(mut ctx) => {
|
||||
let side = if old.is_none() { "host" } else { "client" };
|
||||
let host_side = "host";
|
||||
let client_side = "client";
|
||||
let side = if old.is_none() { host_side } else { client_side };
|
||||
let old = if let Some(old) = old { old } else { &CONTENT };
|
||||
*old.lock().unwrap() = content.clone();
|
||||
if side == client_side {
|
||||
crate::client::update_clipboard_text(content.clone());
|
||||
}
|
||||
let _lock = ARBOARD_MTX.lock().unwrap();
|
||||
allow_err!(ctx.set_text(content));
|
||||
log::debug!("{} updated on {}", CLIPBOARD_NAME, side);
|
||||
|
Loading…
x
Reference in New Issue
Block a user