1
0
Fork 0
Commit Graph

387 Commits

Author SHA1 Message Date
cage 41b2f7a571 - [GUI] added command to reload a gemini stream from the streams window. 2023-04-02 17:06:06 +02:00
cage d7f36cc33d - [GUI] added stream window (list the streams and delete them). 2023-04-02 17:06:00 +02:00
cage c74f501225 - [GUI] improved certificates window;
- added midding icons file.
2023-03-25 16:16:39 +01:00
cage 902cf57657 - [GUI] added button to delete and import gemini gertificates. 2023-03-24 10:46:54 +01:00
cage 5282e2cf86 - [GUI] added menu command to shows certificates. 2023-03-21 17:49:58 +01:00
cage 2982dfdeeb - [GUI] made the TOC's resize its width to fits the TOC items width.
- [GUI] added configuration directive for TOC width limits;

- [GUI] refactored TOC rendering code;

- [GUI] clear TOC widget from legacy items befor rendering the new TOC.
2023-03-19 13:00:28 +01:00
cage 89969f1f91 - [GUI] started with TOC rendering. 2023-03-18 20:27:24 +01:00
cage 559b5dae84 - [GUI] fixed leaking lines parameter when rendering preformatted text;
- [gemini] added a missing newline character in 'geminize-preformatted';
- [GUI] parsed standard colors for gemini window's text;
- [GUI] rendered the gemini  protocol rerror  responses to  the gemtext
  window instead of poppinu out a dialog window.
2023-03-12 15:36:13 +01:00
cage fa6844a2ab - [GUI] added code to deal with query input (status 10 and 11). 2023-03-12 12:35:01 +01:00
cage c90c7289d9 - [RPC] resignalled TOFU error to client in a structured form to let the user deal with it;
- [GUI] improved protocol error messages.
2023-03-11 13:12:28 +01:00
cage 24b0b07bb3 - [GUI] made link working for local files and gemtext files over gemini protocol. 2023-03-06 18:38:46 +01:00
cage fd19aa8704 - [GUI] allowed expanding of local paths in the address bar;
- refactored callback related to opening address.
2023-03-02 18:17:19 +01:00
cage d2d1745001 - added package URL to the authorized client. 2023-02-26 20:33:29 +01:00
cage cc633fc29c - [GUI] ensured the rendering of the gemtext respects the directives in the configuration file (font, color, justification, etc). 2023-02-26 15:03:03 +01:00
cage c546b47fd4 - [GUI] rendered links;
- [GUI] started with focus on the address text entry.
2023-02-25 18:18:34 +01:00
cage 86adc4638d - added functions to set meesages on the info-bar. 2023-02-22 15:58:30 +01:00
cage 393b4b0d29 - added 'etc/gui.conf' to the file to be distributed;
- [GUI] added gemtext window;
- [GUI] fixed loading of GUI specific configuration file;
- [GUI] completed parsing of configuration values (e.g. color names are converted to corresponding TK color codes).
2023-02-21 20:21:54 +01:00
cage a4f6e87765 - [GUI] removed useless information (for users) when showing errors (RPC errors contained the whole request as sexp).
- [GUI] removed warning about missing variable 'gui-goodies:*gui-server*' in file containing the gui event loop.
2023-02-19 16:15:10 +01:00
cage cefbe59be6 - [GUI] bound the wish interpreter handle to a special variable so that the gui event loop can reference it and call, without errors, nodgui functions. 2023-02-19 15:45:22 +01:00
cage d040aec005 - [gemini] improved format control for protocol error messages;
- [GUI] logged RPC request error instead of opening a dialog message when in debug mode;
- [GUI] added a draft of callback for opening a gemini address.

- [RPC] learnt that (error "string" arg1 arg2 ... argn), is similar to
  (error (format nil  "string" arg1 arg2 ... argn))  so (error (format
  nil "~a" "~c"))  is equal to (error "~c"); =>  format error (missing
  argument for format string)!
2023-02-19 14:52:53 +01:00
cage 377f42fa5c - [RPC] moved request enqueue macros to the GUI loop package;
- [GUI]  ensured  the gui  events  loop  thread is  terminated  before
  quitting the server and the program.
2023-02-19 12:57:10 +01:00
cage 9802b18dc9 - [GUI] added 'up' button. 2023-02-18 13:02:56 +01:00
cage 81868075b4 - made 'about' help window, modal. 2023-02-17 15:05:09 +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 abef1cfe33 - added some functions to build the GUI. 2023-02-08 13:02:26 +01:00
cage 2a96ff70ef - [GUI] added a few icons. 2023-02-05 14:57:40 +01:00
cage c0e2b43d3e - [GUI] added a bit of scaffolding for the interface;
- [GUI/RPC] added  method to start and retrieve a gemini stream's data.
2023-02-05 14:07:13 +01:00
cage ba5ddb6d7a - made the event-queue optionally blocking (block the caller thread if empty).
- added parent window to the dialog.
2023-02-02 16:10:08 +01:00
cage 7420b8fc26 Merge branch 'master' into add-gemini-gui 2023-02-01 15:04:29 +01:00
cage 13286e44e0 - used the brand new dialog window made available from croatoan. 2023-01-30 20:49:57 +01:00
cage 155cdc1117 - [GUI] added client events loop. 2023-01-15 15:56:00 +01:00
cage 045819b4a4 - [RPC] added API for generate the TOC from a gemtext;
- removed duplicated code (used the class 'box:box' instead of struct 'json-rpc-communication:box).
2023-01-15 15:54:49 +01:00
cage cf0376e666 - [RPC] added function to close server;
- [JSON-RPC] allowed API to signal a custom 'jsonrpc-error'.
2023-01-13 15:34:01 +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 746b2e01ac - [RPC] added representation of the main gemini window in the server;
- [RPC] added two IRI's history manipulation functions.
2023-01-06 13:50:33 +01:00
cage 39ad2ffad8 - [RPC] removed parsed lines from object returned by the function 'gemini-stream-info', there are more specialized functions to get those;
- [RPC] added 'gemini-all-stream-info'.
2023-01-06 12:47:20 +01:00
cage cfb05a6ea1 - log gemini and json, debug messages even if *features* does not
contains :debug-mode;
- [RPC] fixed 'gemini-stream-info';
- [RPC] added 'gemini-stream-parsed-line-slice';
- [RPC] added error handling for 'gemini-stream-parsed-line';
- [JSON-RPC] fixed encoding of error responses.
2023-01-06 11:56:21 +01:00
cage 59a9b69605 - added a new command 'delete-notifications';
- retrofitted 'add-metadata-to-parsed-gemini-lines' into the main gemini parser;
- fixed json generation of parsed lines in 'gemini-stream-info'.
2023-01-01 11:11:40 +01:00
cage 3114264505 - added parameter 'initialize-parser' (default to nil), to reset
parser state in 'sexp->text-rows';

- added 'add-metadata-to-parsed-gemini-lines'

  This function  will add attributes (like  ':header-group-id') to the
  sexp   representation   of   a  gemini   stream   (structure:   (tag
  ((attribute-key attribute value)...) text line) )

- [JSON-RPC API] added a couple of public API function.
2022-12-30 11:07:30 +01:00
cage 39878d6475 - wrapped 'babel:string-to-octets' in 'text-utils:string->octets'. 2022-12-25 12:53:07 +01:00
cage a18c63f3db - moved '+octect-type+' to 'constants' package. 2022-12-25 12:04:08 +01:00
cage b2e7f8fd62 - added a minimal client-server interation system (using pipe).
- renamed 'main:init' to 'main-croatoan-init'.
2022-12-24 14:39:53 +01:00
cage db30d2b47d - added some scaffolding for RPC;
- added 'read-delimited-into-array'.
2022-12-23 13:23:08 +01:00
cage d937235d6c - [pleroma] added API for announcements. 2022-12-23 12:03:04 +01:00
cage 53379fdd37 - added a json-rpc2 implementation. 2022-12-23 12:03:04 +01:00
cage 32169beac7 - added a pair of directives to configure montage of gemini images. 2022-12-10 15:06:48 +01:00
cage c8b92f7eba - added command 'gemini-images-montage'. 2022-12-10 14:11:13 +01:00
cage 37d657cff5 - added a configuration directive to filter out unwanted hashtags. 2022-11-29 18:55:03 +01:00
cage 937d2faba5 - added a configuration directive to leave or delete mentions from the server after fetching them. 2022-11-27 13:37:50 +01:00
cage 4f24a67344 - added a configuraction directive to filter boost based on a regular expression matching the username. 2022-11-18 18:01:19 +01:00
cage 8206500f7a - added command 'print-mentions';
- highlight mentions in message window.
2022-11-17 14:03:03 +01:00
cage 6c3874f738 - added a function to extract and display links extracted from the
contents of a message window;
- fixed 'iri:absolute-url-p'.
2022-10-02 14:19:50 +02:00
cage 38d9d80c18 - changed function's name: 'gemini-history-back' -> 'net-address-history-back'. 2022-10-01 18:16:13 +02:00
cage ad14de7e41 - ensured non mention notifications are excluded in 'api-client:mentions'. 2022-10-01 16:57:14 +02:00
cage 76a9a3aaff - added command "status-tree->text". 2022-09-10 13:21:20 +02:00
cage 718690b323 - added command 'print-post-id';
- removed importing of alexandria in modules, used local-nickname, instead.
2022-09-06 18:33:36 +02:00
cage b3f37fb350 - renamed function. 2022-08-31 14:06:36 +02:00
cage 6481a323f7 - added bookmarking of gopher addresses. 2022-08-31 14:03:39 +02:00
cage b55eaccba4 Merge branch 'gopher-support' 2022-08-28 13:22:31 +02:00
cage d3e36f8efd - added a basic gopher implementation. 2022-08-28 13:22:08 +02:00
cage 0617f56885 - added module 'fetch-post-tree.lisp';
- changed the window type from gemini to standard type for printing the output from a module.
2022-08-23 16:36:34 +02:00
cage 6e883ca21b - improved appereance of gemini subscriptions window. 2022-07-21 17:25:37 +02:00
cage de980b44b7 - [modules] added backlink to generated gemlog pages;
- [gemini] fixed rendering of links that starts with an emoji.
2022-07-13 17:08:37 +02:00
cage 07725d85d9 - [gemini] added command 'open-previous-link'. 2022-07-01 16:31:38 +02:00
cage 981cbdcfc7 - [gemini] added a script to generate a gemlog;
- removed *tour-links-window*;
- adding a new command: open-gemini-links-and-ask-tour.
2022-06-15 14:33:56 +02:00
cage 48848ec996 - added 'ui:tui-active-p'. 2022-06-15 12:11:14 +02:00
cage 94e50430a8 - added 'get-resource-dir' and 'get-data-dir'. 2022-06-04 19:11:23 +02:00
cage bf23d728b4 - fixed misc:array-slice;
- changed misc:split-into-sublist to misc:split-into-chunks.
2022-05-27 19:16:29 +02:00
cage cb202b26a7 - added captions for attachments. 2022-05-01 12:22:52 +02:00
cage 0b5dd16f77 - allowed printing about kami ID from the window of the TLS certificates. 2022-04-23 15:19:29 +02:00
cage 0e9c521fc1 - ensured only an instance of gemini TOC, gemini link and chat window could exixts. 2022-04-08 17:07:48 +02:00
cage a1ec070d03 - hooks:*before-composing-message*;
- removed memory leak in ssl-utils:dump-certificate;
- added an hook to remove footnotes added by tinmop in post's reply.
2022-04-06 19:34:49 +02:00
cage d9a8d03472 - used package local nickname instead us :use croatoan's symbols. 2022-03-21 21:42:50 +01:00
cage baffa09093 - [gemini] rendered again the focus mark when a gemini stream has ended. 2022-03-11 20:50:06 +01:00
cage 8c8c17b175 - fixed passing focus between windows. 2022-03-10 17:29:24 +01:00
cage e5a9232752 - added a command to 'jump' between window in a zig-zag way;
- fixed crash when starting program in gemini fullscreen mode.
2022-03-06 12:49:17 +01:00
cage eb53afcbe1 - added slot 'modalp' to class wrapper-window. 2022-03-05 10:32:13 +01:00
cage d1451610dd - allowed to copy to clipboard post's attachments. 2022-03-04 15:55:57 +01:00
cage 1a5366bf45 - made tour links window indipendent from other links window. 2022-03-04 15:35:07 +01:00
cage 45d74863c3 - refactored clipboard utitlity function. 2022-03-04 14:36:11 +01:00
cage 826423c7d7 - added command to copy a link to clipboard. 2022-03-04 14:33:55 +01:00
cage 674ee6b59a - added a command to clear the cache;
- fixed 'cat-parent-dir'.
2022-03-02 20:44:54 +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 8e7a25b19c - [gemini] added two new commands to go back in an URL path. 2022-02-25 13:11:48 +01:00
cage 74f363af3a - asking for confirmation when quitting the program using 'q'. 2022-02-25 11:28:24 +01:00
cage 1acad1fad9 - [gemini] added searching or jumping to first or last item in a TOC window. 2022-02-24 18:42:11 +01:00
cage e8e4711074 - fixed symbol export for 'normalize path' (thanks op!). 2022-02-17 21:35:25 +01:00
cage 75571fc2f5 - exported correct symbols. 2022-02-16 18:00:12 +01:00
cage 982965585f - renamed function: 'download-treenode' -> 'download-path'. 2022-02-16 17:55:32 +01:00
cage 2dce4a6d27 - renamed function: 'filesystem-query-treenode' -> 'filesystem-query-path'. 2022-02-16 17:52:10 +01:00
cage fbd59ea015 - [kami] made an effort to replicate the permissions when downloading a file. 2022-02-13 16:12:16 +01:00
cage 560e01e09e - [kami] made an effort to replicate the permissions when uploading a file. 2022-02-13 14:54:16 +01:00
cage ebbd08d9da - [kami] added 'file-explorer-mark-by-regexp'. 2022-02-06 10:43:57 +01:00
cage fd53894b2e - changed variable names so that is clear that the '-o' switch can open different kind of URI, not only gemini. 2022-02-05 16:28:40 +01:00
cage b6ed1ebeb7 - [kami] added 'file-explorer-download-mirror'. 2022-02-05 15:24:31 +01:00
cage 321eede79c - [kami] optimized deletion of file system trees. 2022-02-05 14:18:24 +01:00
cage 2efaeef4ad - [kami] appended, if needed, '/' at the end of the proposed local directory where the file will be downloaded. 2022-02-04 14:30:39 +01:00
cage f5bef63cc6 - prevented chat window from opening when in gemini exclusive mode;
- fixed positioning of gemlog's subscription when in gemini exclusive mode.
2022-02-04 14:21:42 +01:00