keyboard: Fix widget leak

We currently create an extended-keys popup every time it is requested,
but only destroy it (or rather: the last one) when the keyboard itself
is destroyed.

https://gitlab.gnome.org/GNOME/gnome-shell/issues/1976
This commit is contained in:
Florian Müllner 2019-12-04 19:02:33 +01:00
parent 85f10f1f6a
commit ff7dfa9259

View File

@ -292,6 +292,9 @@ var Key = GObject.registerClass({
if (this._extendedKeys.length === 0) if (this._extendedKeys.length === 0)
return; return;
if (this._boxPointer)
return;
this._boxPointer = new BoxPointer.BoxPointer(St.Side.BOTTOM); this._boxPointer = new BoxPointer.BoxPointer(St.Side.BOTTOM);
this._boxPointer.hide(); this._boxPointer.hide();
Main.layoutManager.addTopChrome(this._boxPointer); Main.layoutManager.addTopChrome(this._boxPointer);