diff --git a/modules/juce_gui_basics/windows/juce_ComponentPeer.cpp b/modules/juce_gui_basics/windows/juce_ComponentPeer.cpp index 3b970ae44c..55b8bd2e7b 100644 --- a/modules/juce_gui_basics/windows/juce_ComponentPeer.cpp +++ b/modules/juce_gui_basics/windows/juce_ComponentPeer.cpp @@ -343,7 +343,7 @@ void ComponentPeer::handleFocusGain() { ModifierKeys::updateCurrentModifiers(); - if (component.isParentOf (lastFocusedComponent)) + if (component.isParentOf (lastFocusedComponent) && lastFocusedComponent->isShowing() && lastFocusedComponent->getWantsKeyboardFocus()) { @@ -456,7 +456,7 @@ bool ComponentPeer::handleDragMove (const ComponentPeer::DragInfo& info) ModifierKeys::updateCurrentModifiers(); auto* compUnderMouse = component.getComponentAt (info.position); - auto* lastTarget = dragAndDropTargetComponent; + auto* lastTarget = dragAndDropTargetComponent.get(); Component* newTarget = nullptr; if (compUnderMouse != lastDragAndDropCompUnderMouse)