diff options
| author | Leandro Pereira <leandro@hardinfo.org> | 2017-08-27 08:32:27 -0700 | 
|---|---|---|
| committer | Leandro Pereira <leandro@hardinfo.org> | 2017-08-27 08:34:29 -0700 | 
| commit | 7ede287478d9f76166b6c5a9fa21bbd6199334c2 (patch) | |
| tree | 924356a59ee1682f52d25efe9c6ed7b05f5b059f /modules/network | |
| parent | b955821b18f7f5a9ee4a5d417fab8b2757f8a2fa (diff) | |
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
Diffstat (limited to 'modules/network')
| -rw-r--r-- | modules/network/net.c | 27 | 
1 files changed, 11 insertions, 16 deletions
| 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 | 
