Skip to content

Commit eddc014

Browse files
committed
Modify plugin to conform to the refactored library
1 parent ec6b910 commit eddc014

File tree

5 files changed

+115
-78
lines changed

5 files changed

+115
-78
lines changed

dialogs.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@ void otrg_dialog_remove_conv(PurpleConversation *conv)
209209
}
210210

211211
/* DIKOMAS */
212-
void otrg_dialog_chat_gui_refresh(PurpleConversation *conv, OtrlChatInfoPrivacyLevel level)
212+
void otrg_dialog_chat_gui_refresh(PurpleConversation *conv, OtrlChatPrivacyLevel level)
213213
{
214214
ui_ops->chat_gui_refresh(conv, level);
215215
}

dialogs.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ typedef struct {
8383

8484
void (*remove_conv)(PurpleConversation *conv);
8585

86-
void (*chat_gui_refresh)(PurpleConversation *conv, OtrlChatInfoPrivacyLevel level); /* DIKOMAS */
86+
void (*chat_gui_refresh)(PurpleConversation *conv, OtrlChatPrivacyLevel level); /* DIKOMAS */
8787

8888
} OtrgDialogUiOps;
8989

@@ -183,6 +183,6 @@ void otrg_dialog_new_conv(PurpleConversation *conv);
183183
void otrg_dialog_remove_conv(PurpleConversation *conv);
184184

185185
/* DIKOMAS */
186-
void otrg_dialog_chat_gui_refresh(PurpleConversation *conv, OtrlChatInfoPrivacyLevel level);
186+
void otrg_dialog_chat_gui_refresh(PurpleConversation *conv, OtrlChatPrivacyLevel level);
187187

188188
#endif

gtk-dialog.c

+44-26
Original file line numberDiff line numberDiff line change
@@ -1812,28 +1812,43 @@ enum
18121812
N_COLUMNS
18131813
};
18141814

1815-
static void otrg_gtk_dialog_chat_load_fingerprints_list_data(GtkListStore *store)
1815+
static int otrg_gtk_dialog_chat_load_fingerprints_list_data(GtkListStore *store)
18161816
{
1817-
OtrlList *finger_list;
1818-
OtrlListNode *finger_list_node;
1819-
OtrlChatFingerprint *fnprnt;
1817+
OtrlListIterator list_iter;
1818+
OtrlListNode node;
1819+
OtrlChatFingerprint fnprnt;
18201820
GtkTreeIter iter;
1821+
char *accountname = NULL, *username = NULL, *bytes_hex = NULL;
1822+
unsigned char *bytes = NULL;
18211823

1822-
gtk_list_store_clear (store);
1824+
gtk_list_store_clear(store);
18231825

1824-
finger_list = otrg_plugin_userstate->chat_fingerprints;
1826+
list_iter = otrl_list_iterator_new(otrg_plugin_userstate->chat_fingerprints);
1827+
if(!list_iter) { goto error; }
1828+
while(otrl_list_iterator_has_next(list_iter)) {
1829+
node = otrl_list_iterator_next(list_iter);
1830+
fnprnt = otrl_list_node_get_payload(node);
1831+
1832+
accountname = otrl_chat_fingerprint_get_accountname(fnprnt);
1833+
username = otrl_chat_fingerprint_get_username(fnprnt);
1834+
bytes = otrl_chat_fingerprint_get_bytes(fnprnt);
1835+
bytes_hex = otrl_chat_fingerprint_bytes_to_hex(bytes); /* TODO remember to free this */
18251836

1826-
for(finger_list_node = finger_list->head; finger_list_node != NULL; finger_list_node = finger_list_node->next) {
1827-
fnprnt = finger_list_node->payload;
18281837
gtk_list_store_append (store, &iter); /* Acquire an iterator */
18291838
gtk_list_store_set (store, &iter,
1830-
SCREENNAME_COLUMN, fnprnt->accountname,
1831-
VERIFIED_COLUMN, (fnprnt->isTrusted)? TRUE : FALSE,
1832-
ACCOUNT_COLUMN, fnprnt->username,
1833-
FINGERPRINT_COLUMN, otrl_chat_fingerprint_bytes_to_hex(fnprnt->fingerprint), /* TODO remember to free this */
1839+
SCREENNAME_COLUMN, accountname,
1840+
VERIFIED_COLUMN, otrl_chat_fingerprint_is_trusted(fnprnt) ? TRUE : FALSE,
1841+
ACCOUNT_COLUMN, username,
1842+
FINGERPRINT_COLUMN, bytes_hex,
18341843
POINTER_COLUMN, fnprnt,
18351844
-1);
18361845
}
1846+
otrl_list_iterator_free(list_iter);
1847+
1848+
return 0;
1849+
1850+
error:
1851+
return 1;
18371852
}
18381853

18391854
static void otrg_gtk_dialog_chat_fingerprint_verify_clicked(GtkTreeView *tree_view, gpointer user_data)
@@ -1982,7 +1997,7 @@ static GtkWidget * otrg_gtk_dialog_chat_fingerprints_window_open()
19821997
}
19831998

19841999

1985-
static void otrg_gtk_dialog_chat_label_refresh(PurpleConversation *conv, OtrlChatInfoPrivacyLevel level)
2000+
static void otrg_gtk_dialog_chat_label_refresh(PurpleConversation *conv, OtrlChatPrivacyLevel level)
19862001
{
19872002
GtkWidget *label;
19882003
char *markup;
@@ -1991,13 +2006,13 @@ static void otrg_gtk_dialog_chat_label_refresh(PurpleConversation *conv, OtrlCha
19912006
if(!label) { goto error; }
19922007

19932008
markup = g_strdup_printf(" <span color=\"%s\">%s</span>",
1994-
level == LEVEL_FINISHED ? "#000000" :
1995-
level == LEVEL_PRIVATE ? "#00a000" :
1996-
level == LEVEL_UNVERIFIED ? "#a06000" :
2009+
level == OTRL_CHAT_PRIVACY_LEVEL_FINISHED ? "#000000" :
2010+
level == OTRL_CHAT_PRIVACY_LEVEL_PRIVATE ? "#00a000" :
2011+
level == OTRL_CHAT_PRIVACY_LEVEL_UNVERIFIED ? "#a06000" :
19972012
"#ff0000",
1998-
level == LEVEL_FINISHED ? _("Finished") :
1999-
level == LEVEL_PRIVATE ? _("Private") :
2000-
level == LEVEL_UNVERIFIED ? _("Unverified") :
2013+
level == OTRL_CHAT_PRIVACY_LEVEL_FINISHED ? _("Finished") :
2014+
level == OTRL_CHAT_PRIVACY_LEVEL_PRIVATE ? _("Private") :
2015+
level == OTRL_CHAT_PRIVACY_LEVEL_UNVERIFIED ? _("Unverified") :
20012016
_("Not private"));
20022017

20032018
gtk_label_set_markup(GTK_LABEL(label), markup);
@@ -2007,7 +2022,7 @@ static void otrg_gtk_dialog_chat_label_refresh(PurpleConversation *conv, OtrlCha
20072022
return;
20082023
}
20092024

2010-
void otrg_gtk_dialog_chat_menu_refresh(PurpleConversation *conv, OtrlChatInfoPrivacyLevel level)
2025+
void otrg_gtk_dialog_chat_menu_refresh(PurpleConversation *conv, OtrlChatPrivacyLevel level)
20112026
{
20122027
GtkWidget *menustart, *menuend;
20132028

@@ -2018,16 +2033,19 @@ void otrg_gtk_dialog_chat_menu_refresh(PurpleConversation *conv, OtrlChatInfoPri
20182033
if(!menuend) { goto error; }
20192034

20202035
switch(level) {
2021-
case LEVEL_NONE:
2022-
case LEVEL_FINISHED:
2036+
case OTRL_CHAT_PRIVACY_LEVEL_NONE:
2037+
case OTRL_CHAT_PRIVACY_LEVEL_FINISHED:
20232038
gtk_widget_set_sensitive(GTK_WIDGET(menustart), 1);
20242039
gtk_widget_set_sensitive(GTK_WIDGET(menuend), 0);
20252040
break;
2026-
case LEVEL_UNVERIFIED:
2027-
case LEVEL_PRIVATE:
2041+
case OTRL_CHAT_PRIVACY_LEVEL_UNVERIFIED:
2042+
case OTRL_CHAT_PRIVACY_LEVEL_PRIVATE:
20282043
gtk_widget_set_sensitive(GTK_WIDGET(menustart), 0);
20292044
gtk_widget_set_sensitive(GTK_WIDGET(menuend), 1);
20302045
break;
2046+
case OTRL_CHAT_PRIVACY_LEVEL_UNKNOWN:
2047+
default:
2048+
goto error;
20312049
}
20322050

20332051
error:
@@ -2068,7 +2086,7 @@ static gboolean otrg_gtk_dialog_chat_button_pressed(GtkWidget *w, GdkEventButton
20682086
return TRUE;
20692087
}
20702088

2071-
static void otrg_gtk_dialog_chat_gui_refresh(PurpleConversation *conv, OtrlChatInfoPrivacyLevel level)
2089+
static void otrg_gtk_dialog_chat_gui_refresh(PurpleConversation *conv, OtrlChatPrivacyLevel level)
20722090
{
20732091
otrg_gtk_dialog_chat_label_refresh(conv, level);
20742092
otrg_gtk_dialog_chat_menu_refresh(conv, level);
@@ -3218,7 +3236,7 @@ static void gtk_dialog_chat_new_purple_conv(PurpleConversation *conv)
32183236
gtk_widget_show_all(label2);
32193237

32203238
//TODO Dimitris: maybe ask library for the chat info...
3221-
otrg_gtk_dialog_chat_gui_refresh(conv, LEVEL_NONE);
3239+
otrg_gtk_dialog_chat_gui_refresh(conv, OTRL_CHAT_PRIVACY_LEVEL_NONE);
32223240
}
32233241
}
32243242

0 commit comments

Comments
 (0)