diff --git a/modules/juce_gui_basics/native/accessibility/juce_win32_Accessibility.cpp b/modules/juce_gui_basics/native/accessibility/juce_win32_Accessibility.cpp index 223144dd97..91e9baadd9 100644 --- a/modules/juce_gui_basics/native/accessibility/juce_win32_Accessibility.cpp +++ b/modules/juce_gui_basics/native/accessibility/juce_win32_Accessibility.cpp @@ -60,6 +60,7 @@ public: ~AccessibilityNativeImpl() { accessibilityElement->invalidateElement(); + --providerCount; if (auto* wrapper = WindowsUIAWrapper::getInstanceWithoutCreating()) { @@ -68,7 +69,7 @@ public: wrapper->disconnectProvider (provider); - if (--providerCount == 0) + if (providerCount == 0) wrapper->disconnectAllProviders(); } } @@ -228,11 +229,6 @@ void AccessibilityHandler::DestroyNativeImpl::operator() (AccessibilityHandler:: //============================================================================== namespace WindowsAccessibility { - void initialiseUIAWrapper() - { - WindowsUIAWrapper::getInstance(); - } - long getUiaRootObjectId() { return static_cast (UiaRootObjectId); @@ -243,7 +239,7 @@ namespace WindowsAccessibility if (isStartingUpOrShuttingDown() || (handler == nullptr || ! isHandlerValid (*handler))) return false; - if (auto* wrapper = WindowsUIAWrapper::getInstanceWithoutCreating()) + if (auto* wrapper = WindowsUIAWrapper::getInstance()) { ComSmartPtr provider; handler->getNativeImplementation()->QueryInterface (IID_PPV_ARGS (provider.resetAndGetPointerAddress())); diff --git a/modules/juce_gui_basics/native/juce_win32_Windowing.cpp b/modules/juce_gui_basics/native/juce_win32_Windowing.cpp index efa415f5a4..a1219fe712 100644 --- a/modules/juce_gui_basics/native/juce_win32_Windowing.cpp +++ b/modules/juce_gui_basics/native/juce_win32_Windowing.cpp @@ -65,7 +65,6 @@ void* getUser32Function (const char*); namespace WindowsAccessibility { - void initialiseUIAWrapper(); long getUiaRootObjectId(); bool handleWmGetObject (AccessibilityHandler*, WPARAM, LPARAM, LRESULT*); void revokeUIAMapEntriesForWindow (HWND); @@ -1380,9 +1379,6 @@ public: parentToAddTo (parent), currentRenderingEngine (softwareRenderingEngine) { - // make sure that the UIA wrapper singleton is loaded - WindowsAccessibility::initialiseUIAWrapper(); - callFunctionIfNotLocked (&createWindowCallback, this); setTitle (component.getName());