Clipboard monitoring library.
- Windows - uses dummy window to receive messages when clipboard changes;
- Linux - uses x11_clipboard
- MacOS - uses polling via
NSPasteboard::changeCount
as there is no event notification.
This project exports Master
struct that provides simple way to handle clipboard updates.
Example:
use clipboard_master::{Master, ClipboardHandler, CallbackResult};
use std::io;
struct Handler;
impl ClipboardHandler for Handler {
fn on_clipboard_change(&mut self) -> CallbackResult {
println!("Clipboard change happened!");
CallbackResult::Next
}
fn on_clipboard_error(&mut self, error: io::Error) -> CallbackResult {
eprintln!("Error: {}", error);
CallbackResult::Next
}
}
fn main() {
let _ = Master::new(Handler).run();
}