aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libempathy-gtk/empathy-contact-list-view.c2
-rw-r--r--libempathy-gtk/empathy-contact-widget.c15
-rw-r--r--libempathy-gtk/empathy-contact-widget.h1
3 files changed, 14 insertions, 4 deletions
diff --git a/libempathy-gtk/empathy-contact-list-view.c b/libempathy-gtk/empathy-contact-list-view.c
index 09544a466..2d6b1703f 100644
--- a/libempathy-gtk/empathy-contact-list-view.c
+++ b/libempathy-gtk/empathy-contact-list-view.c
@@ -151,7 +151,7 @@ contact_list_view_query_tooltip_cb (EmpathyContactListView *view,
if (!priv->tooltip_widget) {
priv->tooltip_widget = empathy_contact_widget_new (contact,
- EMPATHY_CONTACT_WIDGET_EDIT_NONE);
+ EMPATHY_CONTACT_WIDGET_FOR_TOOLTIP);
g_object_add_weak_pointer (G_OBJECT (priv->tooltip_widget),
(gpointer) &priv->tooltip_widget);
} else {
diff --git a/libempathy-gtk/empathy-contact-widget.c b/libempathy-gtk/empathy-contact-widget.c
index 2e591ece3..fb09fa3b6 100644
--- a/libempathy-gtk/empathy-contact-widget.c
+++ b/libempathy-gtk/empathy-contact-widget.c
@@ -530,7 +530,9 @@ contact_widget_contact_setup (EmpathyContactWidget *information)
else
{
information->widget_account = gtk_label_new (NULL);
- gtk_label_set_selectable (GTK_LABEL (information->widget_account), TRUE);
+ if (!information->flags & EMPATHY_CONTACT_WIDGET_FOR_TOOLTIP) {
+ gtk_label_set_selectable (GTK_LABEL (information->widget_account), TRUE);
+ }
gtk_misc_set_alignment (GTK_MISC (information->widget_account), 0, 0.5);
}
gtk_table_attach_defaults (GTK_TABLE (information->table_contact),
@@ -552,7 +554,9 @@ contact_widget_contact_setup (EmpathyContactWidget *information)
else
{
information->widget_id = gtk_label_new (NULL);
- gtk_label_set_selectable (GTK_LABEL (information->widget_id), TRUE);
+ if (!information->flags & EMPATHY_CONTACT_WIDGET_FOR_TOOLTIP) {
+ gtk_label_set_selectable (GTK_LABEL (information->widget_id), TRUE);
+ }
gtk_misc_set_alignment (GTK_MISC (information->widget_id), 0, 0.5);
}
gtk_table_attach_defaults (GTK_TABLE (information->table_contact),
@@ -574,12 +578,17 @@ contact_widget_contact_setup (EmpathyContactWidget *information)
else
{
information->widget_alias = gtk_label_new (NULL);
- gtk_label_set_selectable (GTK_LABEL (information->widget_alias), TRUE);
+ if (!information->flags & EMPATHY_CONTACT_WIDGET_FOR_TOOLTIP) {
+ gtk_label_set_selectable (GTK_LABEL (information->widget_alias), TRUE);
+ }
gtk_misc_set_alignment (GTK_MISC (information->widget_alias), 0, 0.5);
}
gtk_table_attach_defaults (GTK_TABLE (information->table_contact),
information->widget_alias,
1, 2, 2, 3);
+ if (information->flags & EMPATHY_CONTACT_WIDGET_FOR_TOOLTIP) {
+ gtk_label_set_selectable (GTK_LABEL (information->label_status), FALSE);
+ }
gtk_widget_show (information->widget_alias);
}
diff --git a/libempathy-gtk/empathy-contact-widget.h b/libempathy-gtk/empathy-contact-widget.h
index addb049af..4ba75e17f 100644
--- a/libempathy-gtk/empathy-contact-widget.h
+++ b/libempathy-gtk/empathy-contact-widget.h
@@ -37,6 +37,7 @@ typedef enum
EMPATHY_CONTACT_WIDGET_EDIT_ACCOUNT = 1 << 2,
EMPATHY_CONTACT_WIDGET_EDIT_ID = 1 << 3,
EMPATHY_CONTACT_WIDGET_EDIT_GROUPS = 1 << 4,
+ EMPATHY_CONTACT_WIDGET_FOR_TOOLTIP = 1 << 5,
} EmpathyContactWidgetFlags;
GtkWidget * empathy_contact_widget_new (EmpathyContact *contact,