Repository navigation
TermDOM 0.1.8
Added
- contenteditable. An element with
contenteditable, or the body underdocument.designMode, is an editing host: it takes the caret, the arrows move it, and typing, pasting, Backspace, Delete and Enter edit its text as in a browser. Tested against CodeMirror 6. position: sticky. A sticky box holds its inset against the nearest scroll container, or the viewport, and stays within the box it flows in.- Negative insets.
top,right,bottomandleftaccept negative lengths. - MathML. Presentation MathML renders on the cell grid: fractions over a bar, radicals under one, sums and integrals with their limits, stretched fences, scripts, tables and matrices, spaced as TeX spaces them. Inline math linearizes onto one row.
--math-glyphs: ascii | box-drawingchooses the drawing pieces, and the text inside a formula is selectable. - Scroll events.
scrollfires on a scrolled element and on the document, and events bubble past the document to the window. - FormData.
new FormData(form)reads a form's entries, the form firesformdata, and aFormDatais accepted whereverfetchtakes one. - Links paint in
LinkText, underlined. - Click details. Mouse events carry the click count in
detail, anddblclickfires. - Tabs. A preserved tab expands to its tab stop under
tab-size. - Modern color syntax.
rgb()andhsl()accept the space-separated forms with a slash before the alpha. document.fontsis a font face set that is already loaded.
Changed
- Frame callbacks run before the frame paints, so a layout read in
requestAnimationFramesees the frame about to draw. - The wheel at the top of a document. A document taller than the screen stops at its top. One that fits hands the wheel to the terminal's scrollback and takes it back on the next keystroke.
- Focus shows as the cursor in a text field and as an outline elsewhere.
KeyboardEvent.codeis set for ASCII letters, digits and US-layout punctuation, and empty otherwise.- A
MediaQueryListis retained only while it has a listener.
Fixed
- A fixed box inside a scrolled container scrolled with it instead of staying on the viewport, and an absolute box scrolled with a container outside its containing block.
- In fullscreen, mouse rows were offset by the row the command started on, so clicks and the wheel missed above it.
- A select's picker was as wide as its field, so a grouped option ran past the border.
- A focused inline that wrapped was outlined across the whole width of its lines.
- Mouse capture was lost under tmux after motion reporting was turned off.
- The cursor was visible while the document scrolled earlier output away to grow.
- The children of a
display: contentselement were not items of the flex box around it. - The arrows were not recognized in application cursor mode.
- A
<br>had no rect. - A custom element's
observedAttributesreturning a string was accepted. document.titleon an SVG document did not read its root's title.- Restyling reached more of the document than a mutation could touch, and painting walked the DOM rather than the layout tree; both are faster.
- A Canvas box painted black rather than the terminal's background.
These release notes were generated by Claude Code.