Is your feature request related to a problem? Please describe.
The contentRecog module is currently only used by the OCR and so some of the code is written only to that end. The OCR presents its recognition result in a virtual window using the contentRecog/recogUi/RecogResultNVDAObject class whose instance is created and set to focus in by contentRecog/recogUi/_recogOnResult. contentRecog/recogUi/_recogOnResult is also, in part, responsible in ensuring multiple recognition processes aren't being run at the same time. This system works well for the OCR but is very limiting for use with any other recognizers that might want to present results differently.
Describe the solution you'd like
A more general approach where the author of the content recognition feature can define how to present recognition results while the the contentRecog module is only responsible for running and maintaining recognition processes.
Is your feature request related to a problem? Please describe.
The
contentRecog
module is currently only used by the OCR and so some of the code is written only to that end. The OCR presents its recognition result in a virtual window using thecontentRecog/recogUi/RecogResultNVDAObject
class whose instance is created and set to focus in bycontentRecog/recogUi/_recogOnResult
.contentRecog/recogUi/_recogOnResult
is also, in part, responsible in ensuring multiple recognition processes aren't being run at the same time. This system works well for the OCR but is very limiting for use with any other recognizers that might want to present results differently.Describe the solution you'd like
A more general approach where the author of the content recognition feature can define how to present recognition results while the the
contentRecog
module is only responsible for running and maintaining recognition processes.