1
0
mirror of https://github.com/Tha14/toxic.git synced 2025-06-19 18:06:37 +02:00
Commit Graph

1303 Commits

Author SHA1 Message Date
9848ca902e Fix bug causing group PM's to increment window notifications by 2 instead of 1 2022-03-06 15:45:38 -05:00
4c903bab64 Port fix for invalid error handling of widechar conversions from master 2022-03-06 15:45:37 -05:00
0a0756ec6a Fix/update group logging implementation 2022-03-06 15:45:37 -05:00
18ef7ff693 Fix merge conflicts with master 2022-03-06 15:45:37 -05:00
e6136d45d2 Implement new groupchats 2022-03-06 15:45:34 -05:00
310cf464d0 Fix bug causing messages containing newline byte to disappear
The wcswidth() function was silently failing when trying to convert
messages containing a newline to a widechar buffer which resulted
in the message showing up as an empty line. we now fall back
to using strlen to get the width of the string, which might still
cause minor display bugs when the message contains unicode, but is
still better than losing messages entirely.
2022-03-02 15:58:21 -05:00
6a203fd7bf Make sure we compare wchars to wchars instead of bytes 2022-02-03 13:01:08 -05:00
e122c5dbca Use widechars to display strings in the UI
This fixes a bug where printing a bunch of UTF8 chars with glyphs
that have a size > 1 would make the entire chat window disappear.
It also fixes an issue where said UTF8 chars would be truncated
and generally not display correctly.
2022-01-27 15:45:56 -05:00
f6f41a510b Add some simple impersonation detection on friend requests
This will alert the user when the first six bytes of a new
contact's public key is the same as any other contact in
their list. These 6 bytes are used elsewhere in toxic for
unique identification.

Also did a small refactor regarding the KEY_IDENT_BYTES
define
2022-01-23 11:32:57 -05:00
05dbc626e2 Make sure we check for duplicate paths in pending file transfers list
This fixes a bug where if you receive multiple file transfer
requests simultaneously and they have the same path the files
will overwrite each other
2022-01-17 10:53:34 -05:00
602d9d97c1 Send file control cancel when we block or delete a friend 2021-12-22 14:53:09 -05:00
6f8f6f0ac5 Implement file transfer queue for offline friends
File transfers initiated for offline friends are now
added to a queue and initiated all at once when the friend
appears online.
2021-12-22 14:27:28 -05:00
b6f892edf5 Remove unnecessary define for keeping track of string array size 2021-12-15 13:39:11 -05:00
f91d10c831 Add missing ifdef 2021-12-13 12:37:51 -05:00
3f18c6f8de cleanup: fix some uninitialized memory warnings and clarify some logic 2021-12-13 12:33:58 -05:00
bf1e1b73fc Do proper error handling for a few malloc calls 2021-12-12 11:30:27 -05:00
701c0e1e94 cleanup: Reduce the amount of "extern" in .c files.
There is no check at all that the types of externs actually match the
type of the definition. This just accidentally was not a problem, but now
the compiler helps a bit in keeping it that way.
2021-12-11 22:35:51 +00:00
71f6a8d4d6 cleanup: Avoid casting away constness from pointers. 2021-12-11 22:22:25 +00:00
1cace1e81d Do exact length check for string passed to tox_pk_string_to_bytes 2021-12-11 17:13:30 -05:00
3030cda47e Fix possible null dereference
game invite info needs to be set after calloc in case it fails
2021-12-10 13:44:33 -05:00
2946e0dc56 Zero-init coordinates
Not strictly necessary, but makes static analysis happy
2021-12-10 13:09:47 -05:00
da90ca8b74 Fix bazel build for games. 2021-12-10 17:52:43 +00:00
d02ac24de8 Fix regression causing typing notifications to break
Also a small refactor so we use less duplicate code and reduce mutex usage
2021-12-07 22:14:32 -05:00
66e4c590dc Fix some lazy/incorrect code in cmd_add()
This fixes a rare but possible scenario where a name@domain lookup that's
longer than a tox id won't work. It also fixes custom messages for domain
lookups
2021-12-07 13:27:38 -05:00
e2c8497da9 Cleanup code around tox ID/pk conversion functions 2021-12-06 10:46:19 -05:00
afbd185222 /add command no longer requires quotes around the message 2021-12-06 10:06:49 -05:00
e9a0a30408 Some documentation improvements 2021-12-05 17:03:42 -05:00
8aa57b0539 Fix issue with audio VAD threshold
The default VAD was always being set to 0. We now use the
value provided by the config file if defined
2021-12-05 16:36:13 -05:00
7b734f3996 Make tab completion case sensitive 2021-12-04 16:34:15 -05:00
27e20d6f44 Fix possible buffer overrun in python API 2021-11-26 18:57:40 -05:00
58d0bd0663 Allow empty notes 2021-11-26 09:03:43 -05:00
090fcfffe3 Fix a couple data races 2021-11-26 08:51:38 -05:00
1cba726bb8 Show self connection type and small UI makeover
Connection type is now separated from status in the top status bar
2021-11-25 23:05:33 -05:00
50a074ed22 Remove some unnecessary calls to flag_interface_refresh() 2021-11-21 20:16:02 -05:00
3fddc410b3 Reduce sound notify polling by factor of 10
Polling 100 times per second is excessive. This should help reduce
Toxic's resource usage without a noticable difference to the user.
2021-11-21 14:52:09 -05:00
0a708e4a2e Make sure conference audio calls are properly flagged
This fixes a bug causing the conference audio noise animations
and indicators from properly displaying
2021-11-20 10:16:47 -05:00
b7002ef3f0 Allow ncurses refresh rate to be set dynamically
This allows us to have a higher refresh rate only when necessary (e.g. games)
2021-11-20 09:49:04 -05:00
1803da85c1 Refactor unread message flagging
This fixes an issue where the interface wasn't able to update
when the unread message flag changed. It also cleans up some
ugly code
2021-11-19 22:54:35 -05:00
f3f81111c8 Greatly reduce redundant window refreshing
This should substantially reduce CPU usage and possibly fix some
issues with interface jittering/flashing
2021-11-19 17:54:35 -05:00
13337041ce Show friend connection type (UDP/TCP) in friend status bar 2021-11-10 13:27:11 -05:00
41e93adbdb game_chess.c: always use "%s"-style format for printf()-style functions
`ncuses-6.3` added printf-style function attributes and now makes
it easier to catch cases when user input is used in palce of format
string when built with CFLAGS=-Werror=format-security:

    toxic/src/game_chess.c:1633:63: error:
      format not a string literal and no format arguments [-Werror=format-security]
     1633 |         mvwprintw(win, board->y_bottom_bound + 2, x_mid, state->status_message);
          |                                                          ~~~~~^~~~~~~~~~~~~~~~

Let's wrap all the missing places with "%s" format.
2021-11-04 09:44:33 +00:00
34b7c0a0d8 Options parsing code cleanup 2021-11-03 16:23:38 -04:00
9e353443c2 Fix outdated help message 2021-08-16 11:14:09 -04:00
d02f3b4acb Fix a graphical bug with the game border on some terminal emulators 2021-07-27 14:15:36 -04:00
768617a129 Fix small build bug and bump to v0.11.1 2021-06-28 16:04:25 -04:00
8dfd009e0e Some minor fixes for game module 2021-06-28 13:54:25 -04:00
321f694bb8 Add ability to toggle colours in game of life 2021-06-03 14:45:03 -04:00
4514ecd839 Refactor game window sizing
- Add large square and rectangle window types
- Remove forced small windows
- Fit game of life to largest possible window type
- Hide cursor in game of life when game is running
2021-06-03 01:19:49 -04:00
5e67571908 Implement Conway's Game of Life 2021-06-01 23:00:00 -04:00
c293fbe0c7 Add support for game window notifications 2021-05-24 14:30:29 -04:00