From 7ede287478d9f76166b6c5a9fa21bbd6199334c2 Mon Sep 17 00:00:00 2001 From: Leandro Pereira Date: Sun, 27 Aug 2017 08:32:27 -0700 Subject: Fix 802.11 signal to bar conversion Just steal the code from GNOME shell: https://github.com/GNOME/gnome-shell/blob/9cc143aaee8aa7c33d7815f744f8dc9e958bddf8/js/ui/status/network.js#L89-L98 --- modules/network/net.c | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) (limited to 'modules/network/net.c') diff --git a/modules/network/net.c b/modules/network/net.c index 99a5e616..a75cf8b6 100644 --- a/modules/network/net.c +++ b/modules/network/net.c @@ -306,24 +306,19 @@ remove_net_devices(gpointer key, gpointer value, gpointer data) #ifdef HAS_LINUX_WE const char *wifi_bars(int signal, int noise) { - float quality; + signal = -signal; - if (signal <= -100) - quality = 0.0; - else if (signal >= -50) - quality = 1.0; - else - quality = (2.0 * (signal + 100.0)) / 100.0; - - if (quality < 0.20) - return "▰▱▱▱▱"; - if (quality < 0.40) - return "▰▰▱▱▱"; - if (quality < 0.60) - return "▰▰▰▱▱"; - if (quality < 0.80) + if (signal > 80) + return "▰▰▰▰▰"; + if (signal > 55) return "▰▰▰▰▱"; - return "▰▰▰▰▰"; + if (signal > 30) + return "▰▰▰▱▱"; + if (signal > 15) + return "▰▰▱▱▱"; + if (signal > 5) + return "▰▱▱▱▱"; + return "▱▱▱▱▱"; } #endif -- cgit v1.2.3