[lookingGlass] Paint border around current result if instanceof Clutter.Actor
It's very convenient to drill down through object properties and be able to see exactly which portion of the screen those actors correspond to, without trying to guess with the inspector tool.
This commit is contained in:
parent
07a8d5ed2d
commit
1b75ae0184
@ -320,6 +320,10 @@ LookingGlass.prototype = {
|
|||||||
this._savedText = null;
|
this._savedText = null;
|
||||||
this._historyNavIndex = -1;
|
this._historyNavIndex = -1;
|
||||||
this._history = [];
|
this._history = [];
|
||||||
|
this._borderPaintTarget = null;
|
||||||
|
this._borderPaintId = 0;
|
||||||
|
this._borderDestroyId = 0;
|
||||||
|
|
||||||
this._readHistory();
|
this._readHistory();
|
||||||
|
|
||||||
this._open = false;
|
this._open = false;
|
||||||
@ -487,6 +491,18 @@ LookingGlass.prototype = {
|
|||||||
this._results.push(result);
|
this._results.push(result);
|
||||||
this._resultsArea.append(result.actor, Big.BoxPackFlags.NONE);
|
this._resultsArea.append(result.actor, Big.BoxPackFlags.NONE);
|
||||||
this._propInspector.setTarget(obj);
|
this._propInspector.setTarget(obj);
|
||||||
|
if (this._borderPaintTarget != null) {
|
||||||
|
this._borderPaintTarget.disconnect(this._borderPaintId);
|
||||||
|
this._borderPaintTarget = null;
|
||||||
|
}
|
||||||
|
if (obj instanceof Clutter.Actor) {
|
||||||
|
this._borderPaintTarget = obj;
|
||||||
|
this._borderPaintId = Shell.add_hook_paint_red_border(obj);
|
||||||
|
this._borderDestroyId = obj.connect('destroy', Lang.bind(this, function () {
|
||||||
|
this._borderDestroyId = 0;
|
||||||
|
this._borderPaintTarget = null;
|
||||||
|
}));
|
||||||
|
}
|
||||||
let children = this._resultsArea.get_children();
|
let children = this._resultsArea.get_children();
|
||||||
if (children.length > this._maxItems) {
|
if (children.length > this._maxItems) {
|
||||||
this._results.shift();
|
this._results.shift();
|
||||||
@ -582,6 +598,12 @@ LookingGlass.prototype = {
|
|||||||
this._open = false;
|
this._open = false;
|
||||||
Tweener.removeTweens(this.actor);
|
Tweener.removeTweens(this.actor);
|
||||||
|
|
||||||
|
if (this._borderPaintTarget != null) {
|
||||||
|
this._borderPaintTarget.disconnect(this._borderPaintId);
|
||||||
|
this._borderPaintTarget.disconnect(this._borderDestroyId);
|
||||||
|
this._borderPaintTarget = null;
|
||||||
|
}
|
||||||
|
|
||||||
Main.popModal(this.actor);
|
Main.popModal(this.actor);
|
||||||
|
|
||||||
Tweener.addTween(this.actor, { time: 0.5,
|
Tweener.addTween(this.actor, { time: 0.5,
|
||||||
|
Loading…
Reference in New Issue
Block a user