diff --git a/modules/juce_gui_basics/accessibility/juce_AccessibilityHandler.cpp b/modules/juce_gui_basics/accessibility/juce_AccessibilityHandler.cpp index dc36d46ef5..e753511027 100644 --- a/modules/juce_gui_basics/accessibility/juce_AccessibilityHandler.cpp +++ b/modules/juce_gui_basics/accessibility/juce_AccessibilityHandler.cpp @@ -310,8 +310,9 @@ void AccessibilityHandler::giveAwayFocusInternal() const { currentlyFocusedHandler = nullptr; - if (auto* parent = getParent()) - notifyAccessibilityEventInternal (*parent, InternalAccessibilityEvent::focusChanged); + if (auto* focusedComponent = Component::getCurrentlyFocusedComponent()) + if (auto* handler = focusedComponent->getAccessibilityHandler()) + handler->grabFocus(); } void AccessibilityHandler::takeFocus() diff --git a/modules/juce_gui_basics/components/juce_Component.cpp b/modules/juce_gui_basics/components/juce_Component.cpp index 55cc425ffd..75b66756b7 100644 --- a/modules/juce_gui_basics/components/juce_Component.cpp +++ b/modules/juce_gui_basics/components/juce_Component.cpp @@ -1709,9 +1709,6 @@ void Component::enterModalState (bool shouldTakeKeyboardFocus, if (shouldTakeKeyboardFocus) grabKeyboardFocus(); - - if (auto* handler = getAccessibilityHandler()) - notifyAccessibilityEventInternal (*handler, InternalAccessibilityEvent::focusChanged); } else {