diff --git a/resources/js/components/fieldtypes/bard/Link.js b/resources/js/components/fieldtypes/bard/Link.js index 18b55b9077a..b0dfd39bd5c 100644 --- a/resources/js/components/fieldtypes/bard/Link.js +++ b/resources/js/components/fieldtypes/bard/Link.js @@ -61,6 +61,12 @@ export const Link = Mark.create({ ]; }, + addKeyboardShortcuts() { + return { + 'Ctrl-k': () => this.options.vm.events.emit('open-link-toolbar'), + }; + }, + addProseMirrorPlugins() { const vm = this.options.vm; return [ diff --git a/resources/js/components/fieldtypes/bard/LinkToolbar.vue b/resources/js/components/fieldtypes/bard/LinkToolbar.vue index 6d0e185bd24..57a9d6f16c6 100644 --- a/resources/js/components/fieldtypes/bard/LinkToolbar.vue +++ b/resources/js/components/fieldtypes/bard/LinkToolbar.vue @@ -166,6 +166,8 @@ import AssetSelector from '../../assets/Selector.vue'; import { Icon, Stack, StackContent, StackFooter } from '@/components/ui'; export default { + emits: ['updated', 'canceled', 'deselected'], + components: { AssetSelector, Icon, diff --git a/resources/js/components/fieldtypes/bard/LinkToolbarButton.vue b/resources/js/components/fieldtypes/bard/LinkToolbarButton.vue index 8f17c00b92f..3764e835e02 100644 --- a/resources/js/components/fieldtypes/bard/LinkToolbarButton.vue +++ b/resources/js/components/fieldtypes/bard/LinkToolbarButton.vue @@ -74,5 +74,13 @@ export default { } }, + created() { + this.bard.events.on('open-link-toolbar', () => this.showingToolbar = true); + }, + + beforeUnmount() { + this.bard.events.off('open-link-toolbar'); + }, + };