1
0
Fork 0
Commit Graph

113 Commits

Author SHA1 Message Date
cage e1f185c439 - implemented titan protocol;
- [TUI] added titan requests;
- [GUI] fixed crash when opening the gemlog windows after refreshed the gemlogs data.
2023-07-07 14:45:05 +02:00
cage f0e21d6e7b - [GUI] prevented the server to open with an exernal program a file downloaded;
- [RPC] considered non gemini text streams the same as binary stream to prevent an endless loop.
2023-06-17 16:49:34 +02:00
cage 32ea984845 - [gui] used IRI's fragment as regex search. 2023-05-16 19:14:55 +02:00
cage 1d09d25082 - [gemini] added missing arguments when creating an instance of 'gemini-others-data-stream'. 2023-03-16 15:13:44 +01:00
cage ad67612478 - [GUI] fixed discarding rendering of lines coming from a stopped stream;
- [GUI] added downloading and opening of non text data.
2023-03-15 17:18:38 +01:00
cage 7b415e485a - [GUI] added address autocomplete;
- added optional argument to specify pushing function in: 'program-events:push-function-and-wait-results'.
2023-02-09 17:04:29 +01:00
cage 282b36d712 - [GUI] started connecting JSON API with GUI;
- [RPC] reworked 'slurp-gemini-stream' to use events queue;

- [GUI] fixed dispatching of events
2023-02-09 16:28:53 +01:00
cage 3824e29171 - [gemini] used function 'maybe-notify'. 2023-01-13 16:33:22 +01:00
cage 8d60b063c8 Merge branch 'master' into add-gemini-gui 2023-01-12 20:17:53 +01:00
cage 003a7a26ac - made the program respect the `open' configuration directive for when downloading MINE type "text/*"
Before this patch, the software tried to open all the text MIME type
  in the main window regardless  any setting in the configuration file
  that imposed  to use  a program to  open a file  based on  a regular
  expression (e.g. `open  "^((gemini://)|(\\.)|(/)).+txt$" with "vi"',
  did not worked).
2023-01-12 20:09:01 +01:00
cage 51c4a03c2c - removed resetting of gemini parser status when downloading a text
encoded, but non-gemini, file;
- [rpc] added tour links slot for gemni window (server);
- added loading configuration file for GUI (RPC client) at start;
- refactored metadata slot thei is now used by a TUI window and the server side gemini window;
- added optional string bag parameter to 'text-utils:trim-blanks'.
2023-01-11 19:10:51 +01:00
cage 685f4e4db7 - added slot 'parsed-lines' to gemini-viewer:gemini-stream,
moreover used this slots when downloading a gemini stream

  This changes means that the parsing of gemini stream is no more done
  in program events but during the downloading thread.
  See, for example the changes in: 'gemini-viewer:make-gemini-download-event'

- added a parameter to prevent notification when downloading a gemini stream
  see 'gemini-viewer:request-stream-gemini-document-thread';

- added a  more human friendly  constants for each gemini  status code
  (e.g. +success+ for code 20).

- as the gemini parser has status added a parameter ('initialize-parser') to
  'gemini-parser:parse-gemini-file' (default to nil, do not initialize);

- initialize the gemini parser when needed.
2022-12-29 17:24:53 +01:00
cage c83f21a76f - fixed declaration. 2022-11-26 12:34:48 +01:00
cage 66c7adab15 - prevented deletion of mentions when the program is in debug-mode;
- [gemini] prevented crash when and error getting data from TLS socket;
- prevented crash when dumping mentions.
2022-11-25 18:32:13 +01:00
cage 61a216facb - [gemini] pushed link into history of visited URL even if the page hes been gotten from local cache. 2022-10-14 13:01:18 +02:00
cage 72cef9943b - allowed pushing in the address visited queue only gemtext pages and gopher menu. 2022-09-04 16:37:51 +02:00
cage d3e36f8efd - added a basic gopher implementation. 2022-08-28 13:22:08 +02:00
cage 008d5001a7 - taken into account the query of the original URI when combining it with a path. 2022-08-05 11:30:56 +02:00
cage b004fd5f93 - removed direct call to babel:cotets-to-string, using 'to-s' wrapper, instead.
- [gemini] prevented crash when no previous link to open is found before the selected line.
2022-07-02 10:55:11 +02:00
cage b253aea8c0 - [gemini] prevented landing on debugger (or even crash) when DNS lookup fails. 2022-06-29 21:26:29 +02:00
cage baffa09093 - [gemini] rendered again the focus mark when a gemini stream has ended. 2022-03-11 20:50:06 +01:00
cage 8e9e19dd82 - added command 'gemini-jump-to-link';
- fixed layout in gemini full screen mode.
2022-02-25 16:37:43 +01:00
cage 6db658862f - prevented some kind of windows from losing focus (thanks reDFog)! 2022-02-19 13:37:22 +01:00
cage 5e035458fe - skipped redirect if parsing of iri failed. 2021-11-15 18:17:21 +01:00
cage ebddc9e1e6 - changed logic to guess if the window is displaying gemini contents;
- replaced window'stitle with the IRI of the gemini content streaming;

- fixed italian translation.
2021-11-12 19:12:03 +01:00
cage e6f92f3621 - [gemini] ensured opening files with an external program if the size of the file is smaller than the cache size. 2021-11-10 16:21:18 +01:00
cage 2782317bb7 - [gemini] added customizable buffer size when opening partial gemini
content with an external program.

using  "no wait"  directive  can  be followed  by  "buffer NUMBER"  to
customize the cache  (in Mib) to be cached before  opening the partial
downloaded data.
2021-11-10 16:12:08 +01:00
cage c3492c06c1 - [gemini] added 'search-message-gemini-fragment-event'
When  a fragment  is present  in a  uri/iri it  is used  as a  regular
expression to search in the *source* of the text, the window's content
is moved to shows the *rendered* line where matching occurred.
2021-11-06 12:32:03 +01:00
cage 9d0e588b0b - fixed crash when completing an empty command line (pressing tab with
no string typed on the command line);
- fixed chrash when completing bookmark  entry with non word character
  (e.g. '[');
- added macro 'gemini-parser:with-initialized-parser';
- added source  metadata (sourceline and source-line-id  to results of
  gemini parsing to IR (see: sexp->text-rows).
2021-11-05 11:13:05 +01:00
cage bce702465c - [experimental][gemini] used URI's fragment as a search criteria for the gemini page (disabled by default). 2021-10-17 17:40:18 +02:00
cage d622a02098 - [gemini] prevented signalling a condition when quitting the program
and a gemini text is streaming;

  if   there   is   some    gemini   text   streaming   the   function
  'ui:clean-temporary-file' will  remove the  file that  the streaming
  thread is  using for  caching. So when  the gemini  rendering thread
  returns will  try to remove the  already deleted file, leading  to a
  crash.
2021-10-04 20:42:39 +02:00
cage 8376d1b0fd - added toc when a gemini file is loaded from a local file. 2021-08-26 16:23:24 +02:00
cage 8209d5739c - [gemini] added "no wait" directive when downloading non gemini text format from gemini
allow opening file before it is downloaded completely.
2021-07-25 18:36:06 +02:00
cage fa12f56d10 - revert to old completion method for non URI;
- added type declaration to remove optimization note.
2021-07-25 12:44:35 +02:00
cage f0f682d271 - renamed 'starts-with-emoji-p' to 'starting-emoji'. 2021-07-15 20:36:38 +02:00
cage 09f35f4989 - added 'starts-with-emoji-p'. 2021-07-15 18:44:44 +02:00
cage e981c6589e - added 'emojip'. 2021-07-15 12:41:43 +02:00
cage 4407ef3426 - remved the BOM from a gemini text stream. 2021-07-09 13:54:29 +02:00
cage f4b92f92f2 - [gemini] ensured the certificate is sent when performing a request. 2021-06-18 21:17:14 +02:00
cage 70d9fb5c0c - changed macro with a function. 2021-06-18 17:48:56 +02:00
cage f39e396762 - refactoring TOFU error recovery. 2021-06-18 17:10:58 +02:00
cage fa10de925e - [gemini] ensured we have not to wait a stream is completed before opening a new one. 2021-06-17 19:41:03 +02:00
cage b5b1611a7e - fixed spacing. 2021-06-17 15:23:24 +02:00
cage 63f214c8b3 - [gemini] ensured cached text file are opened with tinmop or user defined programs. 2021-05-18 19:50:50 +02:00
cage 3b30cbd091 - [gemini] refresh TOC when rendering a cached gemini file. 2021-05-18 19:38:49 +02:00
cage 76a11da2fc - [gemini] fixed regression opening gemini link is possible again;
- prevented hiding of notifications by the gemini TOC window.
2021-05-16 16:19:14 +02:00
cage 6ecc3fc5a0 - [gemini] ensured TOC is rendered only for rendering stream. 2021-05-16 15:38:26 +02:00
cage 8423ca7d38 - [gemini] fixed parser, made many parser state variables from
function local to thread local;
- fixed 'line-oriented-widget:append-new-rows';  uses slots  instead of
  accessors  as, for  example, message  window skips  invisible lines
  when specialzed (on message-window) method 'rows' is called.
2021-05-16 15:23:55 +02:00
cage 4a6e2fca3d - added a generated TOC for gemini files. 2021-05-16 15:23:55 +02:00
cage 29c09553d1 -[gemini] removed loop when going back in history.
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.
2021-04-28 20:56:37 +02:00