Browse Source

macOS Accessibility: Fixed crash due to availability of NSAccessibilityLayoutChangedNotification on < 10.9

v6.1.6
ed 3 years ago
parent
commit
a9d17d860c
1 changed files with 8 additions and 2 deletions
  1. +8
    -2
      modules/juce_gui_basics/native/accessibility/juce_mac_Accessibility.mm

+ 8
- 2
modules/juce_gui_basics/native/accessibility/juce_mac_Accessibility.mm View File

@@ -31,6 +31,12 @@ namespace juce
using NSAccessibilityNotificationName = NSString*;
#endif
#if (! defined MAC_OS_X_VERSION_10_9) || MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_9
const NSAccessibilityNotificationName NSAccessibilityLayoutChangedNotificationJuce = @"AXLayoutChanged";
#else
const NSAccessibilityNotificationName NSAccessibilityLayoutChangedNotificationJuce = NSAccessibilityLayoutChangedNotification;
#endif
#if JUCE_OBJC_HAS_AVAILABLE_FEATURE || (defined (MAC_OS_X_VERSION_10_10) && MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_10)
#define JUCE_NATIVE_ACCESSIBILITY_INCLUDED 1
@@ -1071,7 +1077,7 @@ void notifyAccessibilityEventInternal (const AccessibilityHandler& handler, Inte
{
case InternalAccessibilityEvent::elementCreated: return NSAccessibilityCreatedNotification;
case InternalAccessibilityEvent::elementDestroyed: return NSAccessibilityUIElementDestroyedNotification;
case InternalAccessibilityEvent::elementMovedOrResized: return NSAccessibilityLayoutChangedNotification;
case InternalAccessibilityEvent::elementMovedOrResized: return NSAccessibilityLayoutChangedNotificationJuce;
case InternalAccessibilityEvent::focusChanged: return NSAccessibilityFocusedUIElementChangedNotification;
case InternalAccessibilityEvent::windowOpened: return NSAccessibilityWindowCreatedNotification;
case InternalAccessibilityEvent::windowClosed: break;
@@ -1095,7 +1101,7 @@ void AccessibilityHandler::notifyAccessibilityEvent (AccessibilityEvent eventTyp
case AccessibilityEvent::textChanged:
case AccessibilityEvent::valueChanged: return NSAccessibilityValueChangedNotification;
case AccessibilityEvent::titleChanged: return NSAccessibilityTitleChangedNotification;
case AccessibilityEvent::structureChanged: return NSAccessibilityLayoutChangedNotification;
case AccessibilityEvent::structureChanged: return NSAccessibilityLayoutChangedNotificationJuce;
}
return NSAccessibilityNotificationName{};


Loading…
Cancel
Save