Repository navigation
v0.7.0
Most of this release is device preview work. The frame is drawn at the device's own pixels, there is a button that gets an image out of the panel, the colour cast is adjustable, and holding shift on a stepper moves a knob by a whole unit.
What is new
In the default 1:1 scale, the frame is now drawn at 1:1 as well as the page. Each device ships a second render the size of the panel, so the body lands on whole device pixels at any display scaling instead of being scaled down from a render more than twice its size. That mode also loads less, since the frame it fetches is about a third the size of the one the other scales use.
The button beside the frame toggle copies the preview as a PNG, and downloads it instead if you hold shift. What comes out is a cut-out on a transparent background, the device with its body or the page on its own, composited from the 1:1 render whatever scale is on screen.
The device colour cast is adjustable. Two knobs move it: warm is how far red sits above blue, tint how far green sits above the mean of the two. Both ship at the cast measured off a real device, and most units are alike enough that you will never touch them. They are there for matching the one on your desk exactly.
Every device knob has a reset arrow now, the custom scale included. That control also moved up under the dropdown that turns it on, and its ruler is clipped to the panel.
Hold shift on a stepper and the knob moves by a larger step, in the unit that knob counts in: a whole point for size, a pixel for letter spacing, five pixels for margin. The value lands on a multiple of that step, so from 13.25 the size knob goes to 14, then 15.
In the Export panel, press a size box's title to draw the page at that size. It saves typing each size you are shipping into the size knob one at a time.
crossglyph stop and crossglyph status take --host and --port, naming which preview to act on. They reached only a preview that crossglyph start had left a state file for, so a second instance, or one started in the foreground, could be seen in a browser and by neither command. A port held by something that is not CrossGlyph is named and left alone. Starting a foreground preview on a held address now says what is there and offers a port nothing is listening on.
What is changed
fonts/conf/all.conf is yours. CrossGlyph neither tracks it nor ships it, and fonts/conf/all.conf.example is the template to copy from. A workspace works with no all.conf at all, so you need one only for settings you want shared across families.
An all.conf you already have is left exactly as it is. The release does not contain that file, so an update has nothing to write over it, and the example arrives only where there is no all.conf beside it.
The render core is rebuilt from the firmware's development branch. Its image decoding and ruby text fixes come with it.
What is fixed
The device frames are rendered from the official models. The black X3 frame has its own edge calibration, the white frames have their depth, and the page is tinted the colour the device is.
Opening the page keeps the device you chose. Stored page settings were overwriting it.
A copy that fails says so on screen.
The compare arrow and the Save button agree with each other. Setting a knob back to the value the config holds left Save dark, while switching fonts still warned that there were unsaved changes to lose.
A build report leaves out any count that is zero, so a build that rebuilt every size reports only what it built.