git.lucas.co / cce-compositor
Wayland compositor (wlroots)
git clone https://git.lucas.co/cce-compositor.git

commitd529d32f20e8f67fb1b9fdbac14e65af1703d442
parentd212f61f50
authorLucas Galante <[email protected]>
date2026-06-25 14:30
Use app_id instead of title in focus-window command

 src/cce_ctl.rs               |  2 +-
 src/server/window_manager.rs | 11 +----------
 2 files changed, 2 insertions(+), 11 deletions(-)

diff --git a/src/cce_ctl.rs b/src/cce_ctl.rs
index 568fd4e..17940aa 100644
--- a/src/cce_ctl.rs
+++ b/src/cce_ctl.rs
@@ -36,7 +36,7 @@ fn usage(name: &str, to_stderr: bool) {
     print("  close");
     print("  minimize");
     print("  focus-next");
-    print("  focus-window <app_id|title>");
+    print("  focus-window <app_id>");
     print("  expose");
     print("  windows");
     print("  exit");
diff --git a/src/server/window_manager.rs b/src/server/window_manager.rs
index 3ff04b8..0257afc 100644
--- a/src/server/window_manager.rs
+++ b/src/server/window_manager.rs
@@ -1939,7 +1939,7 @@ fn get_closest_tag(x: f64, y: f64) -> i32 {
                 "ok\n".to_string()
             }
             "focus-window" => {
-                if parts.len() < 2 { return "error: missing app_id or title\n".to_string(); }
+                if parts.len() < 2 { return "error: missing app_id\n".to_string(); }
                 let query = parts[1..].join(" ").to_lowercase();
                 if let Some(seat) = self.first_seat() {
                     let mut best_target: *mut Window = std::ptr::null_mut();
@@ -1947,7 +1947,6 @@ fn get_closest_tag(x: f64, y: f64) -> i32 {
                     for &w in self.windows.iter() {
                         if !w.is_null() && !(*w).closed && !(*w).minimized && matches!((*w).state, crate::window::WindowState::Mapped) {
                             let aid = (*w).get_app_id_string();
-                            let title = (*w).get_title_string();
 
                             let mut score = 0;
                             if let Some(ref aid_str) = aid {
@@ -1958,14 +1957,6 @@ fn get_closest_tag(x: f64, y: f64) -> i32 {
                                     score = score.max(50);
                                 }
                             }
-                            if let Some(ref title_str) = title {
-                                let title_lower = title_str.to_lowercase();
-                                if title_lower == query {
-                                    score = score.max(80);
-                                } else if title_lower.contains(&query) {
-                                    score = score.max(30);
-                                }
-                            }
 
                             if score > best_score {
                                 best_score = score;