NetworkManager: Slightly more accurate wifi strength icons (#7020)

* Update lj-wpaclient to get more consistent link quality values out of it
* Simplify wifi strength icon selection
This commit is contained in:
NiLuJe
2020-12-21 18:48:33 +01:00
committed by GitHub
parent f5a7541dbb
commit a15106fcc6
2 changed files with 13 additions and 6 deletions

2
base

Submodule base updated: c9c14de5ef...6b46677563

View File

@@ -121,13 +121,20 @@ function NetworkItem:init()
else
wifi_icon = "wifi.open.%d"
end
if self.info.signal_quality == 0 or self.info.signal_quality == 100 then
wifi_icon = string.format(wifi_icon, self.info.signal_quality)
-- Based on NetworkManager's nmc_wifi_strength_bars
-- c.f., https://github.com/NetworkManager/NetworkManager/blob/2fa8ef9fb9c7fe0cc2d9523eed6c5a3749b05175/clients/common/nm-client-utils.c#L585-L612
if self.info.signal_quality > 80 then
wifi_icon = string.format(wifi_icon, 100)
elseif self.info.signal_quality > 55 then
wifi_icon = string.format(wifi_icon, 75)
elseif self.info.signal_quality > 30 then
wifi_icon = string.format(wifi_icon, 50)
elseif self.info.signal_quality > 5 then
wifi_icon = string.format(wifi_icon, 25)
else
wifi_icon = string.format(
wifi_icon,
self.info.signal_quality + 25 - self.info.signal_quality % 25)
wifi_icon = string.format(wifi_icon, 0)
end
local horizontal_space = HorizontalSpan:new{width = Size.span.horizontal_default}
self.content_container = OverlapGroup:new{
dimen = self.dimen:copy(),