Drag and Drop: Added payload->IsPreview() to user can render their custom preview while handling overlapping drop targets. (#143)
diff --git a/imgui.cpp b/imgui.cpp
index b43295e..3eecc73 100644
--- a/imgui.cpp
+++ b/imgui.cpp
@@ -10836,7 +10836,8 @@
     }
 
     // Render default drop visuals
-    if (!(flags & ImGuiDragDropFlags_AcceptNoDrawDefaultRect) && was_accepted_previously)
+    payload.Preview = was_accepted_previously;
+    if (!(flags & ImGuiDragDropFlags_AcceptNoDrawDefaultRect) && payload.Preview)
     {
         // FIXME-DRAG FIXME-STYLE: Settle on a proper default visuals for drop target, w/ ImGuiCol enum value probably.
         r.Expand(5.0f);
diff --git a/imgui.h b/imgui.h
index 1624e31..7959d0e 100644
--- a/imgui.h
+++ b/imgui.h
@@ -1155,11 +1155,13 @@
     ImGuiID         SourceParentId;     // Source parent id (if available)
     int             DataFrameCount;     // Data timestamp
     char            DataType[8 + 1];    // Data type tag (short user-supplied string)
-    bool            Delivery;           // Set when AcceptDragDropPayload() was called and the mouse button is released over the target item
+    bool            Preview;            // Set when AcceptDragDropPayload() was called and mouse has been hovering the target item (nb: handle overlapping drag targets)
+    bool            Delivery;           // Set when AcceptDragDropPayload() was called and mouse button is released over the target item.
 
     ImGuiPayload()  { Clear(); }
-    void Clear()    { SourceId = SourceParentId = 0; Data = NULL; DataSize = 0; memset(DataType, 0, sizeof(DataType)); DataFrameCount = -1; Delivery = false; }
+    void Clear()    { SourceId = SourceParentId = 0; Data = NULL; DataSize = 0; memset(DataType, 0, sizeof(DataType)); DataFrameCount = -1; Preview = Delivery = false; }
     bool IsDataType(const char* type) const { return DataFrameCount != -1 && strcmp(type, DataType) == 0; }
+    bool IsPreview() const                  { return Preview; }
     bool IsDelivery() const                 { return Delivery; }
 };