<feed xmlns='http://www.w3.org/2005/Atom'>
<title>tui-lib/ui/form, branch main</title>
<subtitle>Pure Node.js library for making visual command-line programs (ala vim, ncdu)
</subtitle>
<id>https://nebula.ed1.club/git/tui-lib/atom?h=main</id>
<link rel='self' href='https://nebula.ed1.club/git/tui-lib/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/'/>
<updated>2023-05-13T15:48:36+00:00</updated>
<entry>
<title>use ESM module syntax &amp; minor cleanups</title>
<updated>2023-05-13T15:48:36+00:00</updated>
<author>
<name>(quasar) nebula</name>
<email>qznebula@protonmail.com</email>
</author>
<published>2023-05-12T20:42:09+00:00</published>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/commit/?id=6ea74c268a12325296a1d2e7fc31b02030ddb8bc'/>
<id>urn:sha1:6ea74c268a12325296a1d2e7fc31b02030ddb8bc</id>
<content type='text'>
The biggest change here is moving various element classes under
more scope-specific directories, which helps to avoid circular
dependencies and is just cleaner to navigate and expand in the
future.

Otherwise this is a largely uncritical port to ESM module syntax!
There are probably a number of changes and other cleanups that
remain much needed.

Whenever I make changes to tui-lib it's hard to believe it's
already been &lt;INSERT COUNTING NUMBER HERE&gt; years since the
previous time. First commits are from January 2017, and the
code originates a month earlier in KAaRMNoD!
</content>
</entry>
<entry>
<title>Don't crash when getting scrollSize</title>
<updated>2019-10-14T20:14:09+00:00</updated>
<author>
<name>Florrie</name>
<email>towerofnix@gmail.com</email>
</author>
<published>2019-10-14T20:14:09+00:00</published>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/commit/?id=c56242c3266d1fdf83eceed532c054fba8084630'/>
<id>urn:sha1:c56242c3266d1fdf83eceed532c054fba8084630</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add lastInput function to forms</title>
<updated>2019-09-15T21:28:55+00:00</updated>
<author>
<name>Florrie</name>
<email>towerofnix@gmail.com</email>
</author>
<published>2019-09-15T21:28:55+00:00</published>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/commit/?id=f3974627bddb9f62132bf54bde3a66c87dbf7b23'/>
<id>urn:sha1:f3974627bddb9f62132bf54bde3a66c87dbf7b23</id>
<content type='text'>
</content>
</entry>
<entry>
<title>(!!) Only render when draw-dependency props change</title>
<updated>2019-09-15T20:09:31+00:00</updated>
<author>
<name>Florrie</name>
<email>towerofnix@gmail.com</email>
</author>
<published>2019-09-15T19:55:53+00:00</published>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/commit/?id=3f76094c554c23ee3519f41458a04d348f4f75a3'/>
<id>urn:sha1:3f76094c554c23ee3519f41458a04d348f4f75a3</id>
<content type='text'>
This is a very large change and probably breaks most applications not
built to work with it. (Obviously, I'm not really being that responsible
with this sort of thing.) I've tested with mtui and it works fine, but
some elements may need tweaks before being 100% adjusted to the new
scheduled-render system we're using with this commit. Also, any elements
which have custom draw behavior will likely need updating so that they
appropriately schedule renders.
</content>
</entry>
<entry>
<title>Don't explode when no element is selected!</title>
<updated>2019-07-19T02:28:29+00:00</updated>
<author>
<name>Florrie</name>
<email>towerofnix@gmail.com</email>
</author>
<published>2019-07-19T02:28:29+00:00</published>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/commit/?id=27c7e362d1f6719af0d2c47b815b23d648d699a6'/>
<id>urn:sha1:27c7e362d1f6719af0d2c47b815b23d648d699a6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Automatically show/hide ListScrollForm scrollbar</title>
<updated>2019-05-12T20:17:53+00:00</updated>
<author>
<name>Florrie</name>
<email>towerofnix@gmail.com</email>
</author>
<published>2019-05-12T20:17:53+00:00</published>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/commit/?id=d569cc0db9994295860f48d254f630211c1806ad'/>
<id>urn:sha1:d569cc0db9994295860f48d254f630211c1806ad</id>
<content type='text'>
...depending on whether there is enough content that it cannot all be
displayed in the form's space or not.
</content>
</entry>
<entry>
<title>Adjust the way the scrollbar handle is drawn</title>
<updated>2019-05-12T19:51:44+00:00</updated>
<author>
<name>Florrie</name>
<email>towerofnix@gmail.com</email>
</author>
<published>2019-05-12T19:51:44+00:00</published>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/commit/?id=8bc775cfea02e8b1986393918ed7720b5764c5f2'/>
<id>urn:sha1:8bc775cfea02e8b1986393918ed7720b5764c5f2</id>
<content type='text'>
Specifically, it now clearly represents how much of the scrollable form
is visible and not visible at the moment. It also will never touch the
top or bottom if it's possible to scroll further in the correspodning
direction.
</content>
</entry>
<entry>
<title>Avoid crashing when scrolled past end of form</title>
<updated>2019-04-02T11:12:52+00:00</updated>
<author>
<name>Florrie</name>
<email>towerofnix@gmail.com</email>
</author>
<published>2019-04-02T11:12:52+00:00</published>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/commit/?id=df0e9afe7aedd3dc6a1d0db72530a52e135af649'/>
<id>urn:sha1:df0e9afe7aedd3dc6a1d0db72530a52e135af649</id>
<content type='text'>
Usually this doesn't happen, but it may occur if the items of the
ListScrollForm are regenerated (to a lesser length) before updating
scrollItems.
</content>
</entry>
<entry>
<title>Fix mistake in Form.addInput</title>
<updated>2018-12-15T05:31:52+00:00</updated>
<author>
<name>Florrie</name>
<email>towerofnix@gmail.com</email>
</author>
<published>2018-12-15T05:31:52+00:00</published>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/commit/?id=e47a3546f0f9244bb6ee3aa708e7e24226fbdad2'/>
<id>urn:sha1:e47a3546f0f9244bb6ee3aa708e7e24226fbdad2</id>
<content type='text'>
TL;DR afterIndex was not being set correctly.
</content>
</entry>
<entry>
<title>Optimize the h*ck out of ListScrollForm</title>
<updated>2018-12-15T04:55:20+00:00</updated>
<author>
<name>Florrie</name>
<email>towerofnix@gmail.com</email>
</author>
<published>2018-12-15T04:55:20+00:00</published>
<link rel='alternate' type='text/html' href='https://nebula.ed1.club/git/tui-lib/commit/?id=d54498610d53e8c8a437a6adff0ced11b037afe7'/>
<id>urn:sha1:d54498610d53e8c8a437a6adff0ced11b037afe7</id>
<content type='text'>
</content>
</entry>
</feed>
