about summary refs log tree commit diff stats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Add support for offline MUC notificationsStefan Ott2022-04-238-1/+62
|
* Fix typo Annonuce -> AnnounceMichael Vetter2022-04-141-4/+4
|
* Fix typo: paylod -> payloadMichael Vetter2022-04-121-1/+1
|
* Show return symbol for embedded newlinesPaul Fertser2022-04-121-1/+24
| | | | | | | | | When editing multi-line messages or comments everything past the first newline becomes invisible. This patch fixes it by substituting a Unicode symbol for "return" instead of printing the newline as is. On locales where it's not available single backslash is used instead.
* Handle input win redisplay via Readline hookPaul Fertser2022-04-121-3/+10
| | | | | Allow Readline to control when to redisplay the input line. This makes text entered via /editor visible after editor is closed.
* Show Readline prompt in input windowPaul Fertser2022-04-121-0/+7
| | | | | When doing an interactive search the prompt is needed to show the current state of the search to avoid confusion.
* Allow /editor while not connectedPaul Fertser2022-04-121-7/+0
| | | | | Since /editor can be used also for commands it doesn't make sense to restrict it to only connected state.
* Dont show presence status changes by defaultMichael Vetter2022-04-071-2/+2
| | | | | | | | | | | Dont show presence status changes by default in chat and muc windows. Users repeatedly ask how to change this setting in the MUC. We have it in the FAQ since a long time. And most people I know change this setting, including me. So it looks like it's time to change this default.
* Merge pull request #1674 from paulfertser/allow-bold-for-default-coloursMichael Vetter2022-04-041-12/+13
|\ | | | | Allow bold for default colours
| * Allow bold for default coloursPaul Fertser2022-04-011-12/+13
| |
* | Merge pull request #1681 from akaWolf/fix_theme_load_non_existMichael Vetter2022-04-031-0/+3
|\ \ | | | | | | | | | | | | Fix theme load When we execute `/theme load somethingthatdoesntexist` it still loaded some colors wrongly.
| * | disable execution of colors-changing code when call for theme load and it ↵Artjom Vejsel2022-04-021-0/+3
| |/ | | | | | | doesn't exist
* | Merge pull request #1675 from paulfertser/fix-no-me-historyMichael Vetter2022-04-031-0/+1
|\ \ | | | | | | Use correct colour for their nick when showing history
| * | Use correct colour for their nick when showing historyPaul Fertser2022-04-011-0/+1
| |/
* | Include `config.h` in `src/config.cafile.c`Maxi Wuttke2022-04-021-0/+2
| | | | | | | | See <https://github.com/profanity-im/profanity/issues/1512>
* | Fix a segfault when uploading or downloading filesMaxi Wuttke2022-04-022-2/+2
|/ | | | The variable `ccount->tls_policy` was not null-tested before `strcmp`.
* Fix logging (this time for real)Steffen Jaeckel2022-04-011-1/+7
| | | | | | | | | | ... I hope ... We also need to create the path where the logs are stored. Fixup of d82f2f293b056965fc0bed2b24820961885ab90b Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* fix path where logs are storedSteffen Jaeckel2022-04-011-1/+3
| | | | | | | 43e5f15e66b83ac8f3d57d2ffc7babf57873c51c broke the creation of the path where chatlogs are stored. This is fixed now. Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* Merge pull request #1664 from paulfertser/tab-completion-cleanupMichael Vetter2022-04-011-41/+11
|\ | | | | Tab completion code simplification
| * Tab completion code simplificationPaul Fertser2022-03-301-41/+11
| | | | | | | | | | | | Factor out common code for Tab and Shift-Tab in a separate function. No functional change.
* | Merge pull request #1667 from paulfertser/fix-screen-arrows-bindingsMichael Vetter2022-04-011-0/+3
|\ \ | | | | | | Add Alt/Ctrl-arrows combinations for GNU Screen
| * | Add Alt/Ctrl-arrows combinations for GNU ScreenPaul Fertser2022-03-301-0/+3
| | | | | | | | | | | | | | | | | | GNU Screen terminal emulator is modelled after VT100, its key bindings for "application mode" (which profanity enables on startup) can be seen with this: info screen "Input Translation".
* | | Merge pull request #1669 from paulfertser/make-rl-functions-bindableMichael Vetter2022-04-011-0/+5
|\ \ \ | | | | | | | | Make all existing input functions bindable from config
| * | | Make all existing input functions bindable from configPaul Fertser2022-03-301-0/+5
| |/ /
* | | Merge pull request #1670 from profanity-im/moar-cleanupMichael Vetter2022-04-013-47/+59
|\ \ \ | | | | | | | | Even moar cleanup
| * | | fix `account set theme` helpSteffen Jaeckel2022-04-011-1/+1
| | | | | | | | | | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | | fix linter warningsSteffen Jaeckel2022-03-311-1/+2
| | | | | | | | | | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | | less duplicationSteffen Jaeckel2022-03-311-36/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Print error message from `_string_matches_one_of()` instead of forming an error message manually that contains the same entries that were checked in `_string_matches_one_of()`. Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * | | use `_string_matches_one_of()` at more placesSteffen Jaeckel2022-03-311-16/+7
| |/ / | | | | | | | | | | | | | | | I missed them the last time ... Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* / / Fix race condition on resizePaul Fertser2022-04-011-3/+1
|/ / | | | | | | | | | | | | | | | | | | | | The current code is inherently racy: if screen update takes considerable time (e.g. when working over network) and a user performed a series of resizes the final event might get ignored and the display will be left in inconsistent state. Fix the race by unsetting the flag first so if the next WINCH signal is received while display is resizing it'll be processed on the next iteration.
* | run `make format`Steffen Jaeckel2022-03-302-3/+4
| | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | add `_string_matches_one_of()` helper functionSteffen Jaeckel2022-03-301-21/+39
| | | | | | | | | | | | ... instead of copying the same pattern over and over again. Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | clean-up connection (act I)Steffen Jaeckel2022-03-301-152/+63
|/ | | | | | | | | * use custom memory descriptor that `abort()`s on `malloc()` failure * use static log descriptor * don't always re-create all contexts * de-duplicate code of `.._connect()` and `.._register()` Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* Input window: handle invalid multibytePaul Fertser2022-03-291-0/+4
| | | | | | | | | | The current code enters an infinite loop if the input string happens to get an invalid utf-8 sequence somehow. For me it was reproducible by running profanity in a Screen session and pressing Alt-т (cyrillic letter). Fix it the way borrowed from 0501e49623f68aa39508e4e622924c1dd8147588 where mbrlen is used for the same purposes.
* Merge pull request #1656 from MarcoPolo-PasTonMolo/feature/who-noneMichael Vetter2022-03-294-3/+14
|\ | | | | Add none option for /who
| * Add none option for /whoMarcoPolo-PasTonMolo2022-03-274-3/+14
| | | | | | | | | | Fixes https://github.com/profanity-im/profanity/issues/1425 `/who none` now displays all users in an muc without an affiliation
* | Use EDITOR environment variablePaul Fertser2022-03-271-2/+4
|/ | | | | | | When preferences do not specify a program to be used for /editor command, try getting it from EDITOR (which POSIX.1-2017 calls one of "variables that are frequently exported by widely used command interpreters and applications"), fall back to "vim" if not set.
* Merge pull request #1655 from profanity-im/win-autocompleteMichael Vetter2022-03-241-0/+4
|\ | | | | Reset url autocompletion after open/save
| * Reset url autocompletion after open/saveMichael Vetter2022-03-241-0/+4
| | | | | | | | | | | | | | I guess we should reset the position after we ran `/url open|save`. So that next time `/url open <tab>` starts with the latest entry. Fix https://github.com/profanity-im/profanity/issues/1654
* | Fix crash on /editorMarcoPolo-PasTonMolo2022-03-241-1/+5
| |
* | Merge pull request #1652 from profanity-im/fix-1624Michael Vetter2022-03-2313-46/+204
|\ \ | |/ |/| Fix #1624
| * apply `tls.policy` to cURL callsSteffen Jaeckel2022-03-222-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | In case the user decides to ignore the validity-state of certificates we also have to configure libcurl accordingly. `tls.policy` can be set via ``` /account set <account> tls trust ``` Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * add profanity-specific CAfileSteffen Jaeckel2022-03-227-0/+169
| | | | | | | | | | | | | | | | The profanity-internal mechanism to allow connecting to a server isn't easily portable to cURL. Therefor introduce a profanity-specific CAfile which is managed individually and will be configured in libcurl calls. Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * a tad more `const`-correctnessSteffen Jaeckel2022-03-226-8/+8
| | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * also store PEM in `TLSCertificate`Steffen Jaeckel2022-03-223-5/+12
| | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
| * simplify codeSteffen Jaeckel2022-03-211-33/+1
| | | | | | | | Signed-off-by: Steffen Jaeckel <jaeckel-floss@eyet-services.de>
* | Use funcs available in all glib versions to replace \n in quotesMarcoPolo-PasTonMolo2022-03-211-2/+7
| |
* | 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