diff --git a/js/ui/panel.js b/js/ui/panel.js index 49759af4c..1bca06b10 100644 --- a/js/ui/panel.js +++ b/js/ui/panel.js @@ -1039,6 +1039,10 @@ var Panel = new Lang.Class({ return this._leftBox.opacity; }, + get solidStyle() { + return this.actor.has_style_class_name('solid'); + }, + _updatePanel() { let panel = Main.sessionMode.panel; this._hideIndicators(); @@ -1073,8 +1077,12 @@ var Panel = new Lang.Class({ }, _updateSolidStyle() { + let hadSolidStyle = this.solidStyle; + if (this.has_style_pseudo_class('overview') || !Main.sessionMode.hasWindows) { this._removeStyleClassName('solid'); + if (hadSolidStyle) + this.emit('solid-style-changed'); return; } @@ -1104,6 +1112,8 @@ var Panel = new Lang.Class({ else this._removeStyleClassName('solid'); + if (isNearEnough != hadSolidStyle) + this.emit('solid-style-changed'); }, _hideIndicators() { @@ -1213,3 +1223,4 @@ var Panel = new Lang.Class({ }); } }); +Signals.addSignalMethods(Panel.prototype);