Add native Wine accessibility bridge
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
// SPDX-License-Identifier: LGPL-2.1-or-later
|
||||
|
||||
typedef [v1_enum] enum tagSPEECH_PRIORITY {
|
||||
SPEECH_PRIORITY_NORMAL = 0,
|
||||
SPEECH_PRIORITY_NEXT = 1,
|
||||
SPEECH_PRIORITY_NOW = 2
|
||||
} SPEECH_PRIORITY;
|
||||
|
||||
typedef [v1_enum] enum tagSYMBOL_LEVEL {
|
||||
SYMBOL_LEVEL_NONE = 0,
|
||||
SYMBOL_LEVEL_SOME = 100,
|
||||
SYMBOL_LEVEL_MOST = 200,
|
||||
SYMBOL_LEVEL_ALL = 300,
|
||||
SYMBOL_LEVEL_CHAR = 1000,
|
||||
SYMBOL_LEVEL_UNCHANGED = -1
|
||||
} SYMBOL_LEVEL;
|
||||
|
||||
[
|
||||
uuid(DFF50B99-F7FD-4ca7-A82C-DAEB3E025295),
|
||||
version(1.0)
|
||||
]
|
||||
interface NvdaController {
|
||||
error_status_t __stdcall testIfRunning();
|
||||
error_status_t __stdcall speakText([in, string] const wchar_t *text);
|
||||
error_status_t __stdcall cancelSpeech();
|
||||
error_status_t __stdcall brailleMessage([in, string] const wchar_t *message);
|
||||
};
|
||||
|
||||
[
|
||||
uuid(3D168D45-CB58-4270-8257-4E0BE515D557),
|
||||
version(1.0)
|
||||
]
|
||||
interface NvdaController2 {
|
||||
error_status_t __stdcall getProcessId([out] unsigned long *pid);
|
||||
error_status_t __stdcall speakSsml(
|
||||
[in, string] const wchar_t *ssml,
|
||||
[in] const SYMBOL_LEVEL symbolLevel,
|
||||
[in] const SPEECH_PRIORITY priority,
|
||||
[in] const boolean asynchronous);
|
||||
// WIDL lacks MIDL's callback attribute. Keeping this method in slot 2
|
||||
// preserves the wire layout used by the unmodified controller client.
|
||||
error_status_t __stdcall onSsmlMarkReached([in, string] const wchar_t *mark);
|
||||
};
|
||||
|
||||
[
|
||||
uuid(019e4216-a9a1-7540-a217-e1a2d2793025),
|
||||
version(1.0)
|
||||
]
|
||||
interface NvdaController3 {
|
||||
error_status_t __stdcall isSpeaking([out] boolean *speaking);
|
||||
};
|
||||
Reference in New Issue
Block a user