[Xfce4-commits] <xfce4-indicator-plugin:master> Check if labels are visible.
Andrzej
noreply at xfce.org
Wed Dec 18 23:40:01 CET 2013
Updating branch refs/heads/master
to 0ee1b170be11c1706e40dd3a4760f8f8eb6c0925 (commit)
from f7ad97a8cb36fadd205a3d78f55d9bdaad9fb43e (commit)
commit 0ee1b170be11c1706e40dd3a4760f8f8eb6c0925
Author: Andrzej <ndrwrdck at gmail.com>
Date: Wed Dec 18 22:39:21 2013 +0000
Check if labels are visible.
panel-plugin/indicator-button-box.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/panel-plugin/indicator-button-box.c b/panel-plugin/indicator-button-box.c
index c3d00fe..f3abb6a 100644
--- a/panel-plugin/indicator-button-box.c
+++ b/panel-plugin/indicator-button-box.c
@@ -222,6 +222,8 @@ indicator_button_box_label_changed (GtkLabel *label,
g_return_if_fail (XFCE_IS_INDICATOR_BUTTON_BOX (box));
g_return_if_fail (GTK_IS_LABEL (label));
+ box->cached = FALSE;
+
gtk_widget_queue_resize (GTK_WIDGET (box));
}
@@ -243,9 +245,13 @@ indicator_button_box_set_label (IndicatorButtonBox *box,
g_object_ref (G_OBJECT (box->label));
g_signal_connect(G_OBJECT(box->label), "notify::label",
G_CALLBACK(indicator_button_box_label_changed), box);
+ g_signal_connect(G_OBJECT(box->label), "notify::visible",
+ G_CALLBACK(indicator_button_box_label_changed), box);
box->is_small = FALSE;
+ box->cached = FALSE;
+
gtk_container_add (GTK_CONTAINER (box), box->label);
gtk_widget_show (box->label);
}
@@ -362,6 +368,7 @@ indicator_button_box_is_small (IndicatorButtonBox *box)
box->orientation = indicator_config_get_panel_orientation (box->config);
if (box->label != NULL &&
+ gtk_widget_get_visible (box->label) &&
g_strcmp0 (gtk_label_get_label (GTK_LABEL (box->label)), "") != 0)
{
box->is_small = FALSE;
@@ -529,7 +536,7 @@ indicator_button_box_size_allocate (GtkWidget *widget,
indicator_button_box_is_small (box); // refresh cache
- if (box->icon != NULL && box->label != NULL)
+ if (box->icon != NULL && box->label != NULL && !box->is_small)
{
if (box->orientation == GTK_ORIENTATION_HORIZONTAL)
{
More information about the Xfce4-commits
mailing list