aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
4 daysUse our Assert macro; Added screenshotmainRaymaekers Luca
6 daysFirst pass at preparing for GithubRaymaekers Luca
2025-01-07checkpointRaymaekers Luca
2024-12-03checkpointRaymaekers Luca
2024-12-02checkpointRaymaekers Luca
2024-12-02checkpointRaymaekers Luca
2024-12-02checkpointRaymaekers Luca
2024-11-29checkpointRaymaekers Luca
2024-11-26Merge branch 'main' of db:chattyRaymaekers Luca
2024-11-24Added archived code for referenceRaymaekers Luca
2024-11-24Implement horizontal versus vertical scrolling strategyRaymaekers Luca
2024-11-23checkpointRaymaekers Luca
2024-11-23Created InputBox widgetRaymaekers Luca
2024-11-21Added bug to readmeRaymaekers Luca
2024-11-19Fixed bug FormatIndexes going out of boundsRaymaekers Luca
2024-11-19Add Tab keybindRaymaekers Luca
- Do not let chatty send empty messages - Add option to `markdown_to_raw()` to only get length of raw text
2024-11-19added keyboard.c from termboxRaymaekers Luca
2024-11-18Added pasting clipboard on ctrl-yRaymaekers Luca
2024-11-18Added markdown support for messagesRaymaekers Luca
2024-11-08create archived.md for tasks which are doneRaymaekers Luca
2024-11-04Connect BIFD first to avoid errorsRaymaekers Luca
2024-11-03Fixed not setting unifd and bifdRaymaekers Luca
2024-11-03Add id field to HeaderMessage for simplifyingRaymaekers Luca
- Changed bracket style as well
2024-11-03Added MakefileRaymaekers Luca
2024-11-03Merge branch 'id'Raymaekers Luca
2024-11-03Added ID system with 1 and 2-way communicationRaymaekers Luca
Each client now has an ID that is permanently stored to ID_FILE location. To implement this each client now uses two connections to the server, one for bidirectional communication and one for unidirectional communication. This makes it easier to not receive unexpected message. Also each client and server now has a Client struct that represents a client and a clientsArena associated with it. Minor changes: - Added logging to LOGFILE, that can be turned with LOGGING macro. - Added more error types - Added error handling on server - Added error messages - Added convenience functions - Added disconnectAndNotify() function for convenience - Use recvTextMessageResult as multiple-value-return-type instead of ** - Separated protocol stuff into protocol.h - Added Result types when wanting to return multiple values - Do not allocate arena's with malloc - Added recvAnyMessageType for receiving messages that do not need to be stored - Add UNIFD and BIFD file descriptors for separating requests chatty.c: - Convert ID to string in screen_home() - Removed the fds global variable - Pass fds to threadReconnect - Implement faster sleep with nanosleep(2) - Close file descriptors when failed so we do not have too many file descriptors open server.c: - Send presence messages on disconnect & connect - renamed i to conn
2024-10-30fix not sending PresenceMessageRaymaekers Luca
2024-10-30Add limit_y to tb_printf_wrapRaymaekers Luca
Also skip offset messages.
2024-10-30Refactor server code into functionsRaymaekers Luca
- disconnect(): for disconnecting a client and deinitializing it - sendToOthers(): for sending a message to all other clients - initClient(): for initializing a client
2024-10-30Added SIGSTOP handling for suspending on ctrl-zRaymaekers Luca
2024-10-30Added protocolRaymaekers Luca
Use a protocol defined in `README.md` and `chatty.h` for sending messages. Another big change is the clientsArena which now stores metadata for the connection such as the author's name. Misc: - Merged arena.h and common.h into chatty.h - removed all the unused code from arena.h as it was not very useful and would not win me any time. - Added compile_flag.txt - Changed formatting - Added more log messages - Added more asserts - Added bool type via enum
2024-10-26Use dynamic limits for buffersRaymaekers Luca
Use arenas where possible to have growable buffers - Use of bufArena in server and client for receiving&sending messages - Use of inputArena in client Also organized code
2024-10-26Put v2 code in root folderRaymaekers Luca
2024-10-26Moved main() to topRaymaekers Luca
2024-10-26Redraw screen after reconnectRaymaekers Luca
Includes: - Using u32/u8 instead of int/char - Add function prototypes - Use magenta for other users - remove input_len parameter to screen_home
2024-10-26fixed bug when sending message after disconnectRaymaekers Luca
This is because for sending, receiving & closing serverfd variable was used instead of `fds[FDS_SERVER].fd`.
2024-10-26do not allow sending message to disconnected serverRaymaekers Luca
2024-10-26Slicker UIRaymaekers Luca
- added fg_pfx and bg_pfx for the prefix string in tb_printf_wrap() - removed text_len from tb_printf_wrap() in favor of simple loop - added disconnect popup when the server is not connected
2024-10-26Reconnnect to server with threadRaymaekers Luca
2024-10-25Documentation & choreRaymaekers Luca
Includes: - increase the limit - update with sources - remove arena include in send.c
2024-10-25Let user quit when reconnectingRaymaekers Luca
Includes: - renamed exit to quit - do not use else if for polling - only display the error message once
2024-10-25Wrap messages when exceeding available widthRaymaekers Luca
Includes: - Changed fillstr to use wide characters - made the prompt box opaque - More documentation on the code
2024-10-25fixed bug not allow sending empty messageRaymaekers Luca
2024-10-25Bind Ctrl+W to erase word behind cursorRaymaekers Luca
Added keybinds descriptions in the readme.
2024-10-24Initial draft for v2Raymaekers Luca
This is a rewrite of v1 using arena's as memory allocators. The other great difference is using wide strings by default (wchar_t) because that will be needed in the future to print pretty UIs.
2024-10-24Archive code into v1/ directoryRaymaekers Luca
The code was written too fast and I deemed that it would be better to make a new draft.
2024-10-21removed malloc & reallocRaymaekers Luca
2024-10-21add to readmeRaymaekers Luca
2024-10-21Moved common.c to common.hRaymaekers Luca
- fixed bug(server.c): `on` not being 32 bytes - cleanup
2024-10-21Add compile_flagsRaymaekers Luca