Skip to content

Pre-Release Version Release Notes

Preview Features

  • Make the file path of window tags absolute by default. This makes selecting part of a window's path and acquiring it more intuitive
  • Column-relative window paths. This feature is indended to reduce the visual complexity of the interface when there are many windows open with long paths. An absolute directory may be entered in the leftmost section of a column and followed by a space. Then the file paths of windows in that column are considered relative to that column path, allowing the user to use relative paths for them to reduce the length of text in their tag. When tags are dragged between columns the paths are adjusted to be absolute---if the new column has no path---or relative to the new column path otherwise. See this video for a demonstration.
  • When the Alt key is held while executing a command using either middle-click, CTRL-T, or CTRL-Enter then the +Errors window is cleared before the command output is printed to it.
  • Now when a window with unsaved changes is deleted using Del, instead of printing a warning to the +Errors window, the Del in the tag is instead changed to Del!.

Defects Fixed

  • Fixed crash in rune cache
  • Fix event handling when app unfocused then focused

    This commit fixes an issue where if Anvil was unfocused then focused again by left-clicking, it would make a selection from the previous location of the cursor to where the new click occurred.

    The issue is that Windows when Anvil is refocussed, multiple events are delivered at once to Anvil, and one of these is a zero-distance drag event. Zero distance drags are normally ignored, but because all events occur quickly they are all delivered to Anvil as a queue at once, and in the blockeditable code it would loop over each event and process them, but then later perform the draw. However the mouse event processing is actually performed during the draw as a deferred event because we need to have layed out the text to be able to tell what character the mouse click occurs on. By deferring the events only the last was processed, and so

  • When the text in a tag is changed programatically the cursors and selections are preserved. This change fixes the behaviour of the awin command, where when it repeatedly updates the window while the user is typing in the tag the cursor keeps getting moved to the beginning of the tag.

  • Swap middle and right button actions on win layout box. Now right mouse maximizes the window, and middle mouse minimizes other windows, like how Acme behaves.
  • Fix an issue where if the text in a column tag wraps, and you click in the second or later line of the tag, the cursor is moved to a place farther right than where the click occurred
  • Fix a crash in range statements, specifically with the - operation.