when follownig a redirect both the original (the redirect) and the
actual URI was saved in the history. So if an user, after followed a
redirect, tried to go back would reach the same redirect, this generated
a loop.
i got rid of slot support-text in message-window, so that class does
not maintain a state.
- changed behaivour of split-line
(split-line (format nil "~2%")) ; => ("" "")
That is an emtpy line is returned as empty string and not skipped
Thanks to people from IRC and cl-ppcre maintainer for help!
- [breaking changes] changed 'hooks:*before-prepare-for-rendering-message*
with 'hooks:*before-rendering-message-text*.
- there was a lot of problems related to type of an element of
'rows', they must be always a complex string
- moreover there was an incorrect positioning of the matching string
when character with column width >1 was present before the
string compatible with the regex.
- [gemini] allowed opening a file using tinmop itself (example:
opening a gemini text file);
- added a more hi-level function to open a file with an external program.
- this function takes into account the file that should be opened
with tinmop and uses 'xdg-open' as fallback if the user did not
specified an association program file-type.
line-based one.
The old method that packed text got from gemini stream in single event
was ugly and blocked the UI.
This version revert to a line by line rendering but it is optimized
and does not gets slow with the size of the text the window holds.
the implementation more or less follow
gemini://mozz.us/files/rfc_gemini_favicon.gmi but it does render the
first character of the file instead of checking for emoji
characters.
previously only user that had an entry in the program local database
could be followed or unfollowed.
With this changes the software perform a name lookup in the client
and follow the first user found that match searched username.
page's download is completed.
When a page is fully downloaded before the rendering is started an
event is triggered to 'compact' all the rendering events (a
rendering of a single line of the gemini file) in a single event
that renders the rest of the page.
If this 'bulk' rendering was started without a rendering of a single
line occurred the information about clearing the rendering window
(before render the text) was not took into account. This patch adds
the check for this information.