diff --git a/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp b/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp index 19fbb95ff1..c9545402d5 100644 --- a/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp +++ b/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp @@ -243,30 +243,13 @@ private: return dynamic_cast (currentlyOverComp.get()); } - static Component* findDesktopComponentBelow (Point screenPos) - { - auto& desktop = Desktop::getInstance(); - - for (auto i = desktop.getNumComponents(); --i >= 0;) - { - auto* desktopComponent = desktop.getComponent (i); - auto localPoint = desktopComponent->getLocalPoint (nullptr, screenPos); - - if (auto* c = desktopComponent->getComponentAt (localPoint)) - if (c->hitTest (localPoint.getX(), localPoint.getY())) - return c; - } - - return nullptr; - } - DragAndDropTarget* findTarget (Point screenPos, Point& relativePos, Component*& resultComponent) const { auto* hit = getParentComponent(); if (hit == nullptr) - hit = findDesktopComponentBelow (screenPos); + hit = Desktop::getInstance().findComponentAt (screenPos); else hit = hit->getComponentAt (hit->getLocalPoint (nullptr, screenPos));