fix: slash menu cannot disappear

This commit is contained in:
DiamondThree
2022-07-27 18:16:36 +08:00
parent 6f8ad3fa77
commit 9cc55d7f63
2 changed files with 27 additions and 21 deletions
@@ -3,24 +3,28 @@ import { createRoot, type Root } from 'react-dom/client';
import { BasePlugin } from '../../base-plugin';
import { CommandMenu } from './Menu';
import { PluginRenderRoot } from '../../utils';
const PLUGIN_NAME = 'command-menu';
export class CommandMenuPlugin extends BasePlugin {
private root?: Root;
private root?: PluginRenderRoot;
public static override get pluginName(): string {
return PLUGIN_NAME;
}
protected override on_render(): void {
if (this.editor.isWhiteboard) return;
const container = document.createElement('div');
// TODO remove
container.classList.add(`id-${PLUGIN_NAME}`);
// this.editor.attachElement(this.menu_container);
window.document.body.appendChild(container);
this.root = createRoot(container);
this.render_command_menu();
this.root = new PluginRenderRoot({
name: PLUGIN_NAME,
render: this.editor.reactRenderRoot.render,
});
this.root.mount();
this.renderCommandMenu();
}
private renderCommandMenu(): void {