Перейти к основному содержанию

Доступность

Проблемы с доступностью в приложениях Electron аналогичны веб-сайтам, поскольку они оба в конечном итоге являются HTML.

Активация специальных возможностей вручную

Electron-приложения будут автоматически включать специальные возможности при наличии ассистивных технологий (например, JAWS на Windows или VoiceOver на macOS). За подробностями обратитесь к документации Chrome о доступности.

Вы также можете вручную переключать эти возможности либо в вашем приложении Electron, либо установив флаги во встроенном программном обеспечении сторонних производителей.

Использование API Electron

Используя app.setAccessibilitySupportEnabled(enabled) API, вы можете вручную показать дерево доступности Chrome пользователям в настройках приложения. Имейте в виду, что системные ассистивные утилиты пользователя имеют приоритет над этим параметром и будут переопределять его.

В программах сторонних производителей

macOS

На macOS сторонняя ассистивная технология может переключать специальные возможности внутри Electron приложения путем программной установки AXManualAccessibility атрибута:

CFStringRef kAXManualAccessibility = CFSTR("AXManualAccessibility");

+ (void)enableAccessibility:(BOOL)enable inElectronApplication:(NSRunningApplication *)app
{
AXUIElementRef appRef = AXUIElementCreateApplication(app.processIdentifier);
if (appRef == nil)
return;

CFBooleanRef value = enable ? kCFBooleanTrue : kCFBooleanFalse;
AXUIElementSetAttributeValue(appRef, kAXManualAccessibility, value);
CFRelease(appRef);
}