mirror of
https://github.com/profanity-im/profanity.git
synced 2024-11-03 19:37:16 -05:00
Allow setting occupants indent outside of MUC
And when not connected.
This commit is contained in:
parent
0c248a0b16
commit
62c23233f7
@ -4370,6 +4370,37 @@ cmd_occupants(ProfWin *window, const char *const command, gchar **args)
|
||||
}
|
||||
}
|
||||
|
||||
if (g_strcmp0(args[0], "indent") == 0) {
|
||||
if (!args[1]) {
|
||||
cons_bad_cmd_usage(command);
|
||||
return TRUE;
|
||||
} else {
|
||||
int intval = 0;
|
||||
char *err_msg = NULL;
|
||||
gboolean res = strtoi_range(args[1], &intval, 0, 10, &err_msg);
|
||||
if (res) {
|
||||
prefs_set_occupants_indent(intval);
|
||||
cons_show("Occupants indent set to: %d", intval);
|
||||
|
||||
// get the list of joined rooms
|
||||
GList *rooms = muc_rooms();
|
||||
GList *curr = rooms;
|
||||
while (curr) {
|
||||
char* roomjid = curr->data;
|
||||
ProfMucWin *mw = wins_get_muc(roomjid);
|
||||
if (mw != NULL)
|
||||
mucwin_update_occupants(mw);
|
||||
|
||||
curr = g_list_next(curr);
|
||||
}
|
||||
} else {
|
||||
cons_show(err_msg);
|
||||
free(err_msg);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
if (g_strcmp0(args[0], "default") == 0) {
|
||||
if (g_strcmp0(args[1], "show") == 0) {
|
||||
if (g_strcmp0(args[2], "jid") == 0) {
|
||||
@ -4409,38 +4440,6 @@ cmd_occupants(ProfWin *window, const char *const command, gchar **args)
|
||||
ProfMucWin *mucwin = (ProfMucWin*)window;
|
||||
assert(mucwin->memcheck == PROFMUCWIN_MEMCHECK);
|
||||
|
||||
if (g_strcmp0(args[0], "indent") == 0) {
|
||||
if (!args[1]) {
|
||||
cons_bad_cmd_usage(command);
|
||||
return TRUE;
|
||||
} else {
|
||||
int intval = 0;
|
||||
char *err_msg = NULL;
|
||||
gboolean res = strtoi_range(args[1], &intval, 0, 10, &err_msg);
|
||||
if (res) {
|
||||
prefs_set_occupants_indent(intval);
|
||||
cons_show("Occupants indent set to: %d", intval);
|
||||
|
||||
// get the list of joined rooms
|
||||
GList *rooms = muc_rooms();
|
||||
GList *curr = rooms;
|
||||
while (curr) {
|
||||
char* roomjid = curr->data;
|
||||
ProfMucWin *mw = wins_get_muc(roomjid);
|
||||
if (mw != NULL)
|
||||
mucwin_update_occupants(mw);
|
||||
|
||||
curr = g_list_next(curr);
|
||||
}
|
||||
} else {
|
||||
cons_show(err_msg);
|
||||
free(err_msg);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (g_strcmp0(args[0], "show") == 0) {
|
||||
if (g_strcmp0(args[1], "jid") == 0) {
|
||||
mucwin->showjid = TRUE;
|
||||
|
@ -49,9 +49,7 @@ _occuptantswin_occupant(ProfLayoutSplit *layout, Occupant *occupant, gboolean sh
|
||||
GString *msg = g_string_new(" ");
|
||||
|
||||
int indent = prefs_get_occupants_indent();
|
||||
int current_indent = 0;
|
||||
if (indent > 0) {
|
||||
current_indent += indent;
|
||||
while (indent > 0) {
|
||||
g_string_append(msg, " ");
|
||||
indent--;
|
||||
|
Loading…
Reference in New Issue
Block a user