[gnome-shell] SwitcherPopup: Check for type using constructor



commit 3c54e863e633a91429749c259e1196b9c2cc9de7
Author: Marco Trevisan (Treviño) <mail 3v1n0 net>
Date:   Thu Apr 18 15:50:49 2019 -0500

    SwitcherPopup: Check for type using constructor
    
    Classes that are sub-classes of GObject don't use a constructor per se, so we
    can't check for new.target (as this is undefined) in _init.
    
    Then compare the current constructor name instead.
    
    https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/503

 js/ui/switcherPopup.js | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
---
diff --git a/js/ui/switcherPopup.js b/js/ui/switcherPopup.js
index c28c22910..cd0125786 100644
--- a/js/ui/switcherPopup.js
+++ b/js/ui/switcherPopup.js
@@ -33,8 +33,8 @@ function primaryModifier(mask) {
 var SwitcherPopup = GObject.registerClass(
 class SwitcherPopup extends St.Widget {
     _init(items) {
-        if (new.target === SwitcherPopup)
-            throw new TypeError('Cannot instantiate abstract class ' + new.target.name);
+        if (this.constructor.name === SwitcherPopup.prototype.constructor.name)
+            throw new TypeError(`Cannot instantiate abstract class ${this.constructor.name}`);
 
         super._init({ style_class: 'switcher-popup',
                       reactive: true,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]