1
0
Fork 0
Commit Graph

1204 Commits

Author SHA1 Message Date
cage 2138021412 - [gemini] switched from URI to IRI;
- fixed wrong slot symbol.
2020-12-14 13:58:28 +01:00
cage c0abc807d1 - specialize 'normalize-path' on iri;
- changed package name: uri-parser -> uri.
2020-12-13 16:27:22 +01:00
cage 62394d319a - removed 'uri-' prefix from 'uri' slots names. 2020-12-13 15:29:04 +01:00
cage 13fdc439a8 - added IRI parser. 2020-12-13 15:27:55 +01:00
cage 5f8c9d422e - added minimal wrapping of libidn2;
- added library checks (libidn2 and libssl) to configure scripts;
- removed commented reference to quri.
2020-12-12 14:49:31 +01:00
cage 4bd55eac50 - fixed segmentation fault whit FFI code (x509 certificate dump). 2020-12-09 10:44:04 +01:00
cage cf90c07c4e - quit the program if user choose to keeps statuses marked for deletion. 2020-12-08 19:05:04 +01:00
cage fe16fc7c1c - exposed to the UI 'refresh-chats';
- fixed type in 'follow-request-window' slot;

- fixed docstring.
2020-12-08 11:31:21 +01:00
cage 51d414d053 - fixed slot types declaration to allow compilation with newer SBCL. 2020-12-07 15:17:18 +01:00
cage e412b5905a - fixed reply
when replying to a boosted message use the original author as sender, not the person that made the boost.
2020-11-07 15:57:45 +01:00
cage 1c1c94a56a - [gemini] prevent overwriting of TOFU warning by other messages. 2020-11-01 18:01:32 +01:00
cage 664e8212ce - replaced quri with an internal parser;
- [gemini] the client passes the torture test again;

- fixed event test.
2020-10-25 19:58:05 +01:00
cage 1ef820062a - removed debug code. 2020-10-24 14:23:13 +02:00
cage 9adf79a65b - [gemini] fixed a regression, display again source of a gemini file. 2020-10-24 14:22:09 +02:00
cage a8b5524fcb - [gemini] use named parameter in recursive requests. 2020-10-24 14:05:27 +02:00
cage 269a08718c - [gemini] implemented a draft of a client authentication (via TLS certificates). 2020-10-23 20:57:17 +02:00
cage 0fd83f7745 Merge branch 'master' into gemini-client-cert 2020-10-11 18:58:52 +02:00
cage 979fb9a068 - [gemini] [bugfix] clear page when rendering starts after a gemini
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.
2020-10-11 18:51:55 +02:00
cage 497efa6a92 - [gemini] starting using certificates;
- removed hardcoded 'xdg-open' binary name.
2020-10-11 18:22:07 +02:00
cage a1be604bc4 - removed debug code. 2020-10-06 20:17:30 +02:00
cage 911c80dc25 - [gemini] remove a bottleneck when download of a gemini page is completed;
Instead  of process  multiple event  with  a single  line to  render
  compact all the lines in a single event and, then, process it.
2020-10-06 19:15:23 +02:00
cage 0274841672 - added searching in command's help. 2020-10-03 21:08:55 +02:00
cage a54e05a05f - added the possibility to search inside a widows that contains a collection of links. 2020-10-03 16:58:02 +02:00
cage d5f0121923 - fixed keymap of messages window when switching focus or opening a toot. 2020-10-02 18:26:59 +02:00
cage 5feb137128 - actually use the compiled regex-scanner when seraching text in the
message window;
- increased refresh frequency;
- removed author name from NEWS.org.
2020-10-02 15:54:54 +02:00
cage 0f1587bf14 - [gemini] removed waiting for rendering of a page before going back in browsing history. 2020-10-01 16:48:59 +02:00
cage ce61ab6537 - [gemini] fixed the stopping of rendering the old page when a new
link is opened;
- [gemini] added 'gemini-abort-all-downloading-event', used when quitting.
2020-10-01 16:41:24 +02:00
cage 02ce8fd187 - [gemini] remove all pending rendering events when quitting. 2020-09-30 18:24:58 +02:00
cage f1a0715c2b - [gemini] remove from the event queue all the lines got from a gemtext download
when aborting a download.
2020-09-30 16:36:34 +02:00
cage 4bbb0184e1 - removed nethod to delete notifications using old API
new version of pleroma implements the same API as mastodon 3.x
- fixed command line switch to get notification for mentions.
2020-09-27 18:19:26 +02:00
cage 1bf02d1fda - prevented crash when updating mentions
The 'status'  slot in a  'mention' object can  be nil, in  this case
  expand the tree does not makes sense and should be avoided.
2020-09-26 20:39:04 +02:00
cage 2f13acdc7f - add mentions only is not empty or nil, previous check just tested for null. 2020-09-26 12:50:02 +02:00
cage dee8b18b9c - added mention only if non-nil (when sending a status). 2020-09-24 20:49:18 +02:00
cage 9895f2ef98 - fixed 'stack-raise-to-top'
Swapping the  position of the window  to be raised with  the head of
  the  was a  bad  idea.   Sometimes a  windows  could  go behind  the
  omnipresent  windows (messages,  thread  etc.) and  never shown  (as
  covered by the others).
2020-09-19 19:13:45 +02:00
cage b10ba55932 - fixed indentation. 2020-09-18 22:27:11 +02:00
cage 13cb2e810e - lowered permancence of notification when updating timelines;
- fixed managing of editor arguments.
2020-09-18 21:43:13 +02:00
cage fd53ec036d - Added optional mentions before sending a message. 2020-09-18 16:32:04 +02:00
cage c0c0134972 - fixed indentation. 2020-09-18 15:55:22 +02:00
cage d6bc8da305 - fixed repeating of an already repeated message. 2020-09-14 20:52:19 +02:00
cage d08f4a67d1 - [gemini] fixed command: back in history. 2020-09-12 14:35:54 +02:00
cage 99977af671 - added exit handler to clean temporary files. 2020-09-12 11:16:15 +02:00
cage 0cfdb8844e - [gemini] ensure just a single gemini file is in rendering state at
the same time;
- [gemini] add  a newline to  data before  parsing a gemini  file only
  when needed (thre is no one at the end);
- commented and improved some regular expressions for coloring.
2020-09-12 10:23:26 +02:00
cage f6744dad4a - [gemini] clear the streams window before redrawing when refreshing the window's contents. 2020-09-11 15:40:25 +02:00
cage 5ad0a67195 - [gemini] feature added: start downloading a gemini file in background
(i.e. without rendering on the window);
- removed explicit package name 'specials' in ui-goodies.lisp.
2020-09-11 15:18:59 +02:00
cage 0e09efca2c - fixed chat list windows items. 2020-09-10 20:21:07 +02:00
cage 52f550df5e - added feature create new chat;
- fixed crash when selecting a chat with no messages.
2020-09-10 17:50:22 +02:00
cage c26ca88e60 - changed position and (configurable) colors for chat window;
- added feature: change chat labels.
2020-09-09 21:13:57 +02:00
cage 6b0e7c1f73 - prevent printing of chat messages from ignored users. 2020-09-07 20:28:06 +02:00
cage 2d66bdd63d - added chat attachments browsing window. 2020-09-06 20:17:34 +02:00
cage f135292e53 - basics chats works. 2020-09-06 17:28:16 +02:00
cage 49880b986d - given focus to message window when a chat is opened;
- scroll to end of chat when new message arrived.
2020-09-06 16:37:57 +02:00
cage b2b3e65431 - posting on chats works;
- fixed ordering  in db:all-chat-messages (message-id was  not a valid
  column name);
- added scheduled events;
- minor changes in labels.
2020-09-06 14:42:16 +02:00
cage c5118d46a6 - changed GPL comment headers. 2020-09-06 11:32:08 +02:00
cage a129f14834 - fixed vertical position of line mark in message window. 2020-09-06 11:25:23 +02:00
cage 6135cc5c02 - fixed 'line-oriented-window:row-move' must return always a number
(0), not nil, when no movement occurs;

- fixed vertical scrolling boundaries of messages window.
2020-09-06 11:18:49 +02:00
cage 5721bb411c - minor cleaning. 2020-09-05 17:10:55 +02:00
cage 75d81ec708 - chats can be fetched, via UI, and printed on window. 2020-09-05 17:02:00 +02:00
cage 4046f516f8 - [pleroma-API] added 'fetch-chat-message. 2020-09-02 17:17:16 +02:00
cage 9902d3d430 - added tables for chats;
- fixed some slot names for chat entities.
2020-09-02 17:02:52 +02:00
cage 91145e7f37 - [pleroma-API] added a few function to use chats. 2020-09-02 16:30:13 +02:00
cage f7d025ea2a - [gemini] added a window to manage all the gemini streams opened. 2020-08-30 15:38:05 +02:00
cage 1c3a3d9bff - [gemini] starting download thread in ':rendering' status. 2020-08-29 11:13:29 +02:00
cage 4941c21d94 - [gemini] added slot 'status-stream'.
This will allow to enqueue multiple documents download.
2020-08-29 10:53:52 +02:00
cage 940525a6fe - added vertical top padding for 'line-oriented-window'.
This means  also that the gemini  links window will render  the link
  name on top of the link uri.
2020-08-28 17:52:00 +02:00
cage 0bb4406be7 - [gemini] wrapped non gemini files download's thread.
Also added a few of useful slotslike temporary file path and number of
  bytes downloaded so far.
2020-08-28 17:20:44 +02:00
cage 8ae83a2323 - added 'gemini-stream' class.
Starting  wrapping  streaming  of   gemini's  data  using  hi  level
  structures  (this way  we can  associate a  for aecha  stream), this
  could be useful to let the user start or stop the stream or open the
  data downloaded so far.
2020-08-27 17:51:40 +02:00
cage 7c7d02498a - [gemini] allowed secret input. 2020-08-18 19:14:33 +02:00
cage f4ef9ff9e8 - readded some functions (synctatic sugar to manipulate croatoan's 'complex-*' object). 2020-08-16 11:28:14 +02:00
cage dd1e4f6066 - added a slot in 'command-window' to allow the user to insert secret
input.

 the same character is echoed instead of the actual input.
2020-08-16 11:27:38 +02:00
cage 5169deaedd - tracking changes in croatoan.
- some function in 'tui-utils' are just wrappers for the equivalents in the library.
2020-08-14 20:15:30 +02:00
cage 4c98fd675a - added more docstrings. 2020-08-14 18:23:20 +02:00
cage 38585b27ac - changed 'cat-' function names with 'concat-'. 2020-08-14 17:49:37 +02:00
cage e2ad37a520 - use new i18n feature form unix-opt to localize program's usage messages. 2020-07-28 15:58:35 +02:00
cage bc171fb14a - [gemini] added the possibility to abort current page download. 2020-07-26 16:34:05 +02:00
cage 1eeed9538e - [gemini] download of non gemini documents happens in a concurrent
way (in a different thread)
- [gemini] prevent links to be appended even when user is opening a new document;
- [gemini] added a notification when download of a gemini document has terminated.
2020-07-26 13:29:24 +02:00
cage 254cd94720 - [gemini] the parser has been modified to renders (in a separate
thread) the contents of a gemini  file parsed so far without waiting
  for the whole document to be read from the socket.

  This  feature should  prevent blocking  the client  when the  server
  never close the socket (i.e. for streamed contents).
2020-07-26 12:07:26 +02:00
cage f5d4d878ec - do not mentions people that do not appears in the current thread. 2020-07-19 13:27:40 +02:00
cage 7b48939deb - tried to fix mentioning of non local user in reply. 2020-07-18 13:03:58 +02:00
cage 133ac1a48d - prevented a crash if an invalid regular expression is used
when searching in a message window.
2020-07-17 20:24:25 +02:00
cage 6b0fab863d - [gemini] parse link even if link name is empty
sometimes you can met a link like:

=>URI<space><linebreak>

even if this  is, in my opinion,  a malformed link (there  should be a
text -the link name- after the space) parse anyway as if the link name
exists and is empty.
2020-07-15 15:49:49 +02:00
cage f8230fbb89 - fixed bug that prevented rendering of levels 3 headers. 2020-07-15 13:08:58 +02:00
cage 98d6021f7a - fixed information string. 2020-07-15 12:41:27 +02:00
cage fb0fd48865 - [gemini] added the option to view gemini page's source. 2020-07-15 12:40:30 +02:00
cage 562d023b55 - fixed regex for percent numbering;
- formatted as floating points votes percentage in polls.
2020-07-13 17:27:46 +02:00
cage c84de306c8 - [gemini] made some elements of page rendering customizable
using 'gemini-page-theme'  class some elements of  the rendered page
  (header prefix, bullet and so on) can be customized.

  users can use configuration files directive to change the appearance of said elements
  (both character and color or font variants);

- removed unused argument from command line switch: '-m'.
2020-07-08 18:38:17 +02:00
cage 9e4f3cc180 - correctly enqueued multiple "update timeline" commands. 2020-07-06 16:11:34 +02:00
cage 49214475ab - [gemini]
- using quri instead of puri library because the first has a better handling
    of UTF-8;
  - using binary stream instead of ASCII.
2020-07-04 11:15:55 +02:00
cage 9788bf12fb - prevented crash when 'original-path' is nil. 2020-07-02 20:26:40 +02:00
cage 64ffd305bd - fix expanding of message threads: expands reblogged toots if exists;
- added some vertical space before rendering poll.
2020-07-02 20:20:23 +02:00
cage 1f3ed228a3 - [gemini viewer] fixed history navigation. 2020-06-29 12:29:11 +02:00
cage ab4b871ef5 - [gemini browser] added a 'go-back' command. 2020-06-28 17:39:21 +02:00
cage d1266fa422 - fixed bug that prevented to properly reset links list when in gemini mode. 2020-06-28 12:59:23 +02:00
cage ee862ac62b - added command 'open-gemini-address'. 2020-06-28 12:36:59 +02:00
cage 4aae454fb1 - gave focus back to message window when closing link window in gemini mode. 2020-06-28 11:46:24 +02:00
cage 62d3356e78 - made the program asks for redirects following only when the event
queue is empty;
- added 'gemini-request-event';
- minor refactoring.
2020-06-27 22:50:46 +02:00
cage 492eaf6f76 - added more parameters for each function that could be added to
`*skip-message-hook*';
  - changed unique constrains for TOFU table.
2020-06-27 10:50:40 +02:00
cage 15987cc5b2 - added '*skip-message-hook*' (with example). 2020-06-25 14:38:14 +02:00
cage b4f78df9b4 - added signature in the correct position when replying. 2020-06-25 12:29:35 +02:00
cage 9229d4dd08 - added support for signature. 2020-06-24 19:42:05 +02:00
cage fc43ffb423 - collected gemini links too. 2020-06-23 16:50:15 +02:00
cage 8959776ae4 - added opening links command when focus is on the gemini window;
- removed spaces from beginning of "about" message.
2020-06-23 16:27:43 +02:00
cage d8ea5093f7 - removed trim in preformatted text. 2020-06-23 16:21:26 +02:00
cage 28917208d6 - added a command line option to retrieve a gemini URL. 2020-06-23 15:51:43 +02:00
cage f861d80b8c - [gemini] percent encoded query. 2020-06-23 15:22:28 +02:00
cage a69bc4f6cb - used 'notify' instead of error message. 2020-06-23 13:13:59 +02:00
cage a683c2aecd - changed function name: 'temporary-filename' to 'temporary-file'. 2020-06-23 13:12:35 +02:00
cage cf7a19dd04 - allowed the user to bypas TOFU exception;
- fixed TOFU check.
2020-06-23 11:47:21 +02:00
cage 9461c0ea70 - gemini client works (but missing client authorization using certificates). 2020-06-22 14:03:06 +02:00
cage ffdd960673 - added a draft for gemini client. 2020-06-19 11:40:20 +02:00
cage b38b7eac25 Merge branch 'master' into gemini-client 2020-06-14 17:10:50 +02:00
cage ae60831b42 - prevented crash that happened when using an invalid regular
expression to complete  input. There was no reason  to use regular
   expression there but valid reasons to not use them. ;)
2020-06-14 17:09:43 +02:00
cage 24379a7420 - added a draft of a parser for gemini files. 2020-06-14 16:46:28 +02:00
cage 45a56fcf11 - prevent adding duplicate entries in +table-pagination-status+
This could  happened when concurrent fetching  messages command was
  launched from the user.
2020-06-13 13:02:23 +02:00
cage 4dc58c1a3c - preventing writing a notification window that completerd his life cycle. 2020-06-13 12:44:52 +02:00
cage a192595439 - made expanding thread command non blocking. 2020-06-12 18:44:22 +02:00
cage 387cd85c0a - do not climb the thread (probably colud be changed by a command line switch in the future)
when fetching messages.
- configurable color for root of rendered trees.
2020-06-12 18:10:01 +02:00
cage 93950ca530 - fixed skipping of ignored users
When a set  of downloaded statuses contains one or  more status from
  an ignored user restarts the download process again starting from the
  last (or first, if going backward) downloaded status (ordered by ID).

  This way we could skip over a bunch of ignored status.

  The number of download restarting iteration is limited to 3

- added a  configuration directive  to ignore  usernames that  match a
  regular exception.
2020-06-11 17:28:39 +02:00
cage 5f7c6a1f45 - remove duplicated urls in messages that are a reblog;
- fixed swapped docstrings;
- updated configure.
2020-06-07 13:00:19 +02:00
cage f20376adbf - printed an error to the user when trying to vote for a message that
does not contains a poll.
2020-06-07 12:13:02 +02:00
cage 70b9918704 - moved pleroma specific API to i package :api-pleroma;
- renamed function: 'text-utils:left-padding-suffix' to 'text-utils:left-padding-prefix';
- rendered the choice index for poll's choicehs;
- shown if a poll allows multiple choiches.
2020-06-07 11:50:36 +02:00
cage 4f522225a4 - added voting to polls;
- fixed poll's rendering.
2020-05-31 16:49:26 +02:00
cage cc6bbd691b - prevented skipping code when a poll has not expired. 2020-05-31 14:18:44 +02:00
cage ab50276605 - added rendering of polls. 2020-05-31 12:47:48 +02:00
cage d33af4ecbe - updated italian translation. 2020-05-30 12:05:08 +02:00
cage 32727cf0ae - [breaking changes] changed table for attachments;
- fixed  bug  that prevented  statuses  missing  attachments when  the
  status was reblogged.
2020-05-30 11:53:17 +02:00
cage fd3f1b617b - rearranged compilation order to prevent warning about command line
switch;
- rearranged order of packages.
2020-05-30 10:11:10 +02:00
cage 9895843b21 - added optional notification of statuses mentioning the user;
- protected reblogged timeline from accidental deletiion;
- added the posiibility to force expanding of a message tree.
2020-05-30 09:53:12 +02:00
cage 5df777a804 - fixed renumbering of 'message-index' of status.
The  old  procedure did  not  took  into  account the  'folder'  and
  'timeline' columns making  possible to overwrite index of  a copy of
  the  same message  placed in  different folder.  This bug  made the
  program crash.
2020-05-19 20:27:04 +02:00
cage c39fe07a34 - fixed command line long option. 2020-05-19 18:37:54 +02:00
cage 1548229b28 - added the reset of timeline pagination from command line. 2020-05-18 19:16:52 +02:00
cage 38411e1a19 - prevented disappearing of text in a reblogged toot when the parent
status has empty 'content' field or has no attachments.
2020-05-17 22:29:43 +02:00
cage a0daf6f01a - added missing file. 2020-05-17 17:49:43 +02:00
cage 07b13b40d2 - added a window to browse the links that a message contains. 2020-05-17 17:47:33 +02:00
cage 9f6adf02c4 - used correct function when ignoring an account;
- changed button label when asking for opening authorization url: from
  'OK' to 'Cancel'.
2020-05-16 20:01:41 +02:00
cage 149b39e93b - always load a shared configuration file;
- updated documentation.
2020-05-16 13:45:07 +02:00
cage 2faf32800b - made the program exits without invoke the debugger if the main
configuration file is not found;
- update documentation.
2020-05-16 11:24:11 +02:00
cage f4c4afb476 - added a command to download the latest toots from a server. 2020-05-15 19:03:51 +02:00
cage 11bdf47b6c - added user mention on top of a reply message. 2020-05-15 17:39:23 +02:00
cage 7640da7d60 - added 'about' help window. 2020-05-15 16:44:06 +02:00
cage 7f9b2c6d88 - fixed MAKEFILE.am;
- changed sxl-composer package name.
2020-05-15 16:12:40 +02:00
cage 37e8e49abf - prevent skipping of messages for subscribed tags;
- changed keys for tags window.
2020-05-14 20:23:40 +02:00
cage bc4d42d847 - added notify error when updating timelines fails. 2020-05-14 18:14:36 +02:00
cage dbdc2d9590 - changed class name from 'update-timeline-event' to
'save-timeline-in-db-event'.
2020-05-14 16:49:05 +02:00
cage c975074667 - changed function name 'id->user' to 'user-id->user'. 2020-05-14 16:36:55 +02:00
cage 5f00107808 - prevented skipping of statuses when updatig timeline (so i hope);
- added the possibility to update a timeline going backward;
- added two new  key to delete a  status and move to  next or previous
  one.
2020-05-14 16:32:01 +02:00
cage 907bcc1cf1 - prevented crash when the same message was deleted in two differents
folder or  timeline (the unique key  for table of ignored  status is
  (:status-id :folder :timeline)).
2020-05-12 19:23:48 +02:00
cage 0ee9393478 - forsed refresh of conversation window when change conversation's name;
- fixed sn italian translation sentence;
- fixed typo.
2020-05-10 19:19:35 +02:00
cage 0cae9364c3 - checked for windows visibility before drawing. 2020-05-10 16:56:15 +02:00
cage f64f45c5d1 - shown an error dialog window when the credential to log on the
instance are no more valids;
- close a menu dialog window after an entry was choosen.
2020-05-10 11:21:19 +02:00
cage b229787044 - changed function name 'draw-keybinding-mode' to 'draw-string-mode';
- prevented an  info or error message  on the command line  to overlap
  with  prompt when  asking for  user input  and, in  particular, when
  asking for message attachment.
- prevented crash when trying to expand a null string;
- clear send-message-window before deleteing an attach from the list;
- added an info when a status is ready to be sent;
- using a stack to sort drawing order of windows.
2020-05-09 21:58:12 +02:00
cage e40cfc8c2d - updated manpage;
- updated italian translation;
- added a couple of resources reltaed functions.
2020-05-09 13:53:09 +02:00
cage a1970cab39 - shown the reblogged data when does make sense. 2020-05-08 18:14:06 +02:00
cage 4d38af3ad7 - process in the correct order the command line switches;
- added 'config.status' to '.gitignore'.
2020-05-08 16:22:33 +02:00
cage c56a5b86ca - initial commit. 2020-05-08 15:45:43 +02:00