mirror of
https://github.com/profanity-im/profanity.git
synced 2024-09-29 19:56:07 -04:00
Tidied title bar draw
This commit is contained in:
parent
e756daf2be
commit
aae88753a3
@ -169,36 +169,33 @@ title_bar_set_typing(gboolean is_typing)
|
|||||||
static void
|
static void
|
||||||
_title_bar_draw(void)
|
_title_bar_draw(void)
|
||||||
{
|
{
|
||||||
werase(win);
|
ProfWin *current = wins_get_current();
|
||||||
|
|
||||||
// show title
|
werase(win);
|
||||||
wmove(win, 0, 0);
|
wmove(win, 0, 0);
|
||||||
int i;
|
int i;
|
||||||
for (i = 0; i < 45; i++)
|
for (i = 0; i < 45; i++) {
|
||||||
waddch(win, ' ');
|
waddch(win, ' ');
|
||||||
|
}
|
||||||
|
|
||||||
mvwprintw(win, 0, 0, " %s", current_title);
|
mvwprintw(win, 0, 0, " %s", current_title);
|
||||||
|
|
||||||
if (prefs_get_boolean(PREF_PRESENCE)) {
|
if (current && current->type == WIN_CHAT) {
|
||||||
_show_contact_presence();
|
if (prefs_get_boolean(PREF_PRESENCE)) {
|
||||||
}
|
_show_contact_presence();
|
||||||
|
}
|
||||||
#ifdef HAVE_LIBOTR
|
#ifdef HAVE_LIBOTR
|
||||||
_show_privacy();
|
_show_privacy();
|
||||||
#endif
|
#endif
|
||||||
|
if (typing) {
|
||||||
// show indicator for unsaved forms
|
wprintw(win, " (typing...)");
|
||||||
ProfWin *current = wins_get_current();
|
}
|
||||||
if ((current != NULL ) && (current->type == WIN_MUC_CONFIG)) {
|
} else if (current && current->type == WIN_MUC_CONFIG) {
|
||||||
if ((current->form != NULL) && (current->form->modified)) {
|
if (current->form && current->form->modified) {
|
||||||
wprintw(win, " *");
|
wprintw(win, " *");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// show contact typing
|
|
||||||
if (typing) {
|
|
||||||
wprintw(win, " (typing...)");
|
|
||||||
}
|
|
||||||
|
|
||||||
_show_self_presence();
|
_show_self_presence();
|
||||||
|
|
||||||
wnoutrefresh(win);
|
wnoutrefresh(win);
|
||||||
@ -268,58 +265,56 @@ _show_privacy(void)
|
|||||||
int bracket_attrs = theme_attrs(THEME_TITLE_BRACKET);
|
int bracket_attrs = theme_attrs(THEME_TITLE_BRACKET);
|
||||||
|
|
||||||
ProfWin *current = wins_get_current();
|
ProfWin *current = wins_get_current();
|
||||||
if (current && current->type == WIN_CHAT) {
|
if (!current->is_otr) {
|
||||||
if (!current->is_otr) {
|
if (prefs_get_boolean(PREF_OTR_WARN)) {
|
||||||
if (prefs_get_boolean(PREF_OTR_WARN)) {
|
int unencrypted_attrs = theme_attrs(THEME_TITLE_UNENCRYPTED);
|
||||||
int unencrypted_attrs = theme_attrs(THEME_TITLE_UNENCRYPTED);
|
|
||||||
wprintw(win, " ");
|
|
||||||
wattron(win, bracket_attrs);
|
|
||||||
wprintw(win, "[");
|
|
||||||
wattroff(win, bracket_attrs);
|
|
||||||
wattron(win, unencrypted_attrs);
|
|
||||||
wprintw(win, "unencrypted");
|
|
||||||
wattroff(win, unencrypted_attrs);
|
|
||||||
wattron(win, bracket_attrs);
|
|
||||||
wprintw(win, "]");
|
|
||||||
wattroff(win, bracket_attrs);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
int encrypted_attrs = theme_attrs(THEME_TITLE_ENCRYPTED);
|
|
||||||
wprintw(win, " ");
|
wprintw(win, " ");
|
||||||
wattron(win, bracket_attrs);
|
wattron(win, bracket_attrs);
|
||||||
wprintw(win, "[");
|
wprintw(win, "[");
|
||||||
wattroff(win, bracket_attrs);
|
wattroff(win, bracket_attrs);
|
||||||
wattron(win, encrypted_attrs);
|
wattron(win, unencrypted_attrs);
|
||||||
wprintw(win, "OTR");
|
wprintw(win, "unencrypted");
|
||||||
wattroff(win, encrypted_attrs);
|
wattroff(win, unencrypted_attrs);
|
||||||
|
wattron(win, bracket_attrs);
|
||||||
|
wprintw(win, "]");
|
||||||
|
wattroff(win, bracket_attrs);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
int encrypted_attrs = theme_attrs(THEME_TITLE_ENCRYPTED);
|
||||||
|
wprintw(win, " ");
|
||||||
|
wattron(win, bracket_attrs);
|
||||||
|
wprintw(win, "[");
|
||||||
|
wattroff(win, bracket_attrs);
|
||||||
|
wattron(win, encrypted_attrs);
|
||||||
|
wprintw(win, "OTR");
|
||||||
|
wattroff(win, encrypted_attrs);
|
||||||
|
wattron(win, bracket_attrs);
|
||||||
|
wprintw(win, "]");
|
||||||
|
wattroff(win, bracket_attrs);
|
||||||
|
if (current->is_trusted) {
|
||||||
|
int trusted_attrs = theme_attrs(THEME_TITLE_TRUSTED);
|
||||||
|
wprintw(win, " ");
|
||||||
|
wattron(win, bracket_attrs);
|
||||||
|
wprintw(win, "[");
|
||||||
|
wattroff(win, bracket_attrs);
|
||||||
|
wattron(win, trusted_attrs);
|
||||||
|
wprintw(win, "trusted");
|
||||||
|
wattroff(win, trusted_attrs);
|
||||||
|
wattron(win, bracket_attrs);
|
||||||
|
wprintw(win, "]");
|
||||||
|
wattroff(win, bracket_attrs);
|
||||||
|
} else {
|
||||||
|
int untrusted_attrs = theme_attrs(THEME_TITLE_UNTRUSTED);
|
||||||
|
wprintw(win, " ");
|
||||||
|
wattron(win, bracket_attrs);
|
||||||
|
wprintw(win, "[");
|
||||||
|
wattroff(win, bracket_attrs);
|
||||||
|
wattron(win, untrusted_attrs);
|
||||||
|
wprintw(win, "untrusted");
|
||||||
|
wattroff(win, untrusted_attrs);
|
||||||
wattron(win, bracket_attrs);
|
wattron(win, bracket_attrs);
|
||||||
wprintw(win, "]");
|
wprintw(win, "]");
|
||||||
wattroff(win, bracket_attrs);
|
wattroff(win, bracket_attrs);
|
||||||
if (current->is_trusted) {
|
|
||||||
int trusted_attrs = theme_attrs(THEME_TITLE_TRUSTED);
|
|
||||||
wprintw(win, " ");
|
|
||||||
wattron(win, bracket_attrs);
|
|
||||||
wprintw(win, "[");
|
|
||||||
wattroff(win, bracket_attrs);
|
|
||||||
wattron(win, trusted_attrs);
|
|
||||||
wprintw(win, "trusted");
|
|
||||||
wattroff(win, trusted_attrs);
|
|
||||||
wattron(win, bracket_attrs);
|
|
||||||
wprintw(win, "]");
|
|
||||||
wattroff(win, bracket_attrs);
|
|
||||||
} else {
|
|
||||||
int untrusted_attrs = theme_attrs(THEME_TITLE_UNTRUSTED);
|
|
||||||
wprintw(win, " ");
|
|
||||||
wattron(win, bracket_attrs);
|
|
||||||
wprintw(win, "[");
|
|
||||||
wattroff(win, bracket_attrs);
|
|
||||||
wattron(win, untrusted_attrs);
|
|
||||||
wprintw(win, "untrusted");
|
|
||||||
wattroff(win, untrusted_attrs);
|
|
||||||
wattron(win, bracket_attrs);
|
|
||||||
wprintw(win, "]");
|
|
||||||
wattroff(win, bracket_attrs);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -330,41 +325,38 @@ _show_contact_presence(void)
|
|||||||
{
|
{
|
||||||
int bracket_attrs = theme_attrs(THEME_TITLE_BRACKET);
|
int bracket_attrs = theme_attrs(THEME_TITLE_BRACKET);
|
||||||
|
|
||||||
ProfWin *current = wins_get_current();
|
theme_item_t presence_colour = THEME_TITLE_OFFLINE;
|
||||||
if (current && current->type == WIN_CHAT) {
|
const char *presence = "offline";
|
||||||
theme_item_t presence_colour = THEME_TITLE_OFFLINE;
|
|
||||||
const char *presence = "offline";
|
|
||||||
|
|
||||||
char *barejid = roster_barejid_from_name(current_recipient);
|
char *barejid = roster_barejid_from_name(current_recipient);
|
||||||
if (barejid) {
|
if (barejid) {
|
||||||
PContact contact = roster_get_contact(barejid);
|
PContact contact = roster_get_contact(barejid);
|
||||||
if (contact) {
|
if (contact) {
|
||||||
presence = p_contact_presence(contact);
|
presence = p_contact_presence(contact);
|
||||||
presence_colour = THEME_TITLE_ONLINE;
|
presence_colour = THEME_TITLE_ONLINE;
|
||||||
if (g_strcmp0(presence, "offline") == 0) {
|
if (g_strcmp0(presence, "offline") == 0) {
|
||||||
presence_colour = THEME_TITLE_OFFLINE;
|
presence_colour = THEME_TITLE_OFFLINE;
|
||||||
} else if (g_strcmp0(presence, "away") == 0) {
|
} else if (g_strcmp0(presence, "away") == 0) {
|
||||||
presence_colour = THEME_TITLE_AWAY;
|
presence_colour = THEME_TITLE_AWAY;
|
||||||
} else if (g_strcmp0(presence, "xa") == 0) {
|
} else if (g_strcmp0(presence, "xa") == 0) {
|
||||||
presence_colour = THEME_TITLE_XA;
|
presence_colour = THEME_TITLE_XA;
|
||||||
} else if (g_strcmp0(presence, "chat") == 0) {
|
} else if (g_strcmp0(presence, "chat") == 0) {
|
||||||
presence_colour = THEME_TITLE_CHAT;
|
presence_colour = THEME_TITLE_CHAT;
|
||||||
} else if (g_strcmp0(presence, "dnd") == 0) {
|
} else if (g_strcmp0(presence, "dnd") == 0) {
|
||||||
presence_colour = THEME_TITLE_DND;
|
presence_colour = THEME_TITLE_DND;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int presence_attrs = theme_attrs(presence_colour);
|
|
||||||
wprintw(win, " ");
|
|
||||||
wattron(win, bracket_attrs);
|
|
||||||
wprintw(win, "[");
|
|
||||||
wattroff(win, bracket_attrs);
|
|
||||||
wattron(win, presence_attrs);
|
|
||||||
wprintw(win, presence);
|
|
||||||
wattroff(win, presence_attrs);
|
|
||||||
wattron(win, bracket_attrs);
|
|
||||||
wprintw(win, "]");
|
|
||||||
wattroff(win, bracket_attrs);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int presence_attrs = theme_attrs(presence_colour);
|
||||||
|
wprintw(win, " ");
|
||||||
|
wattron(win, bracket_attrs);
|
||||||
|
wprintw(win, "[");
|
||||||
|
wattroff(win, bracket_attrs);
|
||||||
|
wattron(win, presence_attrs);
|
||||||
|
wprintw(win, presence);
|
||||||
|
wattroff(win, presence_attrs);
|
||||||
|
wattron(win, bracket_attrs);
|
||||||
|
wprintw(win, "]");
|
||||||
|
wattroff(win, bracket_attrs);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user