Bug 161548 - Could each component (Writer, Calc, Impress, Draw, etc.) have its own accessible application name?
Summary: Could each component (Writer, Calc, Impress, Draw, etc.) have its own accessi...
Status: RESOLVED WONTFIX
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
unspecified
Hardware: All Linux (All)
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: a11y-Linux
  Show dependency treegraph
 
Reported: 2024-06-13 09:50 UTC by Joanmarie Diggs
Modified: 2024-06-13 10:41 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joanmarie Diggs 2024-06-13 09:50:56 UTC
Currently all components of LibreOffice, i.e., Writer, Calc, Impress, Draw, etc. have an accessible application name of "soffice". As a result, Orca has an "soffice" script which contains heuristics to determine if a given event, object to present, etc., is coming from Writer, Calc, Impress, ...

What I would really like to do is have a dedicated Writer script, and a dedicated Calc script, and a dedicated Impress script. That would eliminate the need for the "soffice" script heuristics which would be good for performance.

In addition, it would mean Orca could easily use AtspiCollection on everything that isn't Calc, see https://bugs.documentfoundation.org/show_bug.cgi?id=156657#c3, in particular:

> The changes I'm making to Orca will be to use AtspiCollection **any time the
> task is to find one or more descendants**. And Orca does that often enough -- 
> including for its Flat Review feature which is notoriously non-performant. 
> AtspiCollection will fix that.

and https://gitlab.gnome.org/GNOME/orca/-/commit/faf1d81b

Michael, is this an easy thing or a hard thing?
Comment 1 Michael Weghorn 2024-06-13 10:41:21 UTC
I'm sorry, but I don't see any way to make that work with LibreOffice's current architecture.

All of those components are still the same application, and run in the same process.

You can see that for example if you start Writer, then select "File" -> "New Spreadsheet": There's a Writer and a Calc window, but they both belong to the same single soffice process, and in Accerciser, you'll also see both windows as children of the same soffice (or soffice.bin) application.

So I think distinction would have to be done at least one level lower than the application, i.e. on the window/frame level or further down.

-> Closing for now, but please feel free to reopen if you have any further thoughts.