From ab127dc5805ce61226e97e4713fdf9f1ba475393 Mon Sep 17 00:00:00 2001 From: Alexandr Bogomyakov Date: Fri, 21 Aug 2020 15:42:58 +1000 Subject: [PATCH] Fix IPC window tree processing. --- .github/workflows/PKGBUILD | 2 +- Cargo.toml | 2 +- src/main.rs | 11 ++++++++--- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/.github/workflows/PKGBUILD b/.github/workflows/PKGBUILD index bfa456b..0126fc9 100644 --- a/.github/workflows/PKGBUILD +++ b/.github/workflows/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Alexandr Bogomyakov (ultradesu) pkgname=swkb -pkgver=0.2.3 +pkgver=0.2.4 pkgrel=1 pkgdesc="swkb" url="https://github.com/house-of-vanity/swkb.git" diff --git a/Cargo.toml b/Cargo.toml index 56e5a43..3a5754c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "swkb" -version = "0.2.3" +version = "0.2.4" authors = ["Alexandr Bogomyakov "] edition = "2018" diff --git a/src/main.rs b/src/main.rs index b0e9e07..81b7990 100644 --- a/src/main.rs +++ b/src/main.rs @@ -21,7 +21,12 @@ async fn get_input_id() -> Vec { async fn get_focus_id() -> i64 { let mut connection = Connection::new().await.unwrap(); - let tree = connection.get_tree().await.unwrap(); + let tree = match connection.get_tree().await { + Ok(tree) => tree, + Err(_) => { + return 0; + } + }; let mut focused: i64 = 0; for i in tree.nodes { for z in i.nodes { @@ -52,7 +57,7 @@ async fn main() -> Fallible<()> { while let Some(event) = events.next().await { match event { Ok(Event::Input(event)) => { - println!("Input: {:?}", event); + //println!("Input: {:?}", event); let layouts_list = event.input.xkb_layout_names; let layout_name = event.input.xkb_active_layout_name.unwrap_or("none".to_string()); if layout_name == "none" { @@ -65,7 +70,7 @@ async fn main() -> Fallible<()> { layouts.insert(current_window, index); } Ok(Event::Window(event)) => { - println!("Window: {:?}", event); + //println!("Window: {:?}", event); match event.change { swayipc::reply::WindowChange::Focus => { let layouts = layouts.lock().unwrap();