diff options
author | Lars Uebernickel <lars.uebernickel@canonical.com> | 2013-10-17 14:57:08 -0400 |
---|---|---|
committer | Lars Uebernickel <lars.uebernickel@canonical.com> | 2013-10-17 14:57:08 -0400 |
commit | 244d6180f63e12a4b1726fc223d3c00ab6bbb316 (patch) | |
tree | 64888747e8345308959192d1f8738b981790fb60 | |
parent | ccf83adc58fc38a5b7134f07cbd0bca1545b1f32 (diff) | |
download | libayatana-indicator-244d6180f63e12a4b1726fc223d3c00ab6bbb316.tar.gz libayatana-indicator-244d6180f63e12a4b1726fc223d3c00ab6bbb316.tar.bz2 libayatana-indicator-244d6180f63e12a4b1726fc223d3c00ab6bbb316.zip |
indicator-ng: always create entry.label and entry.image
They used to be created lazily when the root menu item changed to include and
image or a label. However, there is no way to notify a panel that this
happened.
Panels connect to notify signals on these widgets when an entry gets added. If
the widgets don't exist from the very beginning, the panel won't update when
they change.
-rw-r--r-- | libindicator/indicator-ng.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/libindicator/indicator-ng.c b/libindicator/indicator-ng.c index f2ffa6d..87deb14 100644 --- a/libindicator/indicator-ng.c +++ b/libindicator/indicator-ng.c @@ -240,9 +240,6 @@ indicator_ng_set_icon_from_variant (IndicatorNg *self, return; } - if (!self->entry.image) - self->entry.image = g_object_ref_sink (gtk_image_new ()); - gtk_widget_show (GTK_WIDGET (self->entry.image)); icon = g_icon_deserialize (variant); @@ -271,9 +268,6 @@ indicator_ng_set_label (IndicatorNg *self, return; } - if (!self->entry.label) - self->entry.label = g_object_ref_sink (gtk_label_new (NULL)); - gtk_label_set_label (GTK_LABEL (self->entry.label), label); gtk_widget_show (GTK_WIDGET (self->entry.label)); } @@ -655,6 +649,9 @@ indicator_ng_initable_iface_init (GInitableIface *initable) static void indicator_ng_init (IndicatorNg *self) { + self->entry.label = g_object_ref_sink (gtk_label_new (NULL)); + self->entry.image = g_object_ref_sink (gtk_image_new ()); + self->entry.menu = g_object_ref_sink (gtk_menu_new ()); /* work around IndicatorObject's warning that the accessible |