Merge branch 'master' into add_stamp_settings

This commit is contained in:
Michael Vetter
2022-04-28 19:33:23 +02:00
committed by GitHub
30 changed files with 636 additions and 325 deletions

View File

@@ -33,6 +33,8 @@
*
*/
#include "config.h"
#include <fcntl.h>
#include <glib.h>
#include <errno.h>

View File

@@ -1830,6 +1830,7 @@ _get_group(preference_t pref)
case PREF_NOTIFY_CHAT_TEXT:
case PREF_NOTIFY_ROOM:
case PREF_NOTIFY_ROOM_MENTION:
case PREF_NOTIFY_ROOM_OFFLINE:
case PREF_NOTIFY_ROOM_TRIGGER:
case PREF_NOTIFY_ROOM_CURRENT:
case PREF_NOTIFY_ROOM_TEXT:
@@ -1966,6 +1967,8 @@ _get_key(preference_t pref)
return "room.trigger";
case PREF_NOTIFY_ROOM_MENTION:
return "room.mention";
case PREF_NOTIFY_ROOM_OFFLINE:
return "room.offline";
case PREF_NOTIFY_ROOM_CURRENT:
return "room.current";
case PREF_NOTIFY_ROOM_TEXT:
@@ -2220,8 +2223,6 @@ _get_default_string(preference_t pref)
case PREF_OTR_POLICY:
return "manual";
case PREF_STATUSES_CONSOLE:
case PREF_STATUSES_CHAT:
case PREF_STATUSES_MUC:
return "all";
case PREF_ROSTER_BY:
return "presence";
@@ -2234,6 +2235,8 @@ _get_default_string(preference_t pref)
case PREF_ROSTER_ROOMS_POS:
return "last";
case PREF_ROSTER_ROOMS_BY:
case PREF_STATUSES_CHAT:
case PREF_STATUSES_MUC:
return "none";
case PREF_ROSTER_ROOMS_USE_AS_NAME:
return "name";
@@ -2283,7 +2286,8 @@ _get_default_string(preference_t pref)
return "xdg-open";
case PREF_URL_OPEN_CMD:
return "xdg-open %u";
case PREF_COMPOSE_EDITOR: {
case PREF_COMPOSE_EDITOR:
{
gchar* editor = getenv("EDITOR");
return editor ? editor : "vim";
}

View File

@@ -178,6 +178,7 @@ typedef enum {
PREF_SILENCE_NON_ROSTER,
PREF_OUTGOING_STAMP,
PREF_INCOMING_STAMP,
PREF_NOTIFY_ROOM_OFFLINE,
} preference_t;
typedef struct prof_alias_t

View File

@@ -184,6 +184,9 @@ theme_exists(const char* const theme_name)
gboolean
theme_load(const char* const theme_name, gboolean load_theme_prefs)
{
if (!theme_exists(theme_name))
return FALSE;
color_pair_cache_reset();
if (_theme_load_file(theme_name)) {
@@ -663,20 +666,21 @@ theme_get_bkgnd(void)
static void
_theme_prep_fgnd(char* setting, GString* lookup_str, gboolean* bold)
{
gchar* val = g_key_file_get_string(theme, "colours", setting, NULL);
if (!val) {
char* def = g_hash_table_lookup(defaults, setting);
g_string_append(lookup_str, def);
gchar* conf_str = g_key_file_get_string(theme, "colours", setting, NULL);
gchar* val = conf_str;
if (!val)
val = g_hash_table_lookup(defaults, setting);
if (g_str_has_prefix(val, "bold_")) {
g_string_append(lookup_str, &val[5]);
*bold = TRUE;
} else {
if (g_str_has_prefix(val, "bold_")) {
g_string_append(lookup_str, &val[5]);
*bold = TRUE;
} else {
g_string_append(lookup_str, val);
*bold = FALSE;
}
g_string_append(lookup_str, val);
*bold = FALSE;
}
g_free(val);
g_free(conf_str);
}
char*