From a3c931e3b54a60fcb12d02406bd7dd06eb82ff73 Mon Sep 17 00:00:00 2001
From: Adam Procter <adamprocter@researchnot.es>
Date: Thu, 27 Aug 2020 16:24:06 +0100
Subject: [PATCH] added shortcuts for tool modes

---
 .DS_Store                                   | Bin 10244 -> 10244 bytes
 app/src/components/NodesLayer.vue           |   8 +++----
 app/src/components/mixins/shortcutsMixin.js |  22 +++++++++++++++++++-
 app/src/views/Home.vue                      |   4 ++++
 4 files changed, 29 insertions(+), 5 deletions(-)

diff --git a/.DS_Store b/.DS_Store
index 76e20cb639d341135597b349b245513d12470a1c..f2b4ad9acc52a2fd2ab9bc29fcbef9318ee5cbe2 100644
GIT binary patch
delta 201
zcmZn(XbIThF5vbxsURn_xWvHV1|t(Q3o9Et2PYRN4<{cdXKZjretB?7Vo7PSQ({rP
zfJ|^^N@`MKQFvxbNk&L&o@-8OS!$ktkxybt>f{Om&-7@JhJeJ944@)TWrv&x3?RVC
z!5J?gQC)3fVXC8GWMELMqfl*bZlI%JVr*7h%gM<hsqPjOSK8D!Yxa_*%a$KH4A#ZK
e$Oxes1fevHI<i?%@D$%>c7<Ooo3Dy6GXnrZUN#N@

delta 160
zcmZn(XbIThE?{^vsURn_xWvHVIwKP^3o9Et2L}f?2QNo#a7KQ4a7kiGX|YpcQ8b7b
zkXVwDlsLIpz%zi8laqrpUO=L{+QiIMN5Rn0s8&az+QPy_N5Ry@q_&omLtNF+)-xfu
qvZ}hKwr(Z^7%(zIXa;^L4WnjlwiP_ZH?cuyGrPhsmd(1N%*+64ekM%-

diff --git a/app/src/components/NodesLayer.vue b/app/src/components/NodesLayer.vue
index 3054bc0..f2aae14 100644
--- a/app/src/components/NodesLayer.vue
+++ b/app/src/components/NodesLayer.vue
@@ -49,9 +49,9 @@
 
             <p class="info">*markdown supported &amp; autosaves</p>
             <div class="btn-row">
-              <BaseButton buttonClass="danger" @click="deleteFlag()"
+              <!-- <BaseButton buttonClass="danger" @click="deleteFlag()"
                 >Delete</BaseButton
-              >
+              > -->
               <div v-if="value.read_mode == true">
                 <BaseButton
                   class="read"
@@ -122,7 +122,7 @@
             <p class="info">*markdown supported &amp; autosaves</p>
             <div class="btn-row">
               <BaseButton buttonClass="danger" @click="deleteFlag()"
-                >Delete</BaseButton
+                >Hide</BaseButton
               >
               <BaseButton
                 buttonClass="new-link"
@@ -206,7 +206,7 @@
             <p class="info">*markdown supported &amp; autosaves</p>
             <div class="btn-row">
               <BaseButton buttonClass="danger" @click="deleteFlag()"
-                >Delete</BaseButton
+                >Hide</BaseButton
               >
               <div v-if="value.read_mode == true">
                 <BaseButton
diff --git a/app/src/components/mixins/shortcutsMixin.js b/app/src/components/mixins/shortcutsMixin.js
index e6d1c14..64634d0 100644
--- a/app/src/components/mixins/shortcutsMixin.js
+++ b/app/src/components/mixins/shortcutsMixin.js
@@ -7,9 +7,29 @@ export const shortcutsMixin = {
       if (this.shortcutstate == false) {
         if (e.keyCode == 78) {
           // n for new
-
           this.addNode()
         }
+        if (e.keyCode == 83) {
+          // s for selection
+          this.selectMode('select')
+        }
+        if (e.keyCode == 65) {
+          // a as alternative for selection
+          this.selectMode('select')
+        }
+        if (e.keyCode == 67) {
+          // c for connect
+          this.selectMode('connect')
+        }
+        if (e.keyCode == 77) {
+          // m for selection
+          this.selectMode('move')
+        }
+        // FIXME: doesn't trigger upload file dialog yet but does swap modes
+        if (e.keyCode == 85) {
+          // u for upload
+          this.selectMode('upload')
+        }
       }
     },
   },
diff --git a/app/src/views/Home.vue b/app/src/views/Home.vue
index ec87b79..fb5a99b 100644
--- a/app/src/views/Home.vue
+++ b/app/src/views/Home.vue
@@ -137,6 +137,7 @@ export default {
       myNodes: (state) => state.myNodes,
       otherNodes: (state) => state.otherNodes,
       shortcutstate: (state) => state.shortcutstate,
+      toolmode: (state) => state.ui.mode,
       connections: (state) => state.configConnections,
     }),
     ...mapGetters({
@@ -200,6 +201,9 @@ export default {
     addNode() {
       this.$store.dispatch('addNode')
     },
+    selectMode(mode) {
+      this.$store.commit('ui/setMode', mode)
+    },
 
     offlineTriggered() {
       this.offline = true
-- 
GitLab