runDialog: animate to new height on error
When an error message is displayed the run dialog pops to the new height instantly. It needs a a transition. This commit makes the dialog quickly grow to its ultimate height, making room for the error message, before showing it. https://bugzilla.gnome.org/show_bug.cgi?id=637187
This commit is contained in:
parent
ab1ecb5ba2
commit
2905b0318d
@ -21,6 +21,8 @@ const MAX_FILE_DELETED_BEFORE_INVALID = 10;
|
|||||||
const HISTORY_KEY = 'command-history';
|
const HISTORY_KEY = 'command-history';
|
||||||
const HISTORY_LIMIT = 512;
|
const HISTORY_LIMIT = 512;
|
||||||
|
|
||||||
|
const DIALOG_GROW_TIME = 0.1;
|
||||||
|
|
||||||
function CommandCompleter() {
|
function CommandCompleter() {
|
||||||
this._init();
|
this._init();
|
||||||
}
|
}
|
||||||
@ -362,7 +364,21 @@ __proto__: ModalDialog.ModalDialog.prototype,
|
|||||||
let errorStr = _("Execution of '%s' failed:").format(command) + '\n' + e.message;
|
let errorStr = _("Execution of '%s' failed:").format(command) + '\n' + e.message;
|
||||||
this._errorMessage.set_text(errorStr);
|
this._errorMessage.set_text(errorStr);
|
||||||
|
|
||||||
this._errorBox.show();
|
if (!this._errorBox.visible) {
|
||||||
|
let [errorBoxMinHeight, errorBoxNaturalHeight] = this._errorBox.get_preferred_height(-1);
|
||||||
|
|
||||||
|
let parentActor = this._errorBox.get_parent();
|
||||||
|
Tweener.addTween(parentActor,
|
||||||
|
{ height: parentActor.height + errorBoxNaturalHeight,
|
||||||
|
time: DIALOG_GROW_TIME,
|
||||||
|
transition: 'easeOutQuad',
|
||||||
|
onComplete: Lang.bind(this,
|
||||||
|
function() {
|
||||||
|
parentActor.set_height(-1);
|
||||||
|
this._errorBox.show();
|
||||||
|
})
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user