diff --git a/wax-prosemirror-core/src/WaxView.js b/wax-prosemirror-core/src/WaxView.js index 5342c95d77f42036e2af4eee821e0d937bd3bae9..45382705d0e03614051b20fbd1dc7eb870a83d23 100644 --- a/wax-prosemirror-core/src/WaxView.js +++ b/wax-prosemirror-core/src/WaxView.js @@ -102,7 +102,12 @@ const WaxView = forwardRef((props, ref) => { 'main', ); if (debug) applyDevTools(view); - if (autoFocus && view) view.focus(); + if (autoFocus && view) + setTimeout(() => { + view.focus(); + view.state.tr.insertText('', 0); + view.dispatch(view.state.tr); + }, 500); return () => view.destroy(); } diff --git a/wax-prosemirror-services/src/OENContainersService/PopulateHeadingsComponent.js b/wax-prosemirror-services/src/OENContainersService/PopulateHeadingsComponent.js index 79e791bbd5228aa8c69b2c2c4a0034b9fc6c16e7..5ffb88c2472845ffe4b96b8353e3b42cb3b22630 100644 --- a/wax-prosemirror-services/src/OENContainersService/PopulateHeadingsComponent.js +++ b/wax-prosemirror-services/src/OENContainersService/PopulateHeadingsComponent.js @@ -4,7 +4,6 @@ import { WaxContext } from 'wax-prosemirror-core'; import { DOMParser } from 'prosemirror-model'; import { ReplaceStep, ReplaceAroundStep } from 'prosemirror-transform'; import { Selection } from 'prosemirror-state'; -import { v4 as uuidv4 } from 'uuid'; import styled from 'styled-components'; import { Icon } from 'wax-prosemirror-components'; @@ -70,15 +69,22 @@ export default ({ setPosition, position }) => { setPosition({ ...position, left, top }); }, [position.left]); - useEffect(() => {}, []); - const generateHeadings = () => { const { tr, selection: { from, to }, + doc, } = main.state; const parser = DOMParser.fromSchema(main.state.config.schema); + const allSections = []; + + doc.descendants((editorNode, index) => { + if (Node.type.name === 'oen_section') { + allSections.push(editorNode); + } + }); + const content = '<h1>heading when i click note</h1><p>some text when i click note</p>'; const parsedContent = parser.parse(elementFromString(content)); @@ -88,6 +94,10 @@ export default ({ setPosition, position }) => { }; if (!readOnly) { - return <button onClick={generateHeadings}>generate</button>; + return ( + <button onClick={generateHeadings} type="button"> + generate + </button> + ); } }; diff --git a/wax-prosemirror-services/src/OverlayService/usePosition.js b/wax-prosemirror-services/src/OverlayService/usePosition.js index c883feea29e284c35fb18f4a8552d17b7cd7b21f..e01b067c4cd9cfca7105d969df9a07f364c152e6 100644 --- a/wax-prosemirror-services/src/OverlayService/usePosition.js +++ b/wax-prosemirror-services/src/OverlayService/usePosition.js @@ -57,7 +57,6 @@ export default options => { const PMnode = focusedView.state.schema.nodes[nodeType]; node = DocumentHelpers.findNode(focusedView.state, PMnode, findInParent); - console.log(node); if (!isObject(node)) return defaultOverlay; const { from, to } = followCursor ? focusedView.state.selection : node;