Crates.io | active-win-pos-rs |
lib.rs | active-win-pos-rs |
version | 0.8.3 |
source | src |
created_at | 2022-02-16 03:47:50.860548 |
updated_at | 2023-11-29 23:11:16.113615 |
description | Get position, size, title and a few other properties of the active window on Windows, MacOS and Linux |
homepage | |
repository | https://github.com/dimusic/active-win-pos-rs |
max_upload_size | |
id | 533073 |
size | 43,075 |
A small Rust library that lets you get position, size, title and a few other properties of the active window on Windows, MacOS and Linux
[dependencies]
active-win-pos-rs = "0.8"
use active_win_pos_rs::get_active_window;
fn main() {
match get_active_window() {
Ok(active_window) => {
println!("active window: {:#?}", active_window);
},
Err(()) => {
println!("error occurred while getting the active window");
}
}
}
Would give you an instance of ActiveWindow
struct with unique window id, process id, window position and window title.
Or use active_win_pos_rs::get_position
to get the WindowPosition
only.
On MacOS title
property will always return an empty string
unless you Enable Screen Recording permission for your app.
% git clone https://github.com/dimusic/active-win-pos-rs.git
% cd active-win-pos-rs
% cargo build
% cargo run --example active-window
Output:
active window: ActiveWindow {
title: "cmd - cargo run --example active-window",
process_path: "C:\\Program Files\\WindowsApps\\Microsoft.WindowsTerminal_1.16.10262.0_x64__8wekyb3d8bbwe\\WindowsTerminal.exe",
app_name: "WindowsTerminal",
window_id: "HWND(9700584)",
process_id: 8460,
position: WindowPosition {
x: 6.0,
y: 296.0,
width: 1129.0,
height: 635.0,
},
}