diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2010-08-13 20:09:37 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2010-08-13 20:09:37 +0800 |
commit | 4032075425d7251642e3f81b9c4732e9a2a23e85 (patch) | |
tree | c22289096822a953f7a25892500f512b247c7639 /widgets/misc/e-attachment-tree-view.c | |
parent | 6caf022926a6dc7ae0a84e514510def0de87109a (diff) | |
download | gsoc2013-evolution-4032075425d7251642e3f81b9c4732e9a2a23e85.tar.gz gsoc2013-evolution-4032075425d7251642e3f81b9c4732e9a2a23e85.tar.zst gsoc2013-evolution-4032075425d7251642e3f81b9c4732e9a2a23e85.zip |
Bug 624913 - Disallow drag-and-drop within the same attachment bar
Adds a boolean "dragging" property to the EAttachmentView interface,
which becomes TRUE when the user start a drag from the attachment view.
e_attachment_view_drag_motion() and e_attachment_view_drag_drop() both
return FALSE when this property is set.
Also, do not register the entire EMsgComposer window as a drag
destination. Just intercept drag signals from the GtkHTML widget.
Requires gtkhtml commit 344eb5e to fully work correctly.
Diffstat (limited to 'widgets/misc/e-attachment-tree-view.c')
-rw-r--r-- | widgets/misc/e-attachment-tree-view.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/widgets/misc/e-attachment-tree-view.c b/widgets/misc/e-attachment-tree-view.c index 09602ca186..8e597adebb 100644 --- a/widgets/misc/e-attachment-tree-view.c +++ b/widgets/misc/e-attachment-tree-view.c @@ -37,6 +37,7 @@ struct _EAttachmentTreeViewPrivate { enum { PROP_0, + PROP_DRAGGING, PROP_EDITABLE }; @@ -49,6 +50,12 @@ attachment_tree_view_set_property (GObject *object, GParamSpec *pspec) { switch (property_id) { + case PROP_DRAGGING: + e_attachment_view_set_dragging ( + E_ATTACHMENT_VIEW (object), + g_value_get_boolean (value)); + return; + case PROP_EDITABLE: e_attachment_view_set_editable ( E_ATTACHMENT_VIEW (object), @@ -66,6 +73,12 @@ attachment_tree_view_get_property (GObject *object, GParamSpec *pspec) { switch (property_id) { + case PROP_DRAGGING: + g_value_set_boolean ( + value, e_attachment_view_get_dragging ( + E_ATTACHMENT_VIEW (object))); + return; + case PROP_EDITABLE: g_value_set_boolean ( value, e_attachment_view_get_editable ( @@ -468,6 +481,9 @@ attachment_tree_view_class_init (EAttachmentTreeViewClass *class) tree_view_class->row_activated = attachment_tree_view_row_activated; g_object_class_override_property ( + object_class, PROP_DRAGGING, "dragging"); + + g_object_class_override_property ( object_class, PROP_EDITABLE, "editable"); } |