Add 'save' command to save preferences

Most applications have an 'apply changes' button. This makes testing
easier too.

Implement https://github.com/profanity-im/profanity/issues/1164
This commit is contained in:
Michael Vetter
2019-08-02 10:23:13 +02:00
parent d4150eb7d1
commit 658e36a066
6 changed files with 34 additions and 46 deletions

View File

@@ -2393,6 +2393,19 @@ static struct cmd_t command_defs[] =
"/omemo untrust buddy@buddychat.org c4f9c875-144d7a3b-0c4a05b6-ca3be51a-a037f329-0bd3ae62-07f99719-55559d2a",
"/omemo char *")
},
{ "/save",
parse_args, 0, 0, NULL,
CMD_NOSUBFUNCS
CMD_MAINFUNC(cmd_save)
CMD_NOTAGS
CMD_SYN(
"/save")
CMD_DESC(
"Save preferences to configuration file.")
CMD_NOARGS
CMD_NOEXAMPLES
},
};
static GHashTable *search_index;

View File

@@ -2,6 +2,7 @@
* cmd_defs.h
*
* Copyright (C) 2012 - 2019 James Booth <boothj5@gmail.com>
* Copyright (C) 2019 Michael Vetter <jubalh@iodoru.org>
*
* This file is part of Profanity.
*

View File

@@ -2,6 +2,7 @@
* cmd_funcs.c
*
* Copyright (C) 2012 - 2019 James Booth <boothj5@gmail.com>
* Copyright (C) 2019 Michael Vetter <jubalh@iodoru.org>
*
* This file is part of Profanity.
*
@@ -8535,3 +8536,12 @@ cmd_omemo_policy(ProfWin *window, const char *const command, gchar **args)
return TRUE;
#endif
}
gboolean
cmd_save(ProfWin *window, const char *const command, gchar **args)
{
log_info("Saving preferences to configuration file");
cons_show("Saving preferences.");
prefs_save();
return TRUE;
}

View File

@@ -2,6 +2,7 @@
* cmd_funcs.h
*
* Copyright (C) 2012 - 2019 James Booth <boothj5@gmail.com>
* Copyright (C) 2019 Michael Vetter <jubalh@iodoru.org>
*
* This file is part of Profanity.
*
@@ -225,4 +226,5 @@ gboolean cmd_omemo_untrust(ProfWin *window, const char *const command, gchar **a
gboolean cmd_omemo_policy(ProfWin *window, const char *const command, gchar **args);
gboolean cmd_omemo_clear_device_list(ProfWin *window, const char *const command, gchar **args);
gboolean cmd_save(ProfWin *window, const char *const command, gchar **args);
#endif