st: Move slow-down-factor into settings

Now that we have a Settings singleton, we have a better place for the
slow-down-factor than an awkward extern variable.

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/656
This commit is contained in:
Florian Müllner
2019-07-25 12:50:26 +02:00
committed by Georges Basile Stavracas Neto
parent 5295866eff
commit 12b8fb15b1
8 changed files with 68 additions and 43 deletions

View File

@ -107,6 +107,12 @@ function init() {
}
});
St.set_slow_down_factor = function(factor) {
let { stack } = new Error();
log(`St.set_slow_down_factor() is deprecated, use St.Settings.slow_down_factor\n${stack}`);
St.Settings.get().slow_down_factor = factor;
};
let origToString = Object.prototype.toString;
Object.prototype.toString = function() {
let base = origToString.call(this);
@ -129,7 +135,7 @@ function init() {
if (slowdownEnv) {
let factor = parseFloat(slowdownEnv);
if (!isNaN(factor) && factor > 0.0)
St.set_slow_down_factor(factor);
St.Settings.get().slow_down_factor = factor;
}
// OK, now things are initialized enough that we can import shell JS

View File

@ -949,9 +949,10 @@ var LookingGlass = class LookingGlass {
if (this._completionActor.visible) {
this._completionActor.height = naturalHeight;
} else {
let settings = St.Settings.get();
this._completionActor.show();
Tweener.removeTweens(this._completionActor);
Tweener.addTween(this._completionActor, { time: AUTO_COMPLETE_SHOW_COMPLETION_ANIMATION_DURATION / St.get_slow_down_factor(),
Tweener.addTween(this._completionActor, { time: AUTO_COMPLETE_SHOW_COMPLETION_ANIMATION_DURATION / settings.slow_down_factor,
transition: 'easeOutQuad',
height: naturalHeight,
opacity: 255
@ -961,8 +962,9 @@ var LookingGlass = class LookingGlass {
_hideCompletions() {
if (this._completionActor) {
let settings = St.Settings.get();
Tweener.removeTweens(this._completionActor);
Tweener.addTween(this._completionActor, { time: AUTO_COMPLETE_SHOW_COMPLETION_ANIMATION_DURATION / St.get_slow_down_factor(),
Tweener.addTween(this._completionActor, { time: AUTO_COMPLETE_SHOW_COMPLETION_ANIMATION_DURATION / settings.slow_down_factor,
transition: 'easeOutQuad',
height: 0,
opacity: 0,
@ -1082,7 +1084,8 @@ var LookingGlass = class LookingGlass {
// We inverse compensate for the slow-down so you can change the factor
// through LookingGlass without long waits.
Tweener.addTween(this.actor, { time: 0.5 / St.get_slow_down_factor(),
let settings = St.Settings.get();
Tweener.addTween(this.actor, { time: 0.5 / settings.slow_down_factor,
transition: 'easeOutQuad',
y: this._targetY
});
@ -1101,7 +1104,8 @@ var LookingGlass = class LookingGlass {
Main.popModal(this._entry);
Tweener.addTween(this.actor, { time: Math.min(0.5 / St.get_slow_down_factor(), 0.5),
let settings = St.Settings.get();
Tweener.addTween(this.actor, { time: Math.min(0.5 / settings.slow_down_factor, 0.5),
transition: 'easeOutQuad',
y: this._hiddenY,
onComplete: () => {

View File

@ -211,8 +211,9 @@ var ClutterFrameTicker = class {
}
start() {
if (St.get_slow_down_factor() > 0)
Tweener.setTimeScale(1 / St.get_slow_down_factor());
let settings = St.Settings.get();
if (settings.slow_down_factor > 0)
Tweener.setTimeScale(1 / settings.slow_down_factor);
this._timeline.start();
global.begin_work();
}