about summary refs log tree commit diff stats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* | Add quote autocompletion for previous messagesMarcoPolo-PasTonMolo2022-03-219-1/+86
|/ | | | | | | | | | Fixes https://github.com/profanity-im/profanity/issues/1649 Type `>` then press tab or shift tab to autocomplete previous messages, then type your reply and send message. Newlines are replaced with newline followed by `> `. A newline is added at the end so that the user can immediately type a message without manually adding a new line.
* Add adhoc cmd autocompletionMichael Vetter2022-03-211-0/+19
| | | | | | | | | | Add tab completion for `/cmd`. Complete the `list` and `exec` subcommands. Didn't complete the `<jid>` part since I think it's usually used for components and etc. Things that might not be in the roster. Fix https://github.com/profanity-im/profanity/issues/1650
* Merge pull request #1644 from profanity-im/ox-polishMichael Vetter2022-03-214-102/+97
|\ | | | | Improve OX user experience
| * Remove strange block from ox autocompleteMichael Vetter2022-02-251-18/+0
| | | | | | | | | | | | Not sure what this should do. Can't see what kind of key we want to complete here. `/ox help` also doesn't list anything that needs a key.
| * Remove useless commentMichael Vetter2022-02-251-5/+0
| |
| * Fix memleak in cmd_exportMichael Vetter2022-02-241-0/+1
| |
| * ox: expand file and check for existance before trying to announceMichael Vetter2022-02-241-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Output before: ``` 11:00:00 - Annonuce OpenPGP Key for OX ~/test/testuser.pub.gpg ... ``` After: ``` 11:00:00 - Annonuce OpenPGP Key for OX /home/user/test/testuser.pub.gpg ... ``` Now we expand the path so that we can check for `~` properly. And test if the file is actually a normal file.
| * ox: remove else caseMichael Vetter2022-02-241-43/+44
| |
| * ox: add autocomplete for /ox announceMichael Vetter2022-02-241-0/+4
| |
| * ox: adjust formattingMichael Vetter2022-02-241-4/+0
| |
| * ox: standardize log outputMichael Vetter2022-02-241-33/+34
| |
* | Merge pull request #1646 from MarcoPolo-PasTonMolo/fix/nick-autocompleteMichael Vetter2022-03-211-12/+19
|\ \ | | | | | | Fix not autocompleting nicks with '/'
| * | Reverse priority for nick vs cmd autocompleteMarcoPolo-PasTonMolo2022-03-211-12/+15
| | |
| * | Fix not autocompleting nicks with '/'MarcoPolo-PasTonMolo2022-03-031-4/+8
| | | | | | | | | | | | | | | | | | | | | Remove check for '/' at the beginning of the line before autocompleting and make it fallback to command autocompletion if no nicks found. Fixes https://github.com/profanity-im/profanity/issues/1474
* | | re-factor `get_message_from_editor()`Steffen Jaeckel2022-03-141-62/+50
| | | | | | | | | | | | | | | | | | | | | * use GLib functions to write&read compose file * trim trailing new-line characters from compose file Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | | replace `GString` usage where a simple `strdup` worksSteffen Jaeckel2022-03-141-20/+6
| | | | | | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | | refactor logfile-name creationSteffen Jaeckel2022-03-141-66/+10
| | | | | | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | | use `g_mkdir_with_parents()` instead of home-baked solutionSteffen Jaeckel2022-03-144-43/+13
| | | | | | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | | add `files_file_in_account_data_path()`Steffen Jaeckel2022-03-136-71/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As all parts of the code invoking the `files_get_account_data_path()` function did the same afterwards, a function has been added with the same behavior. 1. create path 2. `mkdir` of that path 3. return final path Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | | prevent segfaultSteffen Jaeckel2022-03-132-4/+11
| | | | | | | | | | | | | | | | | | | | | In case we're not connected yet and press Alt+c a segfault occurred since `conn.xmpp_conn` is dereferenced while it's still `NULL`. Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | | Alt+e is already bound, use Alt+cSteffen Jaeckel2022-03-131-1/+1
| | | | | | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | | Add stat.h to editorMichael Vetter2022-03-041-0/+1
| | | | | | | | | | | | | | | | | | Fix on openbsd: `src/tools/editor.c:55:36: error: 'S_IRWXU' undeclared (first use in this function)`
* | | Include errno header in editor.cMichael Vetter2022-03-041-1/+2
| | |
* | | Move get_message_from_editor to appropriate file and change its keybindingMarcoPolo-PasTonMolo2022-03-035-88/+181
| | |
* | | Add hotkey for sending readline text to editorMarcoPolo-PasTonMolo2022-03-033-5/+31
|/ /
* / Add `/subject editor` commandMichael Vetter2022-02-263-5/+21
|/ | | | | | | | Allow editing the MUC subject using external editor. Use `/subject editor`. Fix https://github.com/profanity-im/profanity/issues/1638
* Set libstrophe log verbosityMichael Vetter2022-02-211-0/+1
| | | | | | | | | | | | | | | Set this to 0. We might want to have this configurable later. For now we fix the valgrind report: ``` Conditional jump or move depends on uninitialised value xmpp_debug_verbose() ``` Which will be fixed in libstrophe > 0.11.0 by commit https://github.com/strophe/libstrophe/commit/28f3ce19b803b3c2628c37545e3f5b88e7ea1a55
* Fix python executed during configurej.r2022-02-182-5/+5
| | | | | | | | | | | | | | | Previously it relied on AX_PYTHON_DEVEL, which in turn executes python-config to get the build flags. However this does not work while cross compiling because we can't execute the python-config build for the target platform. To circumvent this problem the python build flags are now queried via pkgconfig, which has the drawback of not having some extra build flags, but they do not seem to be needed. I tested this patch with the termux build system and it build without their existing hack of injecting python after the configure step. I also tested non cross compile build on Arch Linux and it also still works. Fixes #851
* Fix typos in commentsMichael Vetter2022-02-182-2/+2
|
* build: remove otr3 supportMichael Vetter2022-02-181-231/+0
| | | | All the distributions I checked have libotr 4.1.1 now.
* build: remove support for old libsignalMichael Vetter2022-02-182-20/+0
| | | | | | | | | Remove support for libsignal-protocol-c < 2.3.2. Debian 10 uses 2.3.2, Debian 11 and 12 use 2.3.3. openSUSE from 15.2 onward uses 2.3.3. Fedora since 28 uses 2.3.2. We should be good.
* fix handling of connection errorsSteffen Jaeckel2022-02-081-3/+2
| | | | | | | | | | | | | When a `see-other-host` stream-error is received we try to re-connect to the other host. Erroneously this also started the `reconnect_timer`. This lead to the behavior that in cases where e.g. the login failed we try to reconnect instead of bailing out with an error. This commit fixes the wrong behavior by not starting the `reconnect_timer`. Fix 0e58509c161ae8409c9accabb9606e0c7006b880 Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* Remove banned muc member from member listMichael Vetter2022-02-021-0/+4
| | | | | | | If I'm understing everything right the member should be removed here. muc_members_update() seems to have been writen for the same purpose. Fix https://github.com/profanity-im/profanity/issues/1594
* Fix off-by-oneSteffen Jaeckel2022-02-011-2/+2
| | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* add missing IPv6 handlingSteffen Jaeckel2022-02-011-5/+22
| | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* add fall-back for older GLib versionsSteffen Jaeckel2022-02-011-18/+54
| | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* handle `see-other-host` XMPP stream errorSteffen Jaeckel2022-02-015-2/+110
| | | | | | Fixes #1628 Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* auto-formatSteffen Jaeckel2022-02-0120-132/+134
| | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* session: combine internal free-functionsSteffen Jaeckel2022-02-011-12/+8
| | | | | | `_session_free_saved_details()` remains as it's still required alone Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* command: change user mood clearing messageMichael Vetter2022-02-011-1/+1
|
* command: rename /mood clean to /mood clearMichael Vetter2022-02-013-5/+5
| | | | As per suggestion of @mdosch.
* command: adapt mood descriptionMichael Vetter2022-01-301-3/+3
|
* XEP-0107: User Mood - Clean moodStefan Kropp2022-01-304-14/+22
| | | | | | | | | | | | | | | | | | * Bugfix in mood_autocomplete (wrong parameter) * Implemented /mood clean ______________________________________ / Profanity! THE XMPP client with mood \ \ support! / -------------------------------------- \ \ .--. |o_o | |:_/ | // \ \ (| | ) /'\_ _/`\ \___)=(___/
* presence: guard against invalid inputMichael Vetter2022-01-271-3/+12
| | | | | | | | | | | | | | | | | | | | | | It shouldn't happen that we get the presence stanza without a resource. https://datatracker.ietf.org/doc/html/rfc6120 ``` Implementation Note: It is the server's responsibility to deliver only stanzas that are addressed to the client's full JID or the user's bare JID; thus, there is no need for the client to check the 'to' address of incoming stanzas. However, if the client does check the 'to' address then it is suggested to check at most the bare JID portion (not the full JID), since the 'to' address might be the user's bare JID, the client's current full JID, or even a full JID with a different resourcepart (e.g., in the case of so- called "offline messages" as described in [XEP-0160]). ``` Let's not segfault though. Close https://github.com/profanity-im/profanity/issues/1630
* database.c: fix inserting messages to chat logs if archive_id is emptyJuraj Mlich2021-12-311-1/+1
| | | | | | | | | | | The original intention of the code was that in case archive_id is not set, NULL should be inserted. What is inserted however is an empty string. This causes the condition to not insert messages with non-unique archive_id insert only one message in total and ignore all further ones (if NULL was there, the condition would work properly). And this in turn causes chat history not work properly. This commit makes the SQL condition work properly and therefore fixes chat history. Fixes #1589.
* omemo: log when no pubsubMichael Vetter2021-12-131-0/+4
| | | | Closes https://github.com/profanity-im/profanity/issues/1621
* Merge branch 'master' into xep/xep0107-user-moodMichael Vetter2021-12-065-9/+23
|\
| * Merge pull request #1610 from nandesu-utils/masterMichael Vetter2021-11-301-4/+10
| |\ | | | | | | Fix message encryption for sender devices
| | * Refined sender device acquirementnandesu-utils2021-10-291-5/+7
| | | | | | | | | | | | | | | Now the sender devices are acknowledged only after omemo is loaded. That is, after key generation has been completed or identity has been loaded.
| | * Acquire sender's device list on connectionnandesu-utils2021-10-281-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | After generation of an identity we observe that `omemo_ctx.device_list` has an entry for sender's jid. But on application restart it is absent thus messages are not encrypted for the rest set of sender devices. This commit fixes this by applying code for acquiring the aforementioned device list after the connection.