shellDBus: Emit a PropertyChanged for OverviewActive
I was going to add another DBus property to signal when the shell was done loading and was idle, and while implementing that I noticed we aren't emitting PropertyChanged for, well, any property. Let's fix OverviewActive. It's unfortunate it's so tedious to correctly implement a DBus property =/ https://bugzilla.gnome.org/show_bug.cgi?id=704163
This commit is contained in:
parent
45e42d7b9e
commit
891f30ff63
@ -90,6 +90,12 @@ const GnomeShell = new Lang.Class({
|
|||||||
function(display, action, deviceid, timestamp) {
|
function(display, action, deviceid, timestamp) {
|
||||||
this._emitAcceleratorActivated(action, deviceid, timestamp);
|
this._emitAcceleratorActivated(action, deviceid, timestamp);
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
this._cachedOverviewVisible = false;
|
||||||
|
Main.overview.connect('showing',
|
||||||
|
Lang.bind(this, this._checkOverviewVisibleChanged));
|
||||||
|
Main.overview.connect('hidden',
|
||||||
|
Lang.bind(this, this._checkOverviewVisibleChanged));
|
||||||
},
|
},
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -235,8 +241,15 @@ const GnomeShell = new Lang.Class({
|
|||||||
|
|
||||||
Mode: global.session_mode,
|
Mode: global.session_mode,
|
||||||
|
|
||||||
|
_checkOverviewVisibleChanged: function() {
|
||||||
|
if (Main.overview.visible !== this._cachedOverviewVisible) {
|
||||||
|
this._cachedOverviewVisible = Main.overview.visible;
|
||||||
|
this._dbusImpl.emit_property_changed('OverviewActive', new GLib.Variant('b', this._cachedOverviewVisible));
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
get OverviewActive() {
|
get OverviewActive() {
|
||||||
return Main.overview.visible;
|
return this._cachedOverviewVisible;
|
||||||
},
|
},
|
||||||
|
|
||||||
set OverviewActive(visible) {
|
set OverviewActive(visible) {
|
||||||
|
Loading…
Reference in New Issue
Block a user