fix(indicator): fixed some subtle bugs
This commit is contained in:
2 files changed
+12
-5
No files matched your search
@@ -234,7 +234,9 @@ class NetworkIndicator(Box):
|
|||||||
def update_modus_service_wlan_state(self):
|
def update_modus_service_wlan_state(self):
|
||||||
wlan_state = "disconnected"
|
wlan_state = "disconnected"
|
||||||
|
|
||||||
if self.network_service.wifi_device:
|
if self.network_service.airplane_mode:
|
||||||
|
wlan_state = "airplane"
|
||||||
|
elif self.network_service.wifi_device:
|
||||||
wifi = self.network_service.wifi_device
|
wifi = self.network_service.wifi_device
|
||||||
if not wifi.enabled:
|
if not wifi.enabled:
|
||||||
wlan_state = "disabled"
|
wlan_state = "disabled"
|
||||||
@@ -263,8 +265,12 @@ class NetworkIndicator(Box):
|
|||||||
tooltip = "No network connection"
|
tooltip = "No network connection"
|
||||||
icon_file = "wifi-off-clear.svg"
|
icon_file = "wifi-off-clear.svg"
|
||||||
|
|
||||||
|
# Airplane mode takes priority
|
||||||
|
if self.network_service.airplane_mode:
|
||||||
|
icon_file = "wifi-off-clear.svg"
|
||||||
|
tooltip = "Airplane mode"
|
||||||
# Check WiFi first (prioritize WiFi over Ethernet)
|
# Check WiFi first (prioritize WiFi over Ethernet)
|
||||||
if self.network_service.wifi_device:
|
elif self.network_service.wifi_device:
|
||||||
wifi = self.network_service.wifi_device
|
wifi = self.network_service.wifi_device
|
||||||
if not wifi.enabled:
|
if not wifi.enabled:
|
||||||
icon_file = "wifi-off-clear.svg"
|
icon_file = "wifi-off-clear.svg"
|
||||||
|
|||||||
@@ -78,6 +78,7 @@ class NumLockIndicator(BaseNotchIndicator):
|
|||||||
class ChargingIndicator(BaseNotchIndicator):
|
class ChargingIndicator(BaseNotchIndicator):
|
||||||
def __init__(self, show_cb, hide_cb, **kwargs):
|
def __init__(self, show_cb, hide_cb, **kwargs):
|
||||||
self._battery = Battery.get_initial()
|
self._battery = Battery.get_initial()
|
||||||
|
self._last_charger_state = self._is_charger_connected()
|
||||||
super().__init__(
|
super().__init__(
|
||||||
name="notch-charging",
|
name="notch-charging",
|
||||||
icon_name="notch/charging.svg",
|
icon_name="notch/charging.svg",
|
||||||
@@ -89,13 +90,13 @@ class ChargingIndicator(BaseNotchIndicator):
|
|||||||
**kwargs,
|
**kwargs,
|
||||||
)
|
)
|
||||||
self._battery.connect("changed", self._on_battery_changed)
|
self._battery.connect("changed", self._on_battery_changed)
|
||||||
GLib.timeout_add(500, self._initial_check)
|
if self._last_charger_state:
|
||||||
|
GLib.timeout_add(500, self._initial_show)
|
||||||
|
|
||||||
def _is_charger_connected(self) -> bool:
|
def _is_charger_connected(self) -> bool:
|
||||||
return self._battery.charging or self._battery.charged
|
return self._battery.charging or self._battery.charged
|
||||||
|
|
||||||
def _initial_check(self):
|
def _initial_show(self):
|
||||||
self._last_charger_state = self._is_charger_connected()
|
|
||||||
if self._last_charger_state:
|
if self._last_charger_state:
|
||||||
self._show_cb(self)
|
self._show_cb(self)
|
||||||
self._schedule_hide()
|
self._schedule_hide()
|
||||||
|
|||||||
Reference in new issue
Block a user