Skip to content

Commit f6a37ab

Browse files
committed
feat(components): pick keyboard shortcut
1 parent 1891ff4 commit f6a37ab

2 files changed

Lines changed: 32 additions & 0 deletions

File tree

packages/app-frontend/src/features/components/ComponentsInspector.vue

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { useComponentPick } from './pick'
55
import SplitPane from '@front/features/layout/SplitPane.vue'
66
import ComponentTreeNode from './ComponentTreeNode.vue'
77
import SelectedComponentPane from './SelectedComponentPane.vue'
8+
import { onKeyUp } from '@front/util/keyboard'
89
910
export default {
1011
components: {
@@ -37,6 +38,15 @@ export default {
3738
stopPickingComponent
3839
} = useComponentPick()
3940
41+
onKeyUp(event => {
42+
console.log(event.key)
43+
if (event.key === 's' && !pickingComponent.value) {
44+
startPickingComponent()
45+
} else if (event.key === 'Escape' && pickingComponent.value) {
46+
stopPickingComponent()
47+
}
48+
})
49+
4050
return {
4151
rootInstances,
4252
treeFilter,
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import { onMounted, onUnmounted } from '@vue/composition-api'
2+
3+
export function onKeyUp (cb) {
4+
function handler (event) {
5+
if (
6+
event.target.tagName === 'INPUT' ||
7+
event.target.tagName === 'TEXTAREA'
8+
) {
9+
return
10+
}
11+
12+
cb(event)
13+
}
14+
15+
onMounted(() => {
16+
window.addEventListener('keyup', handler)
17+
})
18+
19+
onUnmounted(() => {
20+
window.removeEventListener('keyup', handler)
21+
})
22+
}

0 commit comments

Comments
 (0)