From e763ac3de26022b1d9005dc786f19a4f87dabb8b Mon Sep 17 00:00:00 2001 From: Tom Poole Date: Tue, 21 Aug 2018 11:29:06 +0100 Subject: [PATCH] Fixed a bug when performing a DragAndDrop across windows --- .../mouse/juce_DragAndDropContainer.cpp | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) 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));