[Xfce4-commits] r25856 - in xfce4-panel/branches/xfce_4_4: . libxfce4panel panel
Jasper Huijsmans
jasper at xfce.org
Sun Jun 24 22:43:02 CEST 2007
Author: jasper
Date: 2007-06-24 20:43:02 +0000 (Sun, 24 Jun 2007)
New Revision: 25856
Modified:
xfce4-panel/branches/xfce_4_4/NEWS
xfce4-panel/branches/xfce_4_4/libxfce4panel/xfce-itembar.c
xfce4-panel/branches/xfce_4_4/libxfce4panel/xfce-itembar.h
xfce4-panel/branches/xfce_4_4/panel/panel-properties.c
Log:
Fix expansion of items a non-full-width panel.
Modified: xfce4-panel/branches/xfce_4_4/NEWS
===================================================================
--- xfce4-panel/branches/xfce_4_4/NEWS 2007-06-24 20:38:38 UTC (rev 25855)
+++ xfce4-panel/branches/xfce_4_4/NEWS 2007-06-24 20:43:02 UTC (rev 25856)
@@ -2,6 +2,7 @@
====================
4.4.2
=====
+- Fix expansion of items a non-full-width panel. (Jasper)
- Make sure tooltips are set for more than 1 clock instance (bug #3109).
(Jasper)
- Fix area that is off-limits to other windows (_NET_WM_STRUT hints) for a
Modified: xfce4-panel/branches/xfce_4_4/libxfce4panel/xfce-itembar.c
===================================================================
--- xfce4-panel/branches/xfce_4_4/libxfce4panel/xfce-itembar.c 2007-06-24 20:38:38 UTC (rev 25855)
+++ xfce4-panel/branches/xfce_4_4/libxfce4panel/xfce-itembar.c 2007-06-24 20:43:02 UTC (rev 25856)
@@ -75,6 +75,7 @@
int drop_index;
guint raised:1;
+ guint expand_allowed:1;
};
struct _XfceItembarChild
@@ -313,6 +314,8 @@
priv->event_window = NULL;
priv->drag_highlight = NULL;
priv->drop_index = -1;
+ priv->raised = FALSE;
+ priv->expand_allowed = FALSE;
}
/* GObject */
@@ -497,7 +500,7 @@
{
height = bar_height;
- if (child->expand)
+ if (child->expand && priv->expand_allowed)
{
n_expand++;
max_expand = MAX (max_expand, width);
@@ -511,7 +514,7 @@
{
width = bar_height;
- if (child->expand)
+ if (child->expand && priv->expand_allowed)
{
n_expand++;
max_expand = MAX (max_expand, height);
@@ -524,7 +527,7 @@
props[i].allocation.width = width;
props[i].allocation.height = height;
- props[i].expand = child->expand;
+ props[i].expand = (child->expand && priv->expand_allowed);
}
total_expand = expand_width;
@@ -1009,6 +1012,30 @@
}
/**
+ * xfce_itembar_set_allow_expand:
+ * @allow : %TRUE when the expansion is allowed.
+ *
+ * Set whether the 'expand' child property is honored.
+ *
+ * See also: xfce_itembar_set_child_expand().
+ **/
+void
+xfce_itembar_set_allow_expand (XfceItembar *itembar,
+ gboolean allow)
+{
+ XfceItembarPrivate *priv;
+
+ g_return_if_fail (XFCE_IS_ITEMBAR (itembar));
+
+ priv = XFCE_ITEMBAR_GET_PRIVATE (itembar);
+
+ priv->expand_allowed = allow;
+ gtk_widget_queue_resize (GTK_WIDGET(itembar));
+}
+
+
+
+/**
* xfce_itembar_get_orientation:
* @itembar : an #XfceItembar
*
Modified: xfce4-panel/branches/xfce_4_4/libxfce4panel/xfce-itembar.h
===================================================================
--- xfce4-panel/branches/xfce_4_4/libxfce4panel/xfce-itembar.h 2007-06-24 20:38:38 UTC (rev 25855)
+++ xfce4-panel/branches/xfce_4_4/libxfce4panel/xfce-itembar.h 2007-06-24 20:43:02 UTC (rev 25856)
@@ -66,6 +66,9 @@
GtkWidget *xfce_itembar_new (GtkOrientation orientation);
+void xfce_itembar_set_allow_expand (XfceItembar * itembar,
+ gboolean allow);
+
void xfce_itembar_set_orientation (XfceItembar * itembar,
GtkOrientation orientation);
Modified: xfce4-panel/branches/xfce_4_4/panel/panel-properties.c
===================================================================
--- xfce4-panel/branches/xfce_4_4/panel/panel-properties.c 2007-06-24 20:38:38 UTC (rev 25855)
+++ xfce4-panel/branches/xfce_4_4/panel/panel-properties.c 2007-06-24 20:43:02 UTC (rev 25856)
@@ -969,6 +969,7 @@
if (priv->full_width > XFCE_PANEL_NORMAL_WIDTH)
{
+ xfce_itembar_set_allow_expand (XFCE_ITEMBAR (priv->itembar), TRUE);
if (xfce_screen_position_is_horizontal (priv->screen_position))
{
int w;
@@ -1199,10 +1200,14 @@
{
case XFCE_PANEL_NORMAL_WIDTH:
w = h = -1;
+ xfce_itembar_set_allow_expand (XFCE_ITEMBAR (priv->itembar),
+ FALSE);
break;
case XFCE_PANEL_FULL_WIDTH:
case XFCE_PANEL_SPAN_MONITORS:
+ xfce_itembar_set_allow_expand (XFCE_ITEMBAR (priv->itembar),
+ TRUE);
if (xfce_screen_position_is_horizontal (
priv->screen_position))
{
More information about the Xfce4-commits
mailing list