summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVincent Untz <vuntz@gnome.org>2007-07-02 17:44:02 +0000
committerVincent Untz <vuntz@src.gnome.org>2007-07-02 17:44:02 +0000
commit73dba3acc2e83e7d4d846dbc503c1031473d2d6f (patch)
tree613a3ed22681cfa22eeb80f6347bb05ba1d6ceb0
parentb477e39a146f2d82af0587b4f84e0462c7ec17cc (diff)
downloadlibwnck-73dba3acc2e83e7d4d846dbc503c1031473d2d6f.tar.gz
fix again commit for bug #420713.
2007-07-02 Vincent Untz <vuntz@gnome.org> * libwnck/pager.c: (wnck_drag_clean_up): fix again commit for bug #420713. svn path=/branches/gnome-2-18/; revision=1388
-rw-r--r--ChangeLog5
-rw-r--r--libwnck/pager.c32
2 files changed, 20 insertions, 17 deletions
diff --git a/ChangeLog b/ChangeLog
index f81a40a..98c4149 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2007-07-02 Vincent Untz <vuntz@gnome.org>
+ * libwnck/pager.c: (wnck_drag_clean_up): fix again commit for bug
+ #420713.
+
+2007-07-02 Vincent Untz <vuntz@gnome.org>
+
* libwnck/pager.c: (wnck_pager_draw_workspace): use double instead of
int to compute the x, y, width and height to pass to cairo. Improves
the look of the pager a bit.
diff --git a/libwnck/pager.c b/libwnck/pager.c
index dfc18c8..b6d2a11 100644
--- a/libwnck/pager.c
+++ b/libwnck/pager.c
@@ -1409,8 +1409,8 @@ wnck_pager_drag_motion_leave (GtkWidget *widget,
static void
wnck_drag_clean_up (WnckWindow *window,
GdkDragContext *context,
- gboolean clean_up_window,
- gboolean clean_up_context);
+ gboolean clean_up_for_context_destroy,
+ gboolean clean_up_for_window_destroy);
static void
wnck_drag_context_destroyed (gpointer windowp,
@@ -1489,11 +1489,19 @@ wnck_drag_source_destroyed (gpointer contextp,
static void
wnck_drag_clean_up (WnckWindow *window,
GdkDragContext *context,
- gboolean clean_up_window,
- gboolean clean_up_context)
+ gboolean clean_up_for_context_destroy,
+ gboolean clean_up_for_window_destroy)
{
- if (clean_up_window)
+ if (clean_up_for_context_destroy)
{
+ GtkWidget *drag_source;
+
+ drag_source = g_object_get_data (G_OBJECT (context),
+ "wnck-drag-source-widget");
+ if (drag_source)
+ g_object_weak_unref (G_OBJECT (drag_source),
+ wnck_drag_source_destroyed, context);
+
g_object_weak_unref (G_OBJECT (window),
wnck_drag_window_destroyed, context);
if (g_signal_handlers_disconnect_by_func (window,
@@ -1501,19 +1509,9 @@ wnck_drag_clean_up (WnckWindow *window,
g_assert_not_reached ();
}
- if (clean_up_context)
+ if (clean_up_for_window_destroy)
{
- GtkWidget *drag_source;
-
- drag_source = g_object_get_data (G_OBJECT (context),
- "wnck-drag-source-widget");
- if (drag_source)
- {
- g_object_steal_data (G_OBJECT (context), "wnck-drag-source-widget");
- g_object_weak_unref (G_OBJECT (drag_source),
- wnck_drag_source_destroyed, context);
- }
-
+ g_object_steal_data (G_OBJECT (context), "wnck-drag-source-widget");
g_object_weak_unref (G_OBJECT (context),
wnck_drag_context_destroyed, window);
}