rfkill: Consider HasAirplaneMode
`ShouldShowAirplaneMode` only considers whether airplane mode should be shown for the form factor, not whether there are any actual kill switches available. That's tracked in a separate property, `HasAirplaneMode`. Take that into account for our `:show-airplane-mode` property, so that it reflects when airplane mode should and *can* be shown. Right now we only show airplane mode when it is enabled (and therefore available), but this will change in the future. Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2385>
This commit is contained in:
parent
98cbc31e86
commit
e062e96ae6
@ -1,6 +1,7 @@
|
||||
<node>
|
||||
<interface name="org.gnome.SettingsDaemon.Rfkill">
|
||||
<property name="AirplaneMode" type="b" access="readwrite"/>
|
||||
<property name="HasAirplaneMode" type="b" access="read"/>
|
||||
<property name="HardwareAirplaneMode" type="b" access="read"/>
|
||||
<property name="BluetoothAirplaneMode" type="b" access="readwrite"/>
|
||||
<property name="BluetoothHasAirplaneMode" type="b" access="read"/>
|
||||
|
@ -60,7 +60,7 @@ const RfkillManager = GObject.registerClass({
|
||||
}
|
||||
|
||||
get show_airplane_mode() {
|
||||
return this._proxy.ShouldShowAirplaneMode;
|
||||
return this._proxy.HasAirplaneMode && this._proxy.ShouldShowAirplaneMode;
|
||||
}
|
||||
/* eslint-enable camelcase */
|
||||
|
||||
@ -73,6 +73,7 @@ const RfkillManager = GObject.registerClass({
|
||||
case 'HardwareAirplaneMode':
|
||||
this.notify('hw-airplane-mode');
|
||||
break;
|
||||
case 'HasAirplaneMode':
|
||||
case 'ShouldShowAirplaneMode':
|
||||
this.notify('show-airplane-mode');
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user