status/network: Keep sensitive when locked
Unlike the old menu that restricted almost everything on the lock screen, we went into the completely opposite direction with quick settings and kept everything that does not launch windows available. Extend that line to the network items, but still respect the `network-control` permission. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2408>
This commit is contained in:
parent
cd9284e48f
commit
dc09f990c4
@ -1890,20 +1890,16 @@ class Indicator extends PanelMenu.SystemIndicator {
|
|||||||
try {
|
try {
|
||||||
this._configPermission = await Polkit.Permission.new(
|
this._configPermission = await Polkit.Permission.new(
|
||||||
'org.freedesktop.NetworkManager.network-control', null, null);
|
'org.freedesktop.NetworkManager.network-control', null, null);
|
||||||
|
|
||||||
|
this._allSections.forEach(section => {
|
||||||
|
this._configPermission.bind_property('allowed',
|
||||||
|
section, 'reactive',
|
||||||
|
GObject.BindingFlags.SYNC_CREATE);
|
||||||
|
});
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
log(`No permission to control network connections: ${e}`);
|
log(`No permission to control network connections: ${e}`);
|
||||||
this._configPermission = null;
|
this._configPermission = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
Main.sessionMode.connect('updated', this._sessionUpdated.bind(this));
|
|
||||||
this._sessionUpdated();
|
|
||||||
}
|
|
||||||
|
|
||||||
_sessionUpdated() {
|
|
||||||
const sensitive =
|
|
||||||
!Main.sessionMode.isLocked &&
|
|
||||||
this._configPermission && this._configPermission.allowed;
|
|
||||||
this.menu.setSensitive(sensitive);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
_onActivationFailed() {
|
_onActivationFailed() {
|
||||||
|
Loading…
Reference in New Issue
Block a user