diff --git a/dash.js b/dash.js index cd201efba..cdc5b3263 100644 --- a/dash.js +++ b/dash.js @@ -197,10 +197,7 @@ export const DockDash = GObject.registerClass({ }); this._box._delegate = this; this._boxContainer.add_child(this._box); - if (this._scrollView.add_actor) - this._scrollView.add_actor(this._boxContainer); - else - this._scrollView.add_child(this._boxContainer); + Utils.addActor(this._scrollView, this._boxContainer); this._dashContainer.add_child(this._scrollView); this._showAppsIcon = new AppIcons.DockShowAppsIcon(this._position); diff --git a/utils.js b/utils.js index bc4eb7705..ccec00ae4 100644 --- a/utils.js +++ b/utils.js @@ -686,3 +686,10 @@ export function supportsExtendedBarriers() { return global.display.supports_extended_barriers(); return !!(global.backend.capabilities & Meta.BackendCapabilities.BARRIERS); } + +export function addActor(element, actor) { + if (element.add_actor) + element.add_actor(actor); + else + element.add_child(actor); +} diff --git a/windowPreview.js b/windowPreview.js index 32e0a4611..75459b522 100644 --- a/windowPreview.js +++ b/windowPreview.js @@ -60,10 +60,7 @@ export class WindowPreviewMenu extends PopupMenu.PopupMenu { }); this._destroyId = this._source.connect('destroy', this.destroy.bind(this)); - if (Main.uiGroup.add_actor) - Main.uiGroup.add_actor(this.actor); - else - Main.uiGroup.add_child(this.actor); + Utils.addActor(Main.uiGroup, this.actor); this.connect('destroy', this._onDestroy.bind(this)); } @@ -112,10 +109,7 @@ class WindowPreviewList extends PopupMenu.PopupMenuSection { this.isHorizontal = position === St.Side.BOTTOM || position === St.Side.TOP; this.box.set_vertical(!this.isHorizontal); this.box.set_name('dashtodockWindowList'); - if (this.actor.add_actor) - this.actor.add_actor(this.box); - else - this.actor.add_child(this.box); + Utils.addActor(this.actor, this.box); this.actor._delegate = this; this._shownInitially = false; @@ -365,10 +359,7 @@ class WindowPreviewMenuItem extends PopupMenu.PopupBaseMenuItem { ? Clutter.ActorAlign.START : Clutter.ActorAlign.END, y_align: Clutter.ActorAlign.START, }); - if (this.closeButton.add_actor) - this.closeButton.add_actor(new St.Icon({icon_name: 'window-close-symbolic'})); - else - this.closeButton.add_child(new St.Icon({icon_name: 'window-close-symbolic'})); + Utils.addActor(this.closeButton, new St.Icon({icon_name: 'window-close-symbolic'})); this.closeButton.connect('clicked', () => this._closeWindow()); const overlayGroup = new Clutter.Actor({