Skip to content

Releases: mattpolzin/ncurses-idris

Apple Silicon compatibility

04 Jan 16:21
c3a9a8c
Compare
Choose a tag to compare

Thanks to @dunhamsteve for tracking down and fixing a drawing bug related to this library's NCurses calls on M1 Macs (and presumably other Apple Silicon architectures).

Also a shoutout to @gallais for the Snake and Tetris examples you can now find in this repo's examples directory.

Compatibility with idris-indexed v0.0.9

22 Nov 16:34
1fef8e7
Compare
Choose a tag to compare
Pre-release

Updates this NCurses library to support the breaking changes in v0.0.9 of the Indexed library.

Refactor support Makefile

10 Nov 05:58
f017303
Compare
Choose a tag to compare
Pre-release

Refactor support file build process to be triggered by Idris package build hooks rather than from root Makefile.

0.2.0: Merge pull request #22 from mattpolzin/better-dx

20 Jul 04:58
8c7fc73
Compare
Choose a tag to compare

Improvements

  • drastically improve the usability of the inWindow function by reducing the number of times that proofs of IsActive, InWindow, and HasWindow need to be manually hinted at by the developer.

A lot of code like

inWindow "win" $
  doSomething x y z @{setWindowIsActiveStill} @{setWindowHasWindowStill}

can become

inWindow "win" $
  doSomething x y z

Breaking Changes

N/A

Standard Stuff

20 Jul 03:48
4fde2c6
Compare
Choose a tag to compare
Standard Stuff Pre-release
Pre-release

Improvements

  • improve performance slightly and mostly in edge cases.
  • add a first performance test case.
  • fix a bug where getPos was getting the cursor position but setPos was setting the current window position.
  • fix bug with Control.NCurses.Pretty not tracking push/pop of attributes correctly.

Breaking Changes

Rename Control.NCurses getPos to getWindowPos, setPos to setWindowPos, getSize to getWindowSize, and setSize to setWindowSize.

Add ability to set window background colors

26 Apr 00:26
c8a8759
Compare
Choose a tag to compare

Adds NCurses.Core setBackground and setBackground' functions and adds Control.NCurses setBackground function.

Fix bug where width & height were swapped.

27 Mar 23:35
Compare
Choose a tag to compare

Fixed a bug where Control.NCurses.setSize was setting width to height and vice versa.

Fix bug where some keys were the same value with keypad turned on

25 Mar 05:35
2716425
Compare
Choose a tag to compare
Merge pull request #18 from mattpolzin/fix-char-retrieval

Fix key retrieval via FFI

Window positioning and attribute updating

24 Mar 06:26
9cd2b92
Compare
Choose a tag to compare

Breaking Changes

  • rename nChangeAttr to nChangeAttrAt and same for nChangeAttr' -> nChangeAttrAt'.
  • move Attribute's DefaultColors into the new ColorAttr type along with the NamedColor constructor that used to be Attribute's Color constructor.

Additions

  • deleteWindow and moveWindow in NCurses.Core.
  • nChangeAttr reintroduced in NCurses.Core (see note about renaming above) but as a function that does not move the cursor prior to changing the attribute for some number length of characters.
  • updateAttr and setPos in Control.NCurses.

Add `inWindow` function.

21 Mar 03:32
Compare
Choose a tag to compare
Pre-release

Additions

  • The inWindow function for Control.NCurses allows you to call out to a function that will act within a different window without modifying the NCurses state afterwards (in effect, switch to a window, run some code, switch back).

Breaking Changes

  • Window.defaultWindow has been renamed to DefaultWindow.