diff --git a/packages/app-frontend/src/features/components/ComponentsInspector.vue b/packages/app-frontend/src/features/components/ComponentsInspector.vue index 4b4076056..289d94828 100644 --- a/packages/app-frontend/src/features/components/ComponentsInspector.vue +++ b/packages/app-frontend/src/features/components/ComponentsInspector.vue @@ -43,11 +43,11 @@ export default defineComponent({ onKeyDown((event) => { // ƒ,ß,® - these are the result keys in Mac with altKey pressed - if ((event.key === 'f' || event.key === 'ƒ') && event.altKey) { + if (((['f', 'ƒ', 'а']).includes(event.key)) && event.altKey) { treeFilterInput.value.focus() return false } - else if ((event.key === 's' || event.key === 'ß') && event.altKey && !pickingComponent.value) { + else if ((['s', 'ß', 'ы']).includes(event.key) && event.altKey && !pickingComponent.value) { startPickingComponent() return false } diff --git a/packages/app-frontend/src/features/components/SelectedComponentPane.vue b/packages/app-frontend/src/features/components/SelectedComponentPane.vue index c1e6673d8..9b0124254 100644 --- a/packages/app-frontend/src/features/components/SelectedComponentPane.vue +++ b/packages/app-frontend/src/features/components/SelectedComponentPane.vue @@ -3,7 +3,7 @@ import StateInspector from '@front/features/inspector/StateInspector.vue' import EmptyPane from '@front/features/layout/EmptyPane.vue' import { computed, defineComponent, ref, watch } from 'vue' -import { SharedData, copyToClipboard, getComponentDisplayName } from '@vue-devtools/shared-utils' +import { SharedData, copyToClipboard, getComponentDisplayName, openInEditor } from '@vue-devtools/shared-utils' import { onKeyDown } from '@front/util/keyboard' import RenderCode from './RenderCode.vue' import { useSelectedComponent } from './composable' @@ -34,10 +34,18 @@ export default defineComponent({ const stateFilterInput = ref() onKeyDown((event) => { // ∂ - the result key in Mac with altKey pressed - if ((event.key === 'd' || event.key === '∂') && event.altKey) { + if ((['d', '∂', 'в'].includes(event.key)) && event.altKey) { stateFilterInput.value.focus() return false } + + if ((['o', 'o', 'щ']).includes(event.key) && event.altKey) { + const file = selectedComponent.data.value?.file + if (file) { + openInEditor(file) + } + return false + } }, true) const sameApp = computed(() => selectedComponent.data.value?.id.split(':')[0] === selectedComponentId.value?.split(':')[0]) diff --git a/packages/app-frontend/src/locales/en.js b/packages/app-frontend/src/locales/en.js index cff0ebef0..b7515f4e0 100644 --- a/packages/app-frontend/src/locales/en.js +++ b/packages/app-frontend/src/locales/en.js @@ -70,7 +70,7 @@ export default { }, ComponentInspector: { openInEditor: { - tooltip: 'Open <>{{file}} in editor', + tooltip: '[[{{keys.alt}}]] + [[O]] Open <>{{file}} in editor', }, }, EventsHistory: {