diff --git a/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp b/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp index 44d52f1bd3..0806461f2e 100644 --- a/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp +++ b/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp @@ -154,10 +154,14 @@ public: else if (now > lastTimeOverTarget + RelativeTime::milliseconds (700)) checkForExternalDrag (details, screenPos); } + + forceMouseCursorUpdate(); } void timerCallback() override { + forceMouseCursorUpdate(); + if (sourceDetails.sourceComponent == nullptr) { delete this; @@ -201,6 +205,11 @@ private: bool hasCheckedForExternalDrag; Time lastTimeOverTarget; + void forceMouseCursorUpdate() + { + Desktop::getInstance().getMainMouseSource().forceMouseCursorUpdate(); + } + DragAndDropTarget* getCurrentlyOver() const noexcept { return dynamic_cast (currentlyOverComp.get()); diff --git a/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.h b/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.h index 7d0fed0de9..984375379b 100644 --- a/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.h +++ b/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.h @@ -110,7 +110,7 @@ public: It's useful when a component wants to call startDragging but doesn't know the DragAndDropContainer it should to use. - Obviously this may return 0 if it doesn't find a suitable component. + Obviously this may return nullptr if it doesn't find a suitable component. */ static DragAndDropContainer* findParentDragContainerFor (Component* childComponent);