Repository navigation
v0.2.9
Mermaid diagrams in markdown, an extended canvas format in the new bezel-canvas-core, resizable painted fences and embed cards, right-click menus, editor popups on ui::menu, nearest reveal, drag autoscroll, and hideable inactive carets.
New
bezel-canvas-coreholds the editor-free half of the canvas: the model, layouts, edits, paths and snapping, whichbezel-canvasre-exports, anddiagram, a read-only painter that draws a canvas at its own size.diagram::size_ofgives that size.- The canvas format adds a
version, a node'sShape, an edge's routepointsandStroke, andEnd::CircleandEnd::Cross.canvas_core::json_canvas::importandexporttranslate to and from JSON Canvas 1.0;paint::color,shape,edgeandendpaint its parts. - The
mermaidfeature ofbezel-canvas-coreaddsmermaid::import, which lays out flowchart, state and class diagrams as a canvas. - The
mermaidfeature ofbezel-markdowndraws```mermaidfences as diagrams in a fence box that pans by drag and zooms from corner controls.markdown::mermaid::renderdraws one. - Painted fences and embed cards drag taller from a grip along their foot in
bezel-editor. The height is kept in markdown asmermaid 360in a fence's info string andembed 360in a link's title, and carried asFence::heightandForm::Embed(Some(_)).FenceHost::resize,Editing::sizingandBlockLayouts::painted_boundsback it. ui::context_menu::ContextMenuopens a menu at the pointer that holds the keyboard until it closes. Text fields and editor text open Cut, Copy, Paste and Select All on a right press, fromui::menu::edit_itemsandEdit; pictures in the editor open their own menu.menu::Item::Headingnames a section over the rows after it.- The editor's block, table, language, link and paste menus are
ui::menumenus walked by the keyboard. The block menu puts quotes and callouts behind one Quote submenu. BlockLayouts::reveal_withtakes aRevealMode:Center, asrevealdoes, orNearest, the least scroll that shows the range.- A selection or a lifted block held past the editor's scroll box scrolls it.
ui::AppExt::set_inactive_caretmakes a block caret in an inactive window outlined (InactiveCaret::Hollow, the default) or hidden (InactiveCaret::Hidden).TerminalElement::with_hollow_inactivedoes the same for a terminal's block cursor.- Focused tabs, live menu rows and selected tree rows paint the glass selection.
Changed
editor::AppExt::set_block_menu_itemstakesVec<SlashItem>andblock_menu_defaultsreturns one;BlockMenuItemis gone.menu::Itemhas aHeadingvariant; exhaustive matches must handle it.- The link menu's
activeis acursor: menu::Cursor, and itschoicetakes the chosen path and returns anOption. path::Endscarriesfrom_endandto_endasEndinstead offrom_arrowandto_arrow.Canvas,NodeandEdgehave new fields andFenceaheightfield; struct literals must include them.markdown::Form::Embedcarries an optional height.- An unfocused terminal draws no cursor, and a beam or underline cursor keeps its shape in an inactive window.
Fixed
- Tab strips no longer draw an overlay scrollbar.
- The markdown source view sets text at the body's size and leading.