diff --git a/src/uix/eidos/components/palabras/palabras.css b/src/uix/eidos/components/palabras/palabras.css index 820de629d..57908874e 100644 --- a/src/uix/eidos/components/palabras/palabras.css +++ b/src/uix/eidos/components/palabras/palabras.css @@ -108,9 +108,8 @@ margin-block: 0 0.6em; } /* Selection marker for the active/selected block — dotted (NOT the solid focus - ring, which is suppressed above). Stamped by WordsActivate. With the block - shell, `data-words-active` now lands on the wrapper div (a real container) - instead of the bare element — SAME dashed marker as before, cleaner anchor. */ + ring, which is suppressed above). Stamped by WordsActivate on the active + block element. */ [data-palabras-doc] [data-words-active] { outline: 1.5px dashed var(--color-primary-border); outline-offset: 6px; diff --git a/src/uix/soma/components/words/engine/blocks/built-ins.ts b/src/uix/soma/components/words/engine/blocks/built-ins.ts index ee5bd08c6..c9a91033a 100644 --- a/src/uix/soma/components/words/engine/blocks/built-ins.ts +++ b/src/uix/soma/components/words/engine/blocks/built-ins.ts @@ -94,31 +94,16 @@ const paragraphSpec: WordsBlockSpec = { }, render(block, ctx) { const b = block as ParagraphBlock; - // Block SHELL: the block is a `
` wrapping a - // bare presentational `

`. The shell carries the block - // identity (node / id / path / type) + visual styles; the inner `

` only - // holds the editable inlines. This mirrors how callout / columns already - // render (div shells) and gives the active-block marker + the gutter grip a - // real container — instead of an outline floating around the bare `

`. - // The caret is unaffected: selection anchors to the `[data-words-node=text]` - // spans by absolute path, so an extra wrapper above them is transparent. return { kind: 'element', - tag: 'div', + tag: 'p', attrs: ctx.composeBlockAttrs( b, 'paragraph', ctx.path, b.align ? { 'data-words-align': b.align } : {} ), - children: [ - { - kind: 'element', - tag: 'p', - attrs: { 'data-words-inner': '' }, - children: ctx.renderInlines(b.children, ctx.path) - } - ] + children: ctx.renderInlines(b.children, ctx.path) }; } };