From 9dde83e662ded2bf7c727e30886efc0d7b6a343b Mon Sep 17 00:00:00 2001 From: Tom Poole Date: Wed, 18 Jul 2018 16:34:19 +0100 Subject: [PATCH] Fixed a z-order bug when DragAndDrop-ing between plug-in windows --- .../juce_gui_basics/mouse/juce_DragAndDropContainer.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp b/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp index 5bff2bb74f..19fbb95ff1 100644 --- a/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp +++ b/modules/juce_gui_basics/mouse/juce_DragAndDropContainer.cpp @@ -249,10 +249,12 @@ private: for (auto i = desktop.getNumComponents(); --i >= 0;) { - auto* c = desktop.getComponent(i); + auto* desktopComponent = desktop.getComponent (i); + auto localPoint = desktopComponent->getLocalPoint (nullptr, screenPos); - if (auto* hit = c->getComponentAt (c->getLocalPoint (nullptr, screenPos))) - return hit; + if (auto* c = desktopComponent->getComponentAt (localPoint)) + if (c->hitTest (localPoint.getX(), localPoint.getY())) + return c; } return nullptr;