network: request periodic scans while the WiFi list is open
NM upstream would like to reduce periodic scanning, and that means that clients should request scans themselves while their WiFi list is open. Similar to the Windows and macOS WiFi dialogs/lists. https://bugzilla.gnome.org/show_bug.cgi?id=767918
This commit is contained in:
parent
f819654ec8
commit
384e01b368
@ -5,6 +5,7 @@ const GObject = imports.gi.GObject;
|
||||
const Gio = imports.gi.Gio;
|
||||
const Gtk = imports.gi.Gtk;
|
||||
const Lang = imports.lang;
|
||||
const Mainloop = imports.mainloop;
|
||||
const NetworkManager = imports.gi.NetworkManager;
|
||||
const NMClient = imports.gi.NMClient;
|
||||
const NMGtk = imports.gi.NMGtk;
|
||||
@ -752,10 +753,9 @@ const NMWirelessDialog = new Lang.Class({
|
||||
this._updateSensitivity();
|
||||
this._syncView();
|
||||
|
||||
if (accessPoints.length == 0) {
|
||||
/* If there are no visible access points, request a scan */
|
||||
this._device.request_scan_simple(null);
|
||||
}
|
||||
this._scanTimeoutId = Mainloop.timeout_add_seconds(15, Lang.bind(this, this._onScanTimeout));
|
||||
GLib.Source.set_name_by_id(this._scanTimeoutId, '[gnome-shell] this._onScanTimeout');
|
||||
this._onScanTimeout();
|
||||
},
|
||||
|
||||
destroy: function() {
|
||||
@ -780,9 +780,19 @@ const NMWirelessDialog = new Lang.Class({
|
||||
this._airplaneModeChangedId = 0;
|
||||
}
|
||||
|
||||
if (this._scanTimeoutId) {
|
||||
Mainloop.source_remove(this._scanTimeoutId);
|
||||
this._scanTimeoutId = 0;
|
||||
}
|
||||
|
||||
this.parent();
|
||||
},
|
||||
|
||||
_onScanTimeout: function() {
|
||||
this._device.request_scan_simple(null);
|
||||
return GLib.SOURCE_CONTINUE;
|
||||
},
|
||||
|
||||
_activeApChanged: function() {
|
||||
if (this._activeNetwork)
|
||||
this._activeNetwork.item.setActive(false);
|
||||
|
Loading…
Reference in New Issue
Block a user