From 84cbfe0d86022275ef8d67950d07f209521f2517 Mon Sep 17 00:00:00 2001 From: Victoria Brekenfeld Date: Thu, 4 Sep 2025 15:28:14 +0200 Subject: [PATCH] battery: Only consider connected built-in ports for primary-gpu logic --- cosmic-applet-battery/src/dgpu.rs | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/cosmic-applet-battery/src/dgpu.rs b/cosmic-applet-battery/src/dgpu.rs index 7d7f67ae..3e0b9a0a 100644 --- a/cosmic-applet-battery/src/dgpu.rs +++ b/cosmic-applet-battery/src/dgpu.rs @@ -393,13 +393,15 @@ fn all_gpus>(seat: S) -> io::Result> { if let Some(primary_idx) = gpus .iter() .position(|gpu| { - connectors(&gpu.path).is_some_and(|mut conns| { - conns.any(|info| { - let i = info.interface(); - i == Interface::EmbeddedDisplayPort - || i == Interface::LVDS - || i == Interface::DSI - }) + connectors(&gpu.path).is_some_and(|conns| { + conns + .filter(|info| info.state() == drm::control::connector::State::Connected) + .any(|info| { + let i = info.interface(); + i == Interface::EmbeddedDisplayPort + || i == Interface::LVDS + || i == Interface::DSI + }) }) }) .or_else(|| gpus.iter().position(|gpu| gpu.boot_vga))