All Versions
Latest Version
Avg Release Cycle
30 days
Latest Release

Changelog History
Page 2

  • v0.67 Changes

    API changes:

    • Brick.Widgets.FileBrowser now exports getters for all FileBrowser fields. These getters are lens-like accessors with the G suffix.
    • Brick.Widgets.FileBrowser no longer exports the fileBrowserEntryFilterL lens. The lens broke the API because it allowed modification of internal state that could lead to inconsistency in the UI. Users who needed to use fileBrowserEntryFilterL before this change should use setFileBrowserEntryFilter instead.
  • v0.66.1 Changes

    ๐Ÿ› Bug fixes:

    • Brick.Widgets.Core.cached no longer caches the visibility requests generated by the cached image. This fixes a bug where re-use of a cached rendering would cause undesired viewport scrolling of those requested regions into view when the cached renderings got re-used.
  • v0.66 Changes

    ๐Ÿ†• New features:

    • Added Brick.Main.makeVisible, a function to request visible regions from EventM. This, together with Brick.Widgets.Core.reportExtent, can be used to request that a viewport be scrolled to make a specified named region visible on the next redraw. The region must be known to the renderer with reportExtent (or something that calls it, like clickable). Due to the Ord constraint on some of the API calls required to implement this, an Ord constraint on the resource name type (n) got propagated to various places in the API. But that shouldn't present a problem since other fundamental API calls already required that instance.
  • v0.65.1 Changes

    ๐Ÿ› Bug fixes:

    • Brick.Widgets.Core.viewport: fixed non-scroll direction width/height in the presence of scroll bars (see e41ad936ebe8b49e259a72ff7a34765d5a587aaa).
  • v0.65 Changes

    ๐Ÿ†• New features and API changes:

    • Viewports got support for built-in scroll bar rendering. This includes additions of types and functions to manage the feature behavior. These changes enable viewports to automatically get scroll bars drawn next to them (on any side) with customizable attributes and drawings. As part of this change, a new demo program, ViewportScrollbarsDemo.hs, was added to show off these new features. Here are the new types and functions that got added (mostly to Brick.Widgets.Core):
      • withVScrollBars - enable display of vertical scroll bars
      • withHScrollBars - enable display of horizontal scroll bars
      • withClickableVScrollBars - enable mouse click reporting on vertical scroll bar elements
      • withClickableHScrollBars - enable mouse click reporting on horizontal scroll bar elements
      • ClickableScrollbarElement - the type of elements of a scroll bar that can be clicked on and provided to the application
      • withVScrollBarHandles - enable vertical scroll bar handle drawing
      • withHScrollBarHandles - enable horizontal scroll bar handle drawing
      • withVScrollBarRenderer - customize the renderer used for vertical scroll bars
      • withHScrollBarRenderer - customize the renderer used for horizontal scroll bars
      • ScrollbarRenderer(..) - the type of scroll bar renderer implementations
      • verticalScrollbarRenderer - the default renderer for vertical scrollbars, customizable with withVScrollBarRenderer
      • horizontalScrollbarRenderer - the default renderer for horizontal scrollbars, customizable with withHScrollBarRenderer
      • scrollbarAttr - the base attribute of scroll bars
      • scrollbarTroughAttr - the attribute of scroll bar troughs
      • scrollbarHandleAttr - the attribute of scroll bar handles
    • The Context type got the n type argument that is used for Result, EventM, etc.

    ๐Ÿ“ฆ Package changes:

    • Raised base bounds to allow building with GHC 9.2.1 (thanks Mario Lang)
    • Stopped supporting GHC 7.10.
  • v0.64.2 Changes

    ๐Ÿ› Bug fixes:

    • Brick.Themes.saveTheme now correctly saves background colors (#338)
    • Brick.Widgets.List.listMoveToEnd now uses the correct destination index (#337)
  • v0.64.1 Changes

    ๐Ÿ› Bug fixes:

    • Fixed a bug where mouse clicks could fail to be noticed if "continueWithoutRedraw" was called.
  • v0.64 Changes

    API changes:

    • Added Brick.Main.continueWithoutRedraw, an alternative to Brick.Main.continue that does not trigger a screen redraw. See the Haddock and User Guide for details.
    • Added Brick.Widgets.Core.putCursor to support Vty's new (as of 5.33) API for placing cursors without visually representing them. This change also updated Brick.Forms.renderCheckbox and Brick.Forms.renderRadio to use putCursor (thanks to Mario Lang for this work).

    Other improvements:

    • Brick.Widgets.Edit now supports a few more Emacs-style keybindings (thanks Mario Lang):
      • M-b and M-f to navigate by word
      • C-b and C-f for consistency
      • M-d to delete word under cursor
      • C-t to transpose previous character with current character
      • M-< and M-> to goto-beginning-of-file and end of file, respectively
  • v0.63 Changes

    API changes:

    • The Viewport type got a new field, _vpContentSize (and a corresponding lens vpContentSize) to get the size of the viewport's contents.
  • v0.62 Changes

    API changes:

    • Brick.Widgets.Core got new functions crop{Left,Right,Bottom,Top}To. Unlike the crop...By functions, which crop on the specified side by a particular amount, these crop...To functions crop on the specified side and take a desired overall width of the final result and use that to determine how much to crop. A widget x of width w could thus be cropped equivalently with cropLeftBy a x and cropLeftTo (w - a) x.

    Other changes:

    • Added programs/CroppingDemo.hs to demonstrate the new (and preexisting) cropping functions.