By convention the valid values at any time of a cursor_pos in mail
listings is in self.new_cursor_pos, which the listing compares with
self.cursor_pos to detect position changes. Returning
self.cursor_pos values with coordinates() is invalid.
This mail list view shows one entry per thread just like CompactListing,
but the entry is slightly bigger just like in some GUIs, and when the
thread is opened the view becomes 3 columned:
+--+-------+----+
|~~|-------|~~~ |
|~~|-------|~~ |
| |-------| |
| |-------|~~~ |
+--+-------+----+
This is meant to be used with bigger terminal sizes