atmos/os_lib/clipboard.rs
1// src/os_lib/clipboard.rs
2// AtmOS 共有クリップボードモジュール
3
4extern crate alloc;
5use alloc::string::String;
6use spin::Mutex;
7
8static CLIPBOARD_TEXT: Mutex<String> = Mutex::new(String::new());
9
10/// クリップボードの現在の文字列を取得する。
11pub fn get_text() -> String {
12 CLIPBOARD_TEXT.lock().clone()
13}
14
15/// クリップボードに文字列を設定する。
16pub fn set_text(text: &str) {
17 *CLIPBOARD_TEXT.lock() = String::from(text);
18}
19
20/// クリップボードの内容を消去する。
21pub fn clear() {
22 CLIPBOARD_TEXT.lock().clear();
23}