diff --git a/js/ui/quickSettings.js b/js/ui/quickSettings.js index 1bc84a012472041f30f3df893359794fd49db3b3..fd58078337c2e04de7cf0c22cdd2bb1515fab8af 100644 --- a/js/ui/quickSettings.js +++ b/js/ui/quickSettings.js @@ -128,6 +128,9 @@ export const QuickToggle = GObject.registerClass({ GObject.BindingFlags.SYNC_CREATE, (bind, source) => [true, source !== null], null); + + this.connect('notify::checked', () => this._updateAccessibleState()); + this._updateAccessibleState(); } get label() { @@ -139,6 +142,13 @@ export const QuickToggle = GObject.registerClass({ console.warn('Trying to set label on QuickToggle. Use title instead.'); this.title = label; } + + _updateAccessibleState() { + if (this.checked) + this.add_accessible_state(Atk.StateType.CHECKED); + else + this.remove_accessible_state(Atk.StateType.CHECKED); + } }); export const QuickMenuToggle = GObject.registerClass({