diff --git a/assets/css/styles.scss b/assets/css/styles.scss index 831a86e0e..614e89475 100644 --- a/assets/css/styles.scss +++ b/assets/css/styles.scss @@ -494,6 +494,7 @@ fieldset.yellow legend { display: none; } +kbd, select, input, option, diff --git a/components/collections/folder.vue b/components/collections/folder.vue index 567040a2d..4b2d6a4ce 100644 --- a/components/collections/folder.vue +++ b/components/collections/folder.vue @@ -27,13 +27,19 @@ class="icon" @click="removeFolder" v-tooltip="'Delete folder'" + v-close-popover > delete Delete
- diff --git a/components/collections/request.vue b/components/collections/request.vue index 8443e0cfa..32de9bfe5 100644 --- a/components/collections/request.vue +++ b/components/collections/request.vue @@ -28,6 +28,7 @@ class="icon" @click="removeRequest" v-tooltip="'Delete request'" + v-close-popover > delete Delete @@ -38,6 +39,7 @@ class="icon" @click="$emit('edit-request')" v-tooltip="'Edit request'" + v-close-popover > edit Edit diff --git a/layouts/default.vue b/layouts/default.vue index f99fc2819..0c3a59d81 100644 --- a/layouts/default.vue +++ b/layouts/default.vue @@ -40,6 +40,16 @@ more_vert @@ -219,10 +256,12 @@ import intializePwa from "../assets/js/pwa"; import logo from "../components/logo"; import * as version from "../.postwoman/version.json"; +import modal from "../components/modal"; export default { components: { - logo + logo, + modal }, methods: { @@ -240,7 +279,8 @@ export default { // that can be called to show the user the installation // prompt. showInstallPrompt: null, - version: {} + version: {}, + showShortcuts: false }; }, diff --git a/pages/index.vue b/pages/index.vue index 05f681d07..3d359cf34 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -1942,6 +1942,13 @@ export default { }, mounted() { this.observeRequestButton(); + this._keyListener = function(e) { + if (e.key === "s" && (e.ctrlKey || e.metaKey)) { + e.preventDefault(); + this.saveRequest(); + } + }; + document.addEventListener("keydown", this._keyListener.bind(this)); }, created() { this.urlExcludes = this.$store.state.postwoman.settings.URL_EXCLUDES || { @@ -1974,6 +1981,9 @@ export default { this.setRouteQueryState(); } ); + }, + beforeDestroy() { + document.removeEventListener('keydown', this._keyListener); } };