1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
//! # Clipboard Support
//!
//! Cross-platform clipboard access for MinUI applications.
//! Supports copying text to and reading from the system clipboard.
//!
//! This feature is optional and requires the `clipboard` feature flag.
//!
//! # Examples
//!
//! ```rust
//! use minui::input::Clipboard;
//!
//! // Copy text to clipboard
//! let clipboard = Clipboard::new()?;
//! clipboard.copy("Hello, MinUI!")?;
//!
//! // Paste from clipboard
//! let text = clipboard.paste()?;
//! println!("Clipboard contains: {}", text);
//! ```
//!
//! # Feature Flag
//!
//! To enable clipboard support, add the feature to your `Cargo.toml`:
//!
//! ```toml
//! [dependencies]
//! minui = { version = "0.6", features = ["clipboard"] }
//! ```
use Clipboard as ArboardClipboard;
use Error as StdError;
/// Clipboard access for copying and pasting text.
///
/// Provides cross-platform clipboard access using the `arboard` crate.
/// Supports Windows, macOS, and Linux.
///
/// # Examples
///
/// ```rust
/// use minui::input::Clipboard;
///
/// # #[cfg(feature = "clipboard")]
/// # fn main() -> Result<(), Box<dyn std::error::Error>> {
/// let clipboard = Clipboard::new()?;
/// clipboard.copy("Hello, clipboard!")?;
/// let text = clipboard.paste()?;
/// println!("Got: {}", text);
/// # Ok(())
/// # }
/// ```