修复网络页面IP更新不及时的问题
This commit is contained in:
parent
842a616c25
commit
9c99cd9125
@ -77,9 +77,7 @@ class Panel(ScreenPanel):
|
|||||||
|
|
||||||
self.labels['interface'] = Gtk.Label(hexpand=True)
|
self.labels['interface'] = Gtk.Label(hexpand=True)
|
||||||
self.labels['ip'] = Gtk.Label(hexpand=True)
|
self.labels['ip'] = Gtk.Label(hexpand=True)
|
||||||
if self.interface is not None:
|
self.network_interface_refresh()
|
||||||
self.labels['interface'].set_text(_("Interface") + f': {self.interface}')
|
|
||||||
self.labels['ip'].set_text(f"IP: {self.sdbus_nm.get_ip_address()}")
|
|
||||||
|
|
||||||
self.reload_button = self._gtk.Button("refresh", None, "custom-icon-button", self.bts)
|
self.reload_button = self._gtk.Button("refresh", None, "custom-icon-button", self.bts)
|
||||||
self.reload_button.set_no_show_all(True)
|
self.reload_button.set_no_show_all(True)
|
||||||
@ -120,6 +118,7 @@ class Panel(ScreenPanel):
|
|||||||
self.network_list.connect("row-activated", self.handle_wifi_selection)
|
self.network_list.connect("row-activated", self.handle_wifi_selection)
|
||||||
|
|
||||||
def popup_callback(self, msg, level=3):
|
def popup_callback(self, msg, level=3):
|
||||||
|
self.network_interface_refresh()
|
||||||
if not self.refresh_status(msg):
|
if not self.refresh_status(msg):
|
||||||
for item in self.network_rows:
|
for item in self.network_rows:
|
||||||
if self.network_rows[item]["label_state"] is not None:
|
if self.network_rows[item]["label_state"] is not None:
|
||||||
@ -127,6 +126,12 @@ class Panel(ScreenPanel):
|
|||||||
self.network_rows[item]["label_state"].hide()
|
self.network_rows[item]["label_state"].hide()
|
||||||
self._screen.show_popup_message(msg, level)
|
self._screen.show_popup_message(msg, level)
|
||||||
|
|
||||||
|
def network_interface_refresh(self):
|
||||||
|
if self.interface is not None:
|
||||||
|
self.interface = self.sdbus_nm.get_primary_interface()
|
||||||
|
self.labels['interface'].set_text(_("Interface") + f': {self.interface}')
|
||||||
|
self.labels['ip'].set_text(f"IP: {self.sdbus_nm.get_ip_address()}")
|
||||||
|
|
||||||
def handle_wifi_selection(self, list_box, row):
|
def handle_wifi_selection(self, list_box, row):
|
||||||
index = row.get_index()
|
index = row.get_index()
|
||||||
logging.info(f"clicked SSID is {self.networks[index]['SSID']}")
|
logging.info(f"clicked SSID is {self.networks[index]['SSID']}")
|
||||||
@ -407,6 +412,7 @@ class Panel(ScreenPanel):
|
|||||||
if self.delay_reload_timer_id:
|
if self.delay_reload_timer_id:
|
||||||
GLib.source_remove(self.delay_reload_timer_id)
|
GLib.source_remove(self.delay_reload_timer_id)
|
||||||
self.delay_reload_timer_id = None
|
self.delay_reload_timer_id = None
|
||||||
|
self.network_interface_refresh()
|
||||||
|
|
||||||
return self.sdbus_nm.nm.wireless_enabled
|
return self.sdbus_nm.nm.wireless_enabled
|
||||||
|
|
||||||
@ -438,7 +444,7 @@ class Panel(ScreenPanel):
|
|||||||
return
|
return
|
||||||
if self.sdbus_nm.wifi:
|
if self.sdbus_nm.wifi:
|
||||||
if self.sdbus_nm.is_wifi_enabled():
|
if self.sdbus_nm.is_wifi_enabled():
|
||||||
self.delay_reload_networks(1000)
|
self.delay_reload_networks(2000)
|
||||||
self.start_refresh_timer()
|
self.start_refresh_timer()
|
||||||
|
|
||||||
def deactivate(self):
|
def deactivate(self):
|
||||||
@ -464,3 +470,4 @@ class Panel(ScreenPanel):
|
|||||||
self.reload_button.hide()
|
self.reload_button.hide()
|
||||||
self.network_list.set_no_show_all(True)
|
self.network_list.set_no_show_all(True)
|
||||||
self.network_list.hide()
|
self.network_list.hide()
|
||||||
|
self.network_interface_refresh()
|
Loading…
x
Reference in New Issue
Block a user