After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 740362 - Need a role for static/generic objects
Need a role for static/generic objects
Status: RESOLVED FIXED
Product: at-spi
Classification: Platform
Component: at-spi2-atk
unspecified
Other Linux
: Normal normal
: ---
Assigned To: At-spi maintainer(s)
At-spi maintainer(s)
Depends on: 739981 740340
Blocks:
 
 
Reported: 2014-11-19 13:10 UTC by Joanmarie Diggs (IRC: joanie)
Modified: 2014-11-25 12:03 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Proposed patch (735 bytes, patch)
2014-11-19 13:10 UTC, Joanmarie Diggs (IRC: joanie)
none Details | Review
Proposed patch - includes dependencies bump (1.25 KB, patch)
2014-11-19 17:53 UTC, Joanmarie Diggs (IRC: joanie)
committed Details | Review

Description Joanmarie Diggs (IRC: joanie) 2014-11-19 13:10:31 UTC
Created attachment 290991 [details] [review]
Proposed patch

+++ This bug was initially created as a clone of Bug #740340 +++

There is currently no AtspiRole type that reflects objects which meet all of the following criteria:

1. Contains accessible information directly (i.e. and not in a child object)
2. Has a role that is known by the implementor
3. Lacks a role with any semantic value for the end user
4. Is not something the user can interact with

If 1 were not the case, then ATSPI_ROLE_PANEL would make sense as its documented definition is "A generic container that is often used to group objects."

If 2 were not the case, then ATSPI_ROLE_UNKNOWN would make sense as its documented definition is "The object contains some Accessible information, but its role is not known."

As for why we cannot address 3 by changing the documentation of ATSPI_ROLE_UNKNOWN (which seems like the easiest way to go): Orca tends to not touch objects with ATSPI_ROLE_UNKNOWN. After all, if the implementor truly has no idea what the thing is, what should the AT do to provide access to it? What interfaces should it check for? What user actions are applicable? Does this accessible object even have a backing widget in the application? All bets are off with "unknown" objects....

If 4 were not the case, odds are that it's a frequently-encountered widget or container for which there is an appropriate AtspiRole.

As for the use case: See http://lists.w3.org/Archives/Public/public-pfwg/2014Nov/0131.html.

I'm attaching a patch which does two things: Adds ATSPI_ROLE_STATIC and updates the documentation for ATSPI_ROLE_TEXT (which is used by Gecko in ways that are inconsistent with the rest of our platform, but given the existing docs you cannot really blame Mozilla). The role and docs match what is proposed for ATK (see bug 739931).
Comment 1 Joanmarie Diggs (IRC: joanie) 2014-11-19 17:53:48 UTC
Created attachment 291022 [details] [review]
Proposed patch - includes dependencies bump

The new role is in ATK and at-spi2-core, but neither of those modules have rolled a release since the role was added. The next release of each module should be v2.15.2. This patch bumps the minimum version of those two dependencies to 2.15.2.
Comment 2 Alejandro Piñeiro Iglesias (IRC: infapi00) 2014-11-25 11:54:36 UTC
Review of attachment 291022 [details] [review]:

LGTM
Comment 3 Joanmarie Diggs (IRC: joanie) 2014-11-25 12:03:19 UTC
Comment on attachment 291022 [details] [review]
Proposed patch - includes dependencies bump

https://git.gnome.org/browse/at-spi2-atk/commit/?id=72b731c5