add renderless MenuBar

This commit is contained in:
Philipp Kühn
2018-11-04 22:43:26 +01:00
parent d4f6708daa
commit 32c62b85ca
7 changed files with 115 additions and 113 deletions

View File

@@ -1,7 +1,7 @@
<template>
<div class="editor">
<menu-bar class="menubar" :editor="editor">
<template slot-scope="{ commands, isActive }">
<menu-bar :editor="editor">
<div class="menubar" slot-scope="{ commands, isActive }">
<button
class="menubar__button"
@@ -121,7 +121,7 @@
<icon name="redo" />
</button>
</template>
</div>
</menu-bar>
<editor-content class="editor__content" :editor="editor" />

View File

@@ -1,8 +1,8 @@
<template>
<div>
<div class="editor">
<menu-bar class="menubar" :editor="editor">
<template slot-scope="{ commands, isActive }">
<menu-bar :editor="editor">
<div class="menubar" slot-scope="{ commands, isActive }">
<button
class="menubar__button"
@@ -84,7 +84,7 @@
<icon name="code" />
</button>
</template>
</div>
</menu-bar>
<editor-content class="editor__content" :editor="editor" />

View File

@@ -1,8 +1,11 @@
<template>
<div class="editor">
<menu-bar :editor="editor">
<template slot-scope="{ commands, isActive, focused }">
<div class="menubar is-hidden" :class="{ 'is-focused': focused }">
<div
class="menubar is-hidden"
:class="{ 'is-focused': focused }"
slot-scope="{ commands, isActive, focused }"
>
<button
class="menubar__button"
@@ -109,7 +112,6 @@
</button>
</div>
</template>
</menu-bar>
<editor-content class="editor__content" :editor="editor" />

View File

@@ -1,14 +1,14 @@
<template>
<div class="editor">
<menu-bar class="menubar" :editor="editor">
<template slot-scope="{ commands }">
<menu-bar :editor="editor">
<div class="menubar" slot-scope="{ commands }">
<button
class="menubar__button"
@click="showImagePrompt(commands.image)"
>
<icon name="image" />
</button>
</template>
</div>
</menu-bar>
<editor-content class="editor__content" :editor="editor" />

View File

@@ -1,7 +1,7 @@
<template>
<div class="editor">
<menu-bar class="menubar" :editor="editor">
<template slot-scope="{ commands, isActive }">
<menu-bar :editor="editor">
<div class="menubar" slot-scope="{ commands, isActive }">
<button
class="menubar__button"
@@ -27,7 +27,7 @@
<icon name="align-right" />
</button>
</template>
</div>
</menu-bar>
<editor-content class="editor__content" :editor="editor" />

View File

@@ -1,7 +1,7 @@
<template>
<div class="editor">
<menu-bar class="menubar" :editor="editor">
<template slot-scope="{ commands, isActive }">
<menu-bar :editor="editor">
<div class="menubar" slot-scope="{ commands, isActive }">
<button
class="menubar__button"
@@ -35,7 +35,7 @@
<icon name="checklist" />
</button>
</template>
</div>
</menu-bar>
<editor-content class="editor__content" :editor="editor" />

View File

@@ -5,17 +5,17 @@ export default {
type: Object,
},
},
render(createElement) {
render() {
if (!this.editor) {
return null
}
return createElement('div', this.$scopedSlots.default({
return this.$scopedSlots.default({
focused: this.editor.view.focused,
focus: this.editor.focus,
commands: this.editor.commands,
isActive: this.editor.isActive.bind(this.editor),
markAttrs: this.editor.markAttrs.bind(this.editor),
}))
})
},
}