diff --git a/src/app/core/loader/loader.ts b/src/app/core/loader/loader.ts
index f12b17b..23acf6a 100644
--- a/src/app/core/loader/loader.ts
+++ b/src/app/core/loader/loader.ts
@@ -37,8 +37,8 @@
       this.$state.go('xos.login');
     }
     else {
-      this.XosModelDiscoverer.discover()
       // NOTE loading XOS Models
+      this.XosModelDiscoverer.discover()
         .then((res) => {
           if (res) {
             this.$log.info('[XosLoader] All models loaded');
@@ -46,9 +46,9 @@
           else {
             this.$log.info('[XosLoader] Failed to load some models, moving on.');
           }
+          // NOTE loading GUI Extensions
           return this.XosOnboarder.onboard();
         })
-        // NOTE loading GUI Extensions
         .then(() => {
           this.moveOnTo(this.XosConfig.lastVisitedUrl);
         })
diff --git a/src/app/core/services/keyboard-shortcut.ts b/src/app/core/services/keyboard-shortcut.ts
index 35af07e..1907b0d 100644
--- a/src/app/core/services/keyboard-shortcut.ts
+++ b/src/app/core/services/keyboard-shortcut.ts
@@ -85,6 +85,10 @@
 
       const pressedKey = this.whatKey(e.which);
 
+      if (!pressedKey) {
+        return;
+      }
+
       if (this.allowedModifiers.indexOf(e.key) > -1) {
         this.addActiveModifierKey(e.key);
         return;
