animation: Reload sliced texture on global scale change
When the scale has changed we need to reload the texture at proper size. https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/5
This commit is contained in:
parent
b6ec02cef2
commit
9e881ab637
@ -18,6 +18,10 @@ var Animation = class {
|
|||||||
this.actor.connect('resource-scale-changed',
|
this.actor.connect('resource-scale-changed',
|
||||||
this._loadFile.bind(this, file, width, height));
|
this._loadFile.bind(this, file, width, height));
|
||||||
|
|
||||||
|
let themeContext = St.ThemeContext.get_for_stage(global.stage);
|
||||||
|
this._scaleChangedId = themeContext.connect('notify::scale-factor',
|
||||||
|
this._loadFile.bind(this, file, width, height));
|
||||||
|
|
||||||
this._speed = speed;
|
this._speed = speed;
|
||||||
|
|
||||||
this._isLoaded = false;
|
this._isLoaded = false;
|
||||||
@ -104,6 +108,11 @@ var Animation = class {
|
|||||||
|
|
||||||
_onDestroy() {
|
_onDestroy() {
|
||||||
this.stop();
|
this.stop();
|
||||||
|
|
||||||
|
let themeContext = St.ThemeContext.get_for_stage(global.stage);
|
||||||
|
if (this._scaleChangedId)
|
||||||
|
themeContext.disconnect(this._scaleChangedId);
|
||||||
|
this._scaleChangedId = 0;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user