<feed xmlns='http://www.w3.org/2005/Atom'>
<title>aerc/lib/ui, branch mbox</title>
<subtitle>Mirror of https://git.sr.ht/~sircmpwn/aerc
</subtitle>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/'/>
<entry>
<title>Add Mouseable</title>
<updated>2019-09-11T15:41:34+00:00</updated>
<author>
<name>Jeffas</name>
<email>dev@jeffas.io</email>
</author>
<published>2019-09-05T22:32:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=f6216bb6213a15cdcdf50089f3c4a8e9a30d9337'/>
<id>f6216bb6213a15cdcdf50089f3c4a8e9a30d9337</id>
<content type='text'>
This adds the Mouseable interface. When this is implemented for a
component that item can accept and process mouseevents.

At the top level when a mouse event is received it is passed to the
grid's handler and then it trickles down until it reaches a component
that can actually handle it, such as the tablist, dirlist or msglist.

A mouse event is passed so that components can handle other things such
as scrolling with the mousewheel. The components themselves then perform
the necessary actions.

Clicking emails in the messagelist opens them in a new tab.

Textinputs can be clicked to position the cursor inside them.

Mouseevents are not forwarded to the terminal at the moment.

Elements which do not handle mouse events are not required to implement
the Mouseable interface.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds the Mouseable interface. When this is implemented for a
component that item can accept and process mouseevents.

At the top level when a mouse event is received it is passed to the
grid's handler and then it trickles down until it reaches a component
that can actually handle it, such as the tablist, dirlist or msglist.

A mouse event is passed so that components can handle other things such
as scrolling with the mousewheel. The components themselves then perform
the necessary actions.

Clicking emails in the messagelist opens them in a new tab.

Textinputs can be clicked to position the cursor inside them.

Mouseevents are not forwarded to the terminal at the moment.

Elements which do not handle mouse events are not required to implement
the Mouseable interface.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add delete forward &lt;C-k&gt; and backward &lt;C-u&gt;</title>
<updated>2019-08-12T00:27:48+00:00</updated>
<author>
<name>Christopher Vittal</name>
<email>christopher.vittal@gmail.com</email>
</author>
<published>2019-08-10T14:26:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=2b6ec504e536885a47db1e472c5f0de6388fb0ce'/>
<id>2b6ec504e536885a47db1e472c5f0de6388fb0ce</id>
<content type='text'>
Choose the readline defaults for the behavior of these two
functions/keybindings. Depending on the program, either of these can
delete the whole line.

Note that by default in [compose], &lt;C-k&gt; is bound to :prev-field&lt;Enter&gt;.
Leave it up to the user whether or not they want to rebind the key in
[compose].
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Choose the readline defaults for the behavior of these two
functions/keybindings. Depending on the program, either of these can
delete the whole line.

Note that by default in [compose], &lt;C-k&gt; is bound to :prev-field&lt;Enter&gt;.
Leave it up to the user whether or not they want to rebind the key in
[compose].
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove aerc specific code from the ui</title>
<updated>2019-08-03T20:50:49+00:00</updated>
<author>
<name>Nicolai Dagestad</name>
<email>nicolai@dagestad.fr</email>
</author>
<published>2019-08-03T15:17:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=0847464da1da5c2df19e107ee3884ab7996c1756'/>
<id>0847464da1da5c2df19e107ee3884ab7996c1756</id>
<content type='text'>
Separatiing the ui code from aerc makes it usable as a library in
other projects.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Separatiing the ui code from aerc makes it usable as a library in
other projects.
</pre>
</div>
</content>
</entry>
<entry>
<title>Ring bell when new messages arrive</title>
<updated>2019-07-29T19:01:49+00:00</updated>
<author>
<name>Ben Burwell</name>
<email>ben@benburwell.com</email>
</author>
<published>2019-07-29T14:50:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=152f8c9519ac1b7b35c3789b03f3d1cc3b1e8881'/>
<id>152f8c9519ac1b7b35c3789b03f3d1cc3b1e8881</id>
<content type='text'>
Add a "new-message-bell" option to the UI section of aerc.conf. A new
hook into the message store allows the msglist widget to detect new
messages being added to the displayed list. When new messages are
delivered, and the new-message-bell option is enabled (as it is by
default), the terminal will beep.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add a "new-message-bell" option to the UI section of aerc.conf. A new
hook into the message store allows the msglist widget to detect new
messages being added to the displayed list. When new messages are
delivered, and the new-message-bell option is enabled (as it is by
default), the terminal will beep.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix tabstrip over-drawing when not enough space</title>
<updated>2019-07-26T19:12:24+00:00</updated>
<author>
<name>Jeffas</name>
<email>dev@jeffas.io</email>
</author>
<published>2019-07-26T08:46:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=7a3765a36bfa1c54f8bc77c761a741d5529addcf'/>
<id>7a3765a36bfa1c54f8bc77c761a741d5529addcf</id>
<content type='text'>
Tabstrip didn't take into account the width of the context. Now, it just
shows as many tabs as can fit and truncates the last one if necessary.

In future it probably would be best to ensure that the selected tab is
rendered on the screen.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Tabstrip didn't take into account the width of the context. Now, it just
shows as many tabs as can fit and truncates the last one if necessary.

In future it probably would be best to ensure that the selected tab is
rendered on the screen.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add tab completion to textinputs</title>
<updated>2019-07-26T18:39:42+00:00</updated>
<author>
<name>Jeffas</name>
<email>dev@jeffas.io</email>
</author>
<published>2019-07-26T13:29:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=cded067bc3919a77b17feedd877e4590e7c95f4a'/>
<id>cded067bc3919a77b17feedd877e4590e7c95f4a</id>
<content type='text'>
This adds tab completion to textinput components. They can be configured
with a completion function. This function is called when the user
presses &lt;tab&gt;. The first completion is initially shown to the user
inserted into the text. Repeated presses of &lt;tab&gt; or &lt;backtab&gt; cycle
through the completions list. The completions list is invalidated when
any other non-tab-like key is pressed.

Also changed is some logic for current completion generation so that
all available commands are returned when &lt;tab&gt; is pressed with no
current text and similarly for arguments of commands.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds tab completion to textinput components. They can be configured
with a completion function. This function is called when the user
presses &lt;tab&gt;. The first completion is initially shown to the user
inserted into the text. Repeated presses of &lt;tab&gt; or &lt;backtab&gt; cycle
through the completions list. The completions list is invalidated when
any other non-tab-like key is pressed.

Also changed is some logic for current completion generation so that
all available commands are returned when &lt;tab&gt; is pressed with no
current text and similarly for arguments of commands.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix invalid tab state when deselecting removed tab</title>
<updated>2019-07-26T18:37:45+00:00</updated>
<author>
<name>Drew DeVault</name>
<email>sir@cmpwn.com</email>
</author>
<published>2019-07-26T18:37:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=aabe3d9b3a58efd9f0ad9b39917b85092d0955a1'/>
<id>aabe3d9b3a58efd9f0ad9b39917b85092d0955a1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix :close on terminal panic</title>
<updated>2019-07-25T22:12:08+00:00</updated>
<author>
<name>Jeffas</name>
<email>dev@jeffas.io</email>
</author>
<published>2019-07-23T18:41:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=ee5b537d538baf38450a2ae655dee53a49aa9824'/>
<id>ee5b537d538baf38450a2ae655dee53a49aa9824</id>
<content type='text'>
Executing :close on a terminal would panic due to it already having been
removed.

This is also related to the fact that removing a tab doesn't check for
whether it actually found a tab to remove or not.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Executing :close on a terminal would panic due to it already having been
removed.

This is also related to the fact that removing a tab doesn't check for
whether it actually found a tab to remove or not.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix grid creating too large subcontexts</title>
<updated>2019-07-25T22:12:00+00:00</updated>
<author>
<name>Jeffas</name>
<email>dev@jeffas.io</email>
</author>
<published>2019-07-23T19:03:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=1cf90897f74f7f727710a9e61e9c835a040918bf'/>
<id>1cf90897f74f7f727710a9e61e9c835a040918bf</id>
<content type='text'>
The grid was not checking there was enough space for the cells so would
just attempt to create subcontexts that don't actually fit.

This attempts to use the remaining space and then if there is no space
then it just skips drawing this cell.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The grid was not checking there was enough space for the cells so would
just attempt to create subcontexts that don't actually fit.

This attempts to use the remaining space and then if there is no space
then it just skips drawing this cell.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix panic when tabs.popHistory is nonexistent</title>
<updated>2019-07-25T12:29:10+00:00</updated>
<author>
<name>Drew DeVault</name>
<email>sir@cmpwn.com</email>
</author>
<published>2019-07-25T12:29:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.benburwell.com/mirrors/aerc/commit/?id=2f626ddd18e8472e0ddc2bb9013b7d01c1b5b9a9'/>
<id>2f626ddd18e8472e0ddc2bb9013b7d01c1b5b9a9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
