aboutsummaryrefslogtreecommitdiff
path: root/libdino/src/ui/add_conversation/list_row.vala
diff options
context:
space:
mode:
authorfiaxh <git@mx.ax.lt>2017-03-10 19:53:24 +0100
committerfiaxh <git@mx.ax.lt>2017-03-10 19:53:24 +0100
commit24b55d83a1f9e21b028c8d5ac9778e75565f417d (patch)
tree195b0f332e32d08e1a18fc3d8a5a6725c5ed11d7 /libdino/src/ui/add_conversation/list_row.vala
parent4c48c5c16d5f5b010c2e5dfb1affcb59f937510c (diff)
parent29ca70a6d534e1cd79963718c793ae740318cff1 (diff)
downloaddino-24b55d83a1f9e21b028c8d5ac9778e75565f417d.tar.gz
dino-24b55d83a1f9e21b028c8d5ac9778e75565f417d.zip
Merge branch 'master' of github.com:dino/dino
Diffstat (limited to 'libdino/src/ui/add_conversation/list_row.vala')
-rw-r--r--libdino/src/ui/add_conversation/list_row.vala39
1 files changed, 39 insertions, 0 deletions
diff --git a/libdino/src/ui/add_conversation/list_row.vala b/libdino/src/ui/add_conversation/list_row.vala
new file mode 100644
index 00000000..b53432a6
--- /dev/null
+++ b/libdino/src/ui/add_conversation/list_row.vala
@@ -0,0 +1,39 @@
+using Gee;
+using Gtk;
+
+using Dino.Entities;
+
+namespace Dino.Ui.AddConversation {
+
+[GtkTemplate (ui = "/org/dino-im/add_conversation/list_row.ui")]
+public class ListRow : ListBoxRow {
+
+ [GtkChild] public Image image;
+ [GtkChild] public Label name_label;
+ [GtkChild] public Label via_label;
+
+ public Jid? jid;
+ public Account? account;
+
+ public ListRow() {}
+
+ public ListRow.from_jid(StreamInteractor stream_interactor, Jid jid, Account account) {
+ this.jid = jid;
+ this.account = account;
+
+ string display_name = Util.get_display_name(stream_interactor, jid, account);
+ if (stream_interactor.get_accounts().size > 1) {
+ via_label.label = @"via $(account.bare_jid)";
+ this.has_tooltip = true;
+ set_tooltip_text(jid.to_string());
+ } else if (display_name != jid.bare_jid.to_string()){
+ via_label.label = jid.bare_jid.to_string();
+ } else {
+ via_label.visible = false;
+ }
+ name_label.label = display_name;
+ image.set_from_pixbuf((new AvatarGenerator(35, 35)).draw_jid(stream_interactor, jid, account));
+ }
+}
+
+} \ No newline at end of file