From 64368fdeea7de7179e02b253364308b58cf5cb9c Mon Sep 17 00:00:00 2001 From: sudo-Tiz Date: Sun, 19 Oct 2025 01:46:25 +0200 Subject: [PATCH 1/5] feat(bluetooth): change indicator icon on connected status --- assets/ashell_icon.ttf | Bin 14260 -> 14464 bytes src/components/icons.rs | 2 ++ src/modules/settings/bluetooth.rs | 14 +++++++++----- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/assets/ashell_icon.ttf b/assets/ashell_icon.ttf index 05c828b48c72d76fb476edade49c8de5d2beed70..f269f9c2e6d3856de5a1d50c52dc400dae293211 100644 GIT binary patch delta 1614 zcmYL}TWl0n9EX2rW_M<1ySry+yKSLBuT%uYYAaA`TZ%Lw${jIPR9M<>SKP`9L?H@` zf`uqbWr-m{o=o7O6-}x}@dcwK1_IHbiAF)?5(){G0P-N|tiN->n8|m(bDMMdpEL96 z+O0436=xe#07flZR$JHplhqCgf>j+oiOkh}Fb$X$B-Qcqh6=R#UBKGOc3*d5eI}oW z2{f!?InbTnlx!R`hkfnEKy7cTE74gu{po??mNOA$K zsvUwUG5cE=t&~lF!wIkgxH$Uwn*W@?d)^%$>%& z=~6v-BG)3uiKlYUh?KAfzZSJZP0^ zwlQ4zKOb$9$HJL{qk8DO^B|-$=GeQ%S-Ff^n!TO_6e`v?Ih%qLsIDPIm@b9HI1S*Z zAJ%YF^b;B$3cX3Awl49SMr~PQi$*P1Vygxyptq6jJReRYc@he6LWw^#U@FBU8X!u~ z*8nd4qy~u5yEQ-|B!jL1;xrdxFxn`hkCPM3m(Zs)z-UM_lvN2EO6e92Fou3s1B|6t zYM`QErb!R`m(iOw;N_6!4h>LAU(f(mkUs930M&GjhPRVmtO2sBa+wCWhyI8h<_i<( zV;W#0q~Fk}3nl%G3;`z746lDH^Y_tjX!w25M>N0#G$TrY2k8+FPzPzGl>RGs@ z0Um<1872Zur61SuyPy}4MXaArGmHdigmiowsJr2mYk(%2(QvBRrDkYEk@GVYaBI(%^Btb^KEm$JmV|& zE%$xmkNM~NU-zG}%B?9@qqWZZ+`4EByTl%Eudw&nr|lv8c3^Q}W8h%mY~Y#`ak`za zoS|SvFc};u2p8~k42=q9LPtV>hJ)ef!+XLvBD2aP+avoUS7o#8l5ff3= z%iKfmIro-&Vk=_b6;3T2h*!qf#g7+N740axQruj;ulPpE(wHrNM5)(3b=OZ|Kd zex+r+CJ?six+NlRM10j%_Zvnu)?(Dxl^HR=5U#L=C=rFi7wZ=TVz|1s^OgMvyZX+5 zzjMjL9VgE3e)r7L&2vV2MT=M9{gM{zy?4@Lf+IZh%YM;*`+{g65UUS+mwq_VHFI?R z&flv=w>T%#Lwz%5^j-Gezb;lAr6WyZ!VBImZx`PjX&2t$=|FGgL__`3j86Y@{%~yG rJh#%VsdOvbj0$hO*ypAE%m3+b^PNO6*D`tB;Cqv{6by!^9TNWn7m6y0 delta 1404 zcmXw(TWl0n7{~u-X6LrIv)gX30=6hnE>c~ffYw@Txher{HH3(C(^6K`ZI{p}M0Bg7 zCSX#?5+0-_QR9Oqwh!wAQKQCCgA$r(;Hkv;fMF9&kXZCV?E0T?Z8pF8edjXY%=zZ* z89DUX(5dR&`Y`~tJG+{bd#>4=0kwzip59C<`}c{auK;ra>F#}LxB;D39I&$-4;)M# z&X!6rf%RwDb`K65?GKIq83mjT!0M~%1F62`+I`D7cAd1O*`arvKQe!U?fcW2;Uho0 z>O(34y9xesY z&lm9LH$d@9GQnFf@7Jw&;JNGoey#N;=Uuuv_kjm{1=}tRzZY2H-(>gCF_DK-@oudr zY088DU!RubJ^41ZP;JRSr_zN>YL$x2&oMq>zPvJ%k9Q(~2ifhG^WU2KPfY5jwz?5@0dCL;&uicM05&be90+{0X0u3Er@jo)Um2Xv+|QgBGu>#&=#;r70>Mdd1MlT~xjN550f&d-JX>S!953unB z%{M2&Cg>o`M}W`zOb9+MU;(v(CrPoV(QRcHec+yI*=$-V5GYZ#tL=?hSqsS`-=#eHUI7PKQUs z7a}#0_Q?B@E74?hTl8G?H(jYW=yhZIc5HcUdu$@E;?KlS#mD_$g;6n7alNvu@=~HM zaVYV9)#|F#RX3_1tA4LW)w~E4b~)p!aN0ZGSjPi}|J|Zl^pD5Jcw^k;vEox`T{#{q J%(Q%@{sSbr<=g-O diff --git a/src/components/icons.rs b/src/components/icons.rs index c6aaac87..d67eb5bf 100644 --- a/src/components/icons.rs +++ b/src/components/icons.rs @@ -56,6 +56,7 @@ pub enum StaticIcon { Ethernet, Vpn, Bluetooth, + BluetoothConnected, PowerSaver, Balanced, Performance, @@ -154,6 +155,7 @@ impl Icon for StaticIcon { StaticIcon::Ethernet => "\u{f0200}", StaticIcon::Vpn => "\u{f0582}", StaticIcon::Bluetooth => "\u{f00af}", + StaticIcon::BluetoothConnected => "\u{f293}", StaticIcon::PowerSaver => "\u{f0f86}", StaticIcon::Balanced => "\u{f0f85}", StaticIcon::Performance => "\u{f04c5}", diff --git a/src/modules/settings/bluetooth.rs b/src/modules/settings/bluetooth.rs index 39816eec..6088c415 100644 --- a/src/modules/settings/bluetooth.rs +++ b/src/modules/settings/bluetooth.rs @@ -411,11 +411,15 @@ impl BluetoothSettings { &'a self, _theme: &'a AshellTheme, ) -> Option> { - if let Some(service) = &self.service - && service.state == BluetoothState::Active - && !service.devices.is_empty() - { - return Some(icon(StaticIcon::Bluetooth).into()); + if let Some(service) = &self.service { + if service.state == BluetoothState::Active { + let connected_count = service.devices.iter().filter(|d| d.connected).count(); + if connected_count > 0 { + return Some(icon(StaticIcon::BluetoothConnected).into()); + } else { + return Some(icon(StaticIcon::Bluetooth).into()); + } + } } None } From c2dc6c96fa1073fce8a916cced9da04c44feca33 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sat, 18 Oct 2025 23:48:34 +0000 Subject: [PATCH 2/5] chore: regenerate icon font [skip ci] --- assets/ashell_icon.ttf | Bin 14464 -> 14448 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/ashell_icon.ttf b/assets/ashell_icon.ttf index f269f9c2e6d3856de5a1d50c52dc400dae293211..6c1dcd8795ecac7f0b2b8a75bcf4e1da4f6349bd 100644 GIT binary patch delta 295 zcmZoD{7^7KoHv4jfkDDQSl=k(Dx2#>6=UB3pa4gDPGuVJu32mh4D3L@enm!VVv3RZ z&s?C~9UwN#01EI2GGAg~U=#uJRWfo*DxPpKE(Y><0C7f6esUti8y=a7OO!2700q(t z@{3FUvoNGFFjyD>H7GDJ0!biFpO*bMp5Nvx11ASifPvwuu%7Tz5h;;uk;9_Wq79;t z#mvMeioFpJ7T>cufc>blB*+mA%rBTx*oHv7kfkDDQSl=k(DqF-v6=UB7pa4gDPGy>vw3`A01A71igMM2^YGR6! z`MtS7xjR5?mH`yt4`g4=z`!U1CX#p2Vmm_Wu!FEFL9(cyj>zQDt=|kY1(~)=&m!26hGpV?jkhRYgHX7bb;&DvUG! YWw3_+TJ6GecC()LT<*;$&6YC)0BFxlNdN!< From f1292aa9042b5fa70e76ba201d894506ae22c057 Mon Sep 17 00:00:00 2001 From: sudo-Tiz Date: Sun, 19 Oct 2025 02:05:43 +0200 Subject: [PATCH 3/5] fix if --- src/modules/settings/bluetooth.rs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/modules/settings/bluetooth.rs b/src/modules/settings/bluetooth.rs index 6088c415..b1d36094 100644 --- a/src/modules/settings/bluetooth.rs +++ b/src/modules/settings/bluetooth.rs @@ -411,14 +411,14 @@ impl BluetoothSettings { &'a self, _theme: &'a AshellTheme, ) -> Option> { - if let Some(service) = &self.service { - if service.state == BluetoothState::Active { - let connected_count = service.devices.iter().filter(|d| d.connected).count(); - if connected_count > 0 { - return Some(icon(StaticIcon::BluetoothConnected).into()); - } else { - return Some(icon(StaticIcon::Bluetooth).into()); - } + if let Some(service) = &self.service + && service.state == BluetoothState::Active + { + let connected_count = service.devices.iter().filter(|d| d.connected).count(); + if connected_count > 0 { + return Some(icon(StaticIcon::BluetoothConnected).into()); + } else { + return Some(icon(StaticIcon::Bluetooth).into()); } } None From 8d743e88b16772b259d773d31ec442ef43cbbdeb Mon Sep 17 00:00:00 2001 From: Tiz <72883092+sudo-Tiz@users.noreply.github.com> Date: Sun, 19 Oct 2025 14:38:23 +0200 Subject: [PATCH 4/5] Update icons.rs to use f00b1 for BluetoothConnected --- src/components/icons.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/icons.rs b/src/components/icons.rs index d67eb5bf..51a03172 100644 --- a/src/components/icons.rs +++ b/src/components/icons.rs @@ -155,7 +155,7 @@ impl Icon for StaticIcon { StaticIcon::Ethernet => "\u{f0200}", StaticIcon::Vpn => "\u{f0582}", StaticIcon::Bluetooth => "\u{f00af}", - StaticIcon::BluetoothConnected => "\u{f293}", + StaticIcon::BluetoothConnected => "\u{f00b1}", StaticIcon::PowerSaver => "\u{f0f86}", StaticIcon::Balanced => "\u{f0f85}", StaticIcon::Performance => "\u{f04c5}", From 5cc40ee0875815f38033ff22fdfa63236ec4e2ff Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Sun, 19 Oct 2025 12:40:08 +0000 Subject: [PATCH 5/5] chore: regenerate icon font [skip ci] --- assets/ashell_icon.ttf | Bin 14448 -> 14400 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/ashell_icon.ttf b/assets/ashell_icon.ttf index 6c1dcd8795ecac7f0b2b8a75bcf4e1da4f6349bd..67a9e690e5543f166c83cccc2b1912fcde05ead6 100644 GIT binary patch delta 694 zcmX|;T}TvB6vxk@g$41Fk3F=M6PGTlhX%wbF zhaTLv2cr$dpeC3Q*|!MnAt8f`z@kj(DfGce!ipkiJ3CMue&>Jg$GPX+d)E_B6BFi{ zeE?8&yrrVD^(}1#Agws=i1)@4KdtgU06v6t#0Qcgh=>LN9mRE_JJz4b<$wn`gzF%6 z_Y8I2uDNp$fE@#&B{FHR-H(w}$C!Mw4QwY^~y3v?y=`ja^Ux-c1YAp`_H z(s-f$;aRQrJIGRg9zK`cu>NUo#hI3YmZv51B>kL(ISSctq=A%0K!5|dOG4uSzRs`L zZA7rO|B+s+%`0<2(w%(e$VLPp4|cAiSHXwA88q1Df;U60aRCrfqb}G!>W~Xw5%r2o zzN`krE&wv>s0)Ax^%^pU=PRf)E((AbgV{XUkdWj?V3ib+IJrzRKm(@&GeH*Y3BE4eS$MVZy;*Ns*(P?EWK(j6KP>{} z{1n8;__7pV!h|jOr_4M^m|>W#lH|M5SIx-M?XiX?JABFb#qlcxzprU+ivz#qddkp0%#BI5G7-*fK0=bn4+iTDKYweez)}c*Gn*~UrBL2y$^G?zoGFuAf&(`NZ=_&5AkBoQ zzd3$PF8u`>i538+GC#flr-^CRtpULulyDS<;20K!m#_ji?Ewyo=#Um9V1St)UnpA) zE>+Rn;Jg7u-GSl5NE_? zsak52hNLgjg2t%vXkKV$w05mq8`2qc^auJ3y-z=)|7Oq{P8j+OKaDxYE@Rn%aZWCi zUGg4{sZky%lgfN@m}|{rY58gQEm@Xk%ggi?>7D6O>t<`Ob=Fp68x8Lk z2eE?#P~8Hxi2A@oHms$dimam8(83tG+|~IEV=|XBg^p~-%p)o&BHAzwIrA`vFqXTm z@$A5mD-eC#ePG|!*U?)yCn6Vi#;;(xs#8CEu~og{#XJqF?DJuCE`LX72