mirror of
https://github.com/2e3s/awatcher.git
synced 2025-06-06 11:35:46 +00:00
Upgrade zbus dependency
This commit is contained in:
parent
f001121d69
commit
0ae2fbc06b
739
Cargo.lock
generated
739
Cargo.lock
generated
File diff suppressed because it is too large
Load Diff
@ -20,7 +20,7 @@ wayland-protocols = { version = "0.31.0", features = ["staging", "client" ]}
|
|||||||
wayland-protocols-plasma = { version = "0.2.0", features = ["client"] }
|
wayland-protocols-plasma = { version = "0.2.0", features = ["client"] }
|
||||||
wayland-protocols-wlr = { version = "0.2.0", features = ["client"] }
|
wayland-protocols-wlr = { version = "0.2.0", features = ["client"] }
|
||||||
x11rb = { version = "0.13.0", features = ["screensaver"] }
|
x11rb = { version = "0.13.0", features = ["screensaver"] }
|
||||||
zbus = {version = "3.14.1", optional = true}
|
zbus = {version = "4.2.1", optional = true}
|
||||||
chrono = "0.4.31"
|
chrono = "0.4.31"
|
||||||
toml = "0.8.8"
|
toml = "0.8.8"
|
||||||
dirs = "5.0.1"
|
dirs = "5.0.1"
|
||||||
|
@ -13,7 +13,7 @@ pub struct IdleWatcher {
|
|||||||
|
|
||||||
impl IdleWatcher {
|
impl IdleWatcher {
|
||||||
async fn seconds_since_input(&mut self) -> anyhow::Result<u32> {
|
async fn seconds_since_input(&mut self) -> anyhow::Result<u32> {
|
||||||
let ms = self
|
let ms: u64 = self
|
||||||
.dbus_connection
|
.dbus_connection
|
||||||
.call_method(
|
.call_method(
|
||||||
Some("org.gnome.Mutter.IdleMonitor"),
|
Some("org.gnome.Mutter.IdleMonitor"),
|
||||||
@ -23,7 +23,8 @@ impl IdleWatcher {
|
|||||||
&(),
|
&(),
|
||||||
)
|
)
|
||||||
.await?
|
.await?
|
||||||
.body::<u64>()?;
|
.body()
|
||||||
|
.deserialize()?;
|
||||||
u32::try_from(ms / 1000).with_context(|| format!("Number {ms} is invalid"))
|
u32::try_from(ms / 1000).with_context(|| format!("Number {ms} is invalid"))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -34,8 +34,9 @@ impl WindowWatcher {
|
|||||||
|
|
||||||
match call_response {
|
match call_response {
|
||||||
Ok(json) => {
|
Ok(json) => {
|
||||||
let json = json
|
let json: String = json
|
||||||
.body::<String>()
|
.body()
|
||||||
|
.deserialize()
|
||||||
.with_context(|| "DBus interface cannot be parsed as string")?;
|
.with_context(|| "DBus interface cannot be parsed as string")?;
|
||||||
serde_json::from_str(&json).with_context(|| {
|
serde_json::from_str(&json).with_context(|| {
|
||||||
format!("DBus interface org.gnome.shell.extensions.FocusedWindow returned wrong JSON: {json}")
|
format!("DBus interface org.gnome.shell.extensions.FocusedWindow returned wrong JSON: {json}")
|
||||||
|
@ -12,7 +12,7 @@ use std::path::Path;
|
|||||||
use std::sync::{mpsc::channel, Arc};
|
use std::sync::{mpsc::channel, Arc};
|
||||||
use std::thread;
|
use std::thread;
|
||||||
use tokio::sync::Mutex;
|
use tokio::sync::Mutex;
|
||||||
use zbus::dbus_interface;
|
use zbus::interface;
|
||||||
use zbus::{Connection, ConnectionBuilder};
|
use zbus::{Connection, ConnectionBuilder};
|
||||||
|
|
||||||
const KWIN_SCRIPT_NAME: &str = "activity_watcher";
|
const KWIN_SCRIPT_NAME: &str = "activity_watcher";
|
||||||
@ -53,7 +53,8 @@ impl KWinScript {
|
|||||||
&KWIN_SCRIPT_NAME,
|
&KWIN_SCRIPT_NAME,
|
||||||
)
|
)
|
||||||
.await?
|
.await?
|
||||||
.body::<bool>()
|
.body()
|
||||||
|
.deserialize()
|
||||||
.map_err(std::convert::Into::into)
|
.map_err(std::convert::Into::into)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -72,7 +73,8 @@ impl KWinScript {
|
|||||||
&(temp_path, KWIN_SCRIPT_NAME),
|
&(temp_path, KWIN_SCRIPT_NAME),
|
||||||
)
|
)
|
||||||
.await?
|
.await?
|
||||||
.body::<i32>()
|
.body()
|
||||||
|
.deserialize()
|
||||||
.map_err(std::convert::Into::into)
|
.map_err(std::convert::Into::into)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -86,7 +88,8 @@ impl KWinScript {
|
|||||||
&KWIN_SCRIPT_NAME,
|
&KWIN_SCRIPT_NAME,
|
||||||
)
|
)
|
||||||
.await?
|
.await?
|
||||||
.body::<bool>()
|
.body()
|
||||||
|
.deserialize()
|
||||||
.map_err(std::convert::Into::into)
|
.map_err(std::convert::Into::into)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -143,7 +146,8 @@ impl KWinScript {
|
|||||||
&(),
|
&(),
|
||||||
)
|
)
|
||||||
.await?
|
.await?
|
||||||
.body::<String>()?;
|
.body()
|
||||||
|
.deserialize()?;
|
||||||
|
|
||||||
// find a string like "KWin version: 5.27.8" and extract the version number from it:
|
// find a string like "KWin version: 5.27.8" and extract the version number from it:
|
||||||
let version = support_information
|
let version = support_information
|
||||||
@ -206,7 +210,7 @@ struct ActiveWindowInterface {
|
|||||||
active_window: Arc<Mutex<ActiveWindow>>,
|
active_window: Arc<Mutex<ActiveWindow>>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[dbus_interface(name = "com._2e3s.Awatcher")]
|
#[interface(name = "com._2e3s.Awatcher")]
|
||||||
impl ActiveWindowInterface {
|
impl ActiveWindowInterface {
|
||||||
async fn notify_active_window(
|
async fn notify_active_window(
|
||||||
&mut self,
|
&mut self,
|
||||||
@ -274,7 +278,7 @@ impl Watcher for WindowWatcher {
|
|||||||
Ok(connection) => {
|
Ok(connection) => {
|
||||||
tx.send(None).unwrap();
|
tx.send(None).unwrap();
|
||||||
loop {
|
loop {
|
||||||
connection.monitor_activity().wait();
|
connection.monitor_activity().await;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Err(e) => tx.send(Some(e)),
|
Err(e) => tx.send(Some(e)),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user