summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJuan Pablo Ugarte <juanpablougarte@gmail.com>2013-06-06 20:03:11 -0300
committerJuan Pablo Ugarte <juanpablougarte@gmail.com>2013-06-06 20:04:08 -0300
commite82687bcc90c1122ecf376a790e9b366e2b69fcd (patch)
treeec1b55e47d9a74dc928e78c12bbafc96ba349f06
parent7b0573899b52735b141f9d492068c050667cd770 (diff)
downloadglade-e82687bcc90c1122ecf376a790e9b366e2b69fcd.tar.gz
Fixed drag&drop bug. A bogus drag was being triggered when resizing a widget in the workspace.
-rw-r--r--gladeui/glade-design-layout.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/gladeui/glade-design-layout.c b/gladeui/glade-design-layout.c
index 565af5a1..1d39521b 100644
--- a/gladeui/glade-design-layout.c
+++ b/gladeui/glade-design-layout.c
@@ -2303,11 +2303,8 @@ _glade_design_layout_do_event (GladeDesignLayout *layout, GdkEvent *event)
{
GObject *source;
- if (event->button.state & GDK_SHIFT_MASK)
- {
- priv->drag_source = NULL;
- }
- else if (data.gwidget && (source = glade_widget_get_object (data.gwidget)))
+ if (!(event->button.state & GDK_SHIFT_MASK) &&
+ data.gwidget && (source = glade_widget_get_object (data.gwidget)))
{
priv->drag_source = GTK_WIDGET (source);
@@ -2315,6 +2312,14 @@ _glade_design_layout_do_event (GladeDesignLayout *layout, GdkEvent *event)
data.x, data.y,
&priv->drag_x, &priv->drag_y);
}
+ else
+ {
+ priv->drag_source = NULL;
+ }
+ }
+ else if (event->type == GDK_BUTTON_RELEASE && event->button.button == 1)
+ {
+ priv->drag_source = NULL;
}
_glade_design_view_freeze (priv->view);