aboutsummaryrefslogtreecommitdiffstats
path: root/lib/widgets/ephy-editable-toolbar.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/widgets/ephy-editable-toolbar.c')
-rwxr-xr-xlib/widgets/ephy-editable-toolbar.c92
1 files changed, 7 insertions, 85 deletions
diff --git a/lib/widgets/ephy-editable-toolbar.c b/lib/widgets/ephy-editable-toolbar.c
index 9861f4bf4..eddb39bd9 100755
--- a/lib/widgets/ephy-editable-toolbar.c
+++ b/lib/widgets/ephy-editable-toolbar.c
@@ -258,22 +258,8 @@ drag_data_delete_cb (GtkWidget *widget,
g_return_if_fail (IS_EPHY_EDITABLE_TOOLBAR (etoolbar));
node = (EphyToolbarsItem *)g_object_get_data (G_OBJECT (widget), "item_data");
- if (node)
- {
- ephy_toolbars_group_remove_item (etoolbar->priv->group, node);
- }
- else
- {
- EphyToolbarsToolbar *toolbar;
- GtkWidget *child = GTK_BIN (widget)->child;
-
- g_return_if_fail (child != NULL);
- toolbar = (EphyToolbarsToolbar *)g_object_get_data
- (G_OBJECT (child), "toolbar_data");
- g_return_if_fail (toolbar != NULL);
-
- ephy_toolbars_group_remove_toolbar (etoolbar->priv->group, toolbar);
- }
+ g_return_if_fail (node != NULL);
+ ephy_toolbars_group_remove_item (etoolbar->priv->group, node);
etoolbar->priv->toolbars_dirty = TRUE;
queue_ui_update (etoolbar);
@@ -293,7 +279,7 @@ drag_data_get_cb (GtkWidget *widget,
g_return_if_fail (IS_EPHY_EDITABLE_TOOLBAR (etoolbar));
action = EGG_ACTION (g_object_get_data (G_OBJECT (widget), "egg-action"));
- target = action ? action->name : "Toolbar";
+ target = action->name;
LOG ("Drag data get %s", action->name);
@@ -366,49 +352,6 @@ disconnect_item_drag_source (EphyToolbarsItem *item, EphyEditableToolbar *etoolb
}
static void
-connect_toolbar_drag_source (EphyToolbarsToolbar *toolbar, EphyEditableToolbar *etoolbar)
-{
- GtkWidget *widget;
-
- g_return_if_fail (IS_EPHY_EDITABLE_TOOLBAR (etoolbar));
- g_return_if_fail (toolbar != NULL);
-
- widget = get_item_widget (etoolbar, toolbar);
-
- if (!g_object_get_data (G_OBJECT (widget), "drag_source_set"))
- {
- g_object_set_data (G_OBJECT (widget), "drag_source_set",
- GINT_TO_POINTER (TRUE));
- g_signal_connect (widget->parent, "drag_data_get",
- G_CALLBACK (drag_data_get_cb),
- etoolbar);
- g_signal_connect (widget->parent, "drag_data_delete",
- G_CALLBACK (drag_data_delete_cb),
- etoolbar);
- }
-}
-
-static void
-disconnect_toolbar_drag_source (EphyToolbarsToolbar *toolbar, EphyEditableToolbar *etoolbar)
-{
- GtkWidget *widget;
-
- g_return_if_fail (IS_EPHY_EDITABLE_TOOLBAR (etoolbar));
- g_return_if_fail (toolbar != NULL);
-
- widget = get_item_widget (etoolbar, toolbar);
-
- if (g_object_get_data (G_OBJECT (widget), "drag_source_set"))
- {
- g_object_set_data (G_OBJECT (widget), "drag_source_set",
- GINT_TO_POINTER (FALSE));
- g_signal_handlers_disconnect_by_func (widget->parent,
- G_CALLBACK (drag_data_delete_cb),
- etoolbar);
- }
-}
-
-static void
setup_toolbar (EphyToolbarsToolbar *toolbar, EphyEditableToolbar *etoolbar)
{
GtkWidget *widget;
@@ -527,9 +470,6 @@ do_merge (EphyEditableToolbar *t)
ephy_toolbars_group_foreach_item (t->priv->group,
(EphyToolbarsGroupForeachItemFunc)
connect_item_drag_source, t);
- ephy_toolbars_group_foreach_toolbar (t->priv->group,
- (EphyToolbarsGroupForeachToolbarFunc)
- connect_toolbar_drag_source, t);
}
ephy_toolbars_group_foreach_toolbar (t->priv->group,
@@ -793,10 +733,6 @@ editor_close_cb (GtkWidget *button, EphyEditableToolbar *etoolbar)
(EphyToolbarsGroupForeachItemFunc)
disconnect_item_drag_source,
etoolbar);
- ephy_toolbars_group_foreach_toolbar (etoolbar->priv->group,
- (EphyToolbarsGroupForeachToolbarFunc)
- disconnect_toolbar_drag_source,
- etoolbar);
hide_editor (etoolbar);
}
@@ -1039,29 +975,19 @@ button_press_cb (GtkWidget *w,
EphyEditableToolbar *etoolbar)
{
GtkWidget *widget;
- GtkWidget *drag_widget;
- GtkWidget *child;
+ GtkWidget *toolitem;
g_return_val_if_fail (IS_EPHY_EDITABLE_TOOLBAR (etoolbar), FALSE);
widget = gtk_get_event_widget (event);
- child = GTK_BIN (widget)->child;
-
- if (EGG_IS_TOOLBAR (child))
- {
- drag_widget = widget;
- }
- else
- {
- drag_widget = gtk_widget_get_ancestor (widget, EGG_TYPE_TOOL_ITEM);
- }
+ toolitem = gtk_widget_get_ancestor (widget, EGG_TYPE_TOOL_ITEM);
- if (drag_widget == NULL) return FALSE;
+ if (toolitem == NULL) return FALSE;
switch (event->type)
{
case GDK_BUTTON_PRESS:
- gtk_drag_begin (drag_widget,
+ gtk_drag_begin (toolitem,
gtk_target_list_new (source_drag_types, 1),
GDK_ACTION_MOVE, 1, event);
return TRUE;
@@ -1112,10 +1038,6 @@ ephy_editable_toolbar_edit (EphyEditableToolbar *etoolbar)
ephy_toolbars_group_foreach_item (etoolbar->priv->group,
(EphyToolbarsGroupForeachItemFunc)
connect_item_drag_source, etoolbar);
- ephy_toolbars_group_foreach_toolbar (etoolbar->priv->group,
- (EphyToolbarsGroupForeachToolbarFunc)
- connect_toolbar_drag_source,
- etoolbar);
ephy_toolbars_group_foreach_item (etoolbar->priv->group,
(EphyToolbarsGroupForeachItemFunc)
set_action_sensitive, etoolbar);