5个版本
0.1.4 | 2023年5月7日 |
---|---|
0.1.3 | 2023年2月16日 |
0.1.2 | 2022年12月1日 |
0.1.1 | 2022年11月29日 |
0.1.0 | 2022年11月28日 |
#454 in Unix APIs
9KB
180 行
Linux上的焦点窗口更改迭代器
示例用法
以下代码将打印每次活动窗口更改时获得焦点的窗口。
window
可以是 None
,如果没有活动窗口。
use focus_monitor::FocusMonitor;
fn main() -> anyhow::Result<()> {
let focus_monitor = FocusMonitor::try_new()?;
for window in focus_monitor {
let window = window?;
println!("{:?}", window);
}
Ok(())
}
异步
要启用 AsyncFocusMonitor
,请在 Cargo.toml
中使用 features=["tokio"]
focus_monitor = { version = "0.1", features = ["tokio"] }
你可以这样使用它
use focus_monitor::AsyncFocusMonitor;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let mut focus_monitor = AsyncFocusMonitor::try_new()?;
let window = focus_monitor.recv().await?;
println!("{:?}", window);
}
lib.rs
:
Linux上的焦点窗口更改迭代器
示例用法
以下代码将打印每次活动窗口更改时获得焦点的窗口。
window
可以是 None
,如果没有活动窗口。
let focus_monitor = FocusMonitor::try_new()?;
for window in focus_monitor {
let window = window?;
println!("{:?}", window);
}
依赖项
~1–2.4MB
~44K SLoC