layout: Allow adding already parented actors for chrome tracking
let trackChrome accept actors that are not children of chrome actors. this will be useful for the MetaCloseDialog in gnome-shell, which is already included in the MetaWindowGroup, but needs to be tracked as chrome for the dialog to receive pointer events on X11. https://bugzilla.gnome.org/show_bug.cgi?id=762083
This commit is contained in:
parent
516d19eb39
commit
74bd009c86
@ -769,8 +769,7 @@ const LayoutManager = new Lang.Class({
|
|||||||
// @actor: a descendant of the chrome to begin tracking
|
// @actor: a descendant of the chrome to begin tracking
|
||||||
// @params: parameters describing how to track @actor
|
// @params: parameters describing how to track @actor
|
||||||
//
|
//
|
||||||
// Tells the chrome to track @actor, which must be a descendant
|
// Tells the chrome to track @actor. This can be used to extend the
|
||||||
// of an actor added via addChrome(). This can be used to extend the
|
|
||||||
// struts or input region to cover specific children.
|
// struts or input region to cover specific children.
|
||||||
//
|
//
|
||||||
// @params can have any of the same values as in addChrome(),
|
// @params can have any of the same values as in addChrome(),
|
||||||
@ -783,10 +782,9 @@ const LayoutManager = new Lang.Class({
|
|||||||
ancestor = ancestor.get_parent();
|
ancestor = ancestor.get_parent();
|
||||||
index = this._findActor(ancestor);
|
index = this._findActor(ancestor);
|
||||||
}
|
}
|
||||||
if (!ancestor)
|
|
||||||
throw new Error('actor is not a descendent of a chrome actor');
|
|
||||||
|
|
||||||
let ancestorData = this._trackedActors[index];
|
let ancestorData = ancestor ? this._trackedActors[index]
|
||||||
|
: defaultParams;
|
||||||
if (!params)
|
if (!params)
|
||||||
params = {};
|
params = {};
|
||||||
// We can't use Params.parse here because we want to drop
|
// We can't use Params.parse here because we want to drop
|
||||||
|
Loading…
x
Reference in New Issue
Block a user