Skip to content

1.4.0

Latest

Choose a tag to compare

@github-actions github-actions released this 25 Aug 12:56
· 2 commits to main since this release

Added

  • fit: is a key of its own (Embeds). Fitting and zooming answer different questions — fit widens the block to whatever it sits in, zoom draws the content larger inside whichever box it got — but they shared a single field, so choosing either threw the other away. They are separate now and combine freely: fit: yes with zoom: 150% is a full-width block whose page is drawn half again as large and scrolls sideways. The toolbar's fit button no longer resets the zoom, and walking the zoom ladder no longer clears fit. A block written before this says zoom: fit, which still means a fitted box at 100%.
  • The whole look of a link, a mark and a preview (Style Settings). The links this plugin inserts carry a class of their own in both render modes now, so they can take a colour and an underline — both the theme's own until you change them. The stale and broken marks get their two colours, the underline's style and thickness, and an optional symbol beside the link, for themes where a thin underline is hard to see. A hover preview takes a width as well as a height, and a rendered markdown or HTML preview a line height and a heading scale. The section is grouped into Links, Stale and broken links, Previews and embeds and Autocomplete. Every option is a plain CSS variable or a class on body, so a snippet in .obsidian/snippets/ does as well — the readme lists them all.

Changed

  • A colour setting opens on the colour in use (Style Settings). Reading the variable is not enough to show it: Obsidian builds its accent from calc() and a chain of other variables, which a colour picker cannot parse, so the swatch came up empty. Each colour is settled through the browser into a plain rgb() and written again whenever the theme changes — so a picker shows what the theme is really using, and follows it until you choose otherwise.
  • A recording's bar takes its height and its unspent part from the variables Obsidian gives a slider, so a theme that restyles its own sliders restyles this transport with them. It answers a hover by thickening rather than by recolouring.

Fixed

  • A recording's progress was invisible until the pointer was on the bar. A theme's own input[type="range"] rules outranked the plugin's, so at rest the bar was the theme's plain track with nothing in it, and only hovering brought the played part back.
  • Hovering a recording's bar answered in Obsidian's default accent rather than the theme's — a yellow theme turned purple. --interactive-accent-hover is derived from the default accent, and a theme that recolours only --interactive-accent leaves it stale.

Internal

  • The rows every plugin of a kind offers are written once in the shared repository and spliced into each plugin's Style Settings block at build time, so the two sigil linkers cannot drift apart. The suites check both directions: a row nothing reads fails, and a variable no row offers fails.
  • Whether a change needs the embed redrawn is decided in the viewer's state module rather than in the viewer, where nothing tested it. It was asked there as "did the zoom change", which stopped being the right question the moment fitting stopped being a kind of zoom.