From 2ea42dfec4f487bd9b95ea9f31e2dde813e48dc7 Mon Sep 17 00:00:00 2001 From: Ben Brooks Date: Mon, 1 Jun 2020 23:57:54 +0100 Subject: [PATCH 1/2] rustfmt --- src/lib.rs | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/src/lib.rs b/src/lib.rs index 04d7cf7..6fab4e0 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -25,14 +25,14 @@ extern crate lazy_static; extern crate toml; -pub mod icons; pub mod config; +pub mod icons; pub struct Options { pub icons: Map, pub aliases: Map, pub general: Map, - pub names: bool + pub names: bool, } impl Default for Options { @@ -41,7 +41,7 @@ impl Default for Options { icons: icons::NONE.clone(), aliases: config::EMPTY_MAP.clone(), general: config::EMPTY_MAP.clone(), - names: true + names: true, } } } @@ -104,9 +104,9 @@ fn get_class(conn: &xcb::Connection, id: u32, options: &Options) -> Result } /// Update all workspace names in tree -pub fn update_tree(x_conn: &xcb::Connection, i3_conn: &mut I3Connection, options: &Options) -> Result<(), Error> { +pub fn update_tree( + x_conn: &xcb::Connection, + i3_conn: &mut I3Connection, + options: &Options, +) -> Result<(), Error> { let tree = i3_conn.get_tree()?; for workspace in get_workspaces(tree) { - let separator = match options.general.get("separator") { Some(s) => s, - None => " | " + None => " | ", }; let classes = get_classes(&workspace, &x_conn, options).join(separator); @@ -339,7 +342,10 @@ mod tests { let mut result: Vec> = Vec::new(); for workspace in workspaces { result.push(super::get_ids(vec![workspace.nodes.iter().collect()])); - result.push(super::get_ids(vec![workspace.floating_nodes.iter().collect()])); + result.push(super::get_ids(vec![workspace + .floating_nodes + .iter() + .collect()])); } let result: usize = result.iter().filter(|v| !v.is_empty()).count(); assert_eq!(result, 2); From 877d315c83304851eec25f000b2cd81f77db5a60 Mon Sep 17 00:00:00 2001 From: Ben Brooks Date: Mon, 1 Jun 2020 23:58:24 +0100 Subject: [PATCH 2/2] Add general.default_icon option to specify fallback icon --- src/lib.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib.rs b/src/lib.rs index 6fab4e0..266d7bf 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -99,7 +99,10 @@ fn get_class(conn: &xcb::Connection, id: u32, options: &Options) -> Result format!("{}", class_display_name), + None => match options.general.get("default_icon") { + Some(default_icon) => format!("{} {}", default_icon, class_display_name), + None => format!("{}", class_display_name), + }, } });