aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog11
-rwxr-xr-xlib/widgets/ephy-toolbars-group.c18
2 files changed, 23 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 06f9fa132..7b200b674 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,16 @@
2003-02-20 Marco Pesenti Gritti <marco@it.gnome.org>
+ * lib/widgets/ephy-toolbars-group.c:
+ (ephy_toolbars_group_to_string),
+ (ephy_toolbars_group_remove_toolbar),
+ (ephy_toolbars_group_remove_item), (ephy_toolbars_group_get_path):
+
+ Fix this crazy bug with toolbar buttons doing two actions after
+ having edited them.
+ Save toolbar editor also after removing items.
+
+2003-02-20 Marco Pesenti Gritti <marco@it.gnome.org>
+
* lib/widgets/ephy-location-entry.c:
(ephy_location_entry_list_event_after_cb),
(ephy_location_entry_editable_changed_cb):
diff --git a/lib/widgets/ephy-toolbars-group.c b/lib/widgets/ephy-toolbars-group.c
index 8cdcfd55f..753aca4a1 100755
--- a/lib/widgets/ephy-toolbars-group.c
+++ b/lib/widgets/ephy-toolbars-group.c
@@ -352,16 +352,16 @@ ephy_toolbars_group_to_string (EphyToolbarsGroup *t)
{
g_string_append_printf
(s, "<placeholder name=\"PlaceHolder%d-%d\">"
- "<separator name=\"ToolSeparator\"/>"
+ "<separator name=\"TS\"/>"
"</placeholder>\n", i, k);
}
else
{
g_string_append_printf
(s, "<placeholder name=\"PlaceHolder%d-%d\">"
- "<toolitem name=\"ToolItem\" verb=\"%s\"/>"
+ "<toolitem name=\"TI%s\" verb=\"%s\"/>"
"</placeholder>\n",
- i, k, item->action);
+ i, k, item->action, item->action);
}
i++;
}
@@ -459,6 +459,8 @@ ephy_toolbars_group_remove_toolbar (EphyToolbarsGroup *t,
free_toolbar_node (node->data);
g_node_destroy (node);
+ toolbars_group_save (t);
+
g_signal_emit (G_OBJECT (t), ephy_toolbars_group_signals[CHANGED], 0);
}
@@ -472,6 +474,8 @@ ephy_toolbars_group_remove_item (EphyToolbarsGroup *t,
free_toolbar_node (node->data);
g_node_destroy (node);
+ toolbars_group_save (t);
+
g_signal_emit (G_OBJECT (t), ephy_toolbars_group_signals[CHANGED], 0);
}
@@ -561,8 +565,10 @@ ephy_toolbars_group_get_path (EphyToolbarsGroup *t,
{
GNode *node;
char *path = NULL;
+ EphyToolbarsItem *titem;
node = g_node_find (t->priv->toolbars, G_IN_ORDER, G_TRAVERSE_ALL, item);
+ titem = (EphyToolbarsItem *)node->data;
switch (g_node_depth (node))
{
@@ -572,12 +578,12 @@ ephy_toolbars_group_get_path (EphyToolbarsGroup *t,
break;
case 3:
path = g_strdup_printf
- ("/Toolbar%d/PlaceHolder%d-%d/%s",
+ ("/Toolbar%d/PlaceHolder%d-%d/%s%s",
g_node_child_position (node->parent->parent, node->parent),
g_node_child_position (node->parent, node),
g_node_child_position (node->parent->parent, node->parent),
- ((EphyToolbarsItem *)node->data)->separator ?
- "ToolSeparator" : "ToolItem");
+ titem->separator ? "TS" : "TI",
+ titem->separator ? "" : titem->action);
break;
default:
g_assert_not_reached ();