panel: Update the hot corner when the panel box allocation changes
This fixes the missing hotcorner in the overview. https://bugzilla.gnome.org/show_bug.cgi?id=689537
This commit is contained in:
parent
49fa0ddebc
commit
31d14a2fb0
@ -124,7 +124,7 @@ const LayoutManager = new Lang.Class({
|
|||||||
this.addChrome(this.panelBox, { affectsStruts: true,
|
this.addChrome(this.panelBox, { affectsStruts: true,
|
||||||
trackFullscreen: true });
|
trackFullscreen: true });
|
||||||
this.panelBox.connect('allocation-changed',
|
this.panelBox.connect('allocation-changed',
|
||||||
Lang.bind(this, this._updatePanelBarriers));
|
Lang.bind(this, this._panelBoxChanged));
|
||||||
|
|
||||||
this.trayBox = new St.Widget({ name: 'trayBox',
|
this.trayBox = new St.Widget({ name: 'trayBox',
|
||||||
layout_manager: new Clutter.BinLayout() });
|
layout_manager: new Clutter.BinLayout() });
|
||||||
@ -256,6 +256,11 @@ const LayoutManager = new Lang.Class({
|
|||||||
this.bottomMonitor.width, this.bottomMonitor.height);
|
this.bottomMonitor.width, this.bottomMonitor.height);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
_panelBoxChanged: function() {
|
||||||
|
this.emit('panel-box-changed');
|
||||||
|
this._updatePanelBarriers();
|
||||||
|
},
|
||||||
|
|
||||||
_updatePanelBarriers: function() {
|
_updatePanelBarriers: function() {
|
||||||
if (this._leftPanelBarrier)
|
if (this._leftPanelBarrier)
|
||||||
global.destroy_pointer_barrier(this._leftPanelBarrier);
|
global.destroy_pointer_barrier(this._leftPanelBarrier);
|
||||||
@ -387,6 +392,7 @@ const LayoutManager = new Lang.Class({
|
|||||||
},
|
},
|
||||||
|
|
||||||
_startupAnimationComplete: function() {
|
_startupAnimationComplete: function() {
|
||||||
|
this.emit('panel-box-changed');
|
||||||
this._chrome.thawUpdateRegions();
|
this._chrome.thawUpdateRegions();
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -655,6 +655,13 @@ const ActivitiesButton = new Lang.Class({
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
this._xdndTimeOut = 0;
|
this._xdndTimeOut = 0;
|
||||||
|
|
||||||
|
// Since the hot corner uses stage coordinates, Clutter won't
|
||||||
|
// queue relayouts for us when the panel moves. Queue a relayout
|
||||||
|
// when that happens.
|
||||||
|
Main.layoutManager.connect('panel-box-changed', Lang.bind(this, function() {
|
||||||
|
container.queue_relayout();
|
||||||
|
}));
|
||||||
},
|
},
|
||||||
|
|
||||||
_containerGetPreferredWidth: function(actor, forHeight, alloc) {
|
_containerGetPreferredWidth: function(actor, forHeight, alloc) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user