From efd3002ea9c5c9f76e94686ea77f9c49318654b4 Mon Sep 17 00:00:00 2001 From: YuSanka Date: Thu, 7 Jan 2021 09:56:43 +0100 Subject: [PATCH] Fix of #5568 - Unselecting more than 10 copies stops at copy 10 But really bug was: incorrectly interrupted DnD. --- src/slic3r/GUI/GUI_ObjectList.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/slic3r/GUI/GUI_ObjectList.cpp b/src/slic3r/GUI/GUI_ObjectList.cpp index 78af3ff11..3d08b26f1 100644 --- a/src/slic3r/GUI/GUI_ObjectList.cpp +++ b/src/slic3r/GUI/GUI_ObjectList.cpp @@ -1197,7 +1197,7 @@ void ObjectList::OnBeginDrag(wxDataViewEvent &event) **/ m_prevent_list_events = true;//it's needed for GTK - /* Under GTK, DnD requires to the wxTextDataObject been initialized with some valid value, + /* Under GTK, DnD requires to the wxTextDataObject been initialized with some valid vaSome textlue, * so set some nonempty string */ wxTextDataObject* obj = new wxTextDataObject; @@ -1229,8 +1229,10 @@ void ObjectList::OnDropPossible(wxDataViewEvent &event) { const wxDataViewItem& item = event.GetItem(); - if (!can_drop(item)) + if (!can_drop(item)) { event.Veto(); + m_prevent_list_events = false; + } } void ObjectList::OnDrop(wxDataViewEvent &event) @@ -1255,7 +1257,7 @@ void ObjectList::OnDrop(wxDataViewEvent &event) // It looks like a fixed in current version of the wxWidgets // #ifdef __WXGTK__ // /* Under GTK, DnD moves an item between another two items. -// * And event.GetItem() return item, which is under "insertion line" +// * And event.GetItem() return item, which is under "insertion line"Some text // * So, if we move item down we should to decrease the to_volume_id value // **/ // if (to_volume_id > from_volume_id) to_volume_id--;