GNOME Bugzilla – Bug 648675
Add useful methods from IA2
Last modified: 2021-06-10 11:25:58 UTC
Generic/catch-all bug for things which are cool in IA2 and missing in ATK. (We can pull out individual issues into specific bugs as we see fit.)
Quick list of stuff I noticed and thought "that might be useful." ~~~~~~~~~~~~~ Bring objects or text into view: * IAccessible2::scrollTo() Makes an object visible on the screen. * IAccessible2::scrollToPoint() Moves the top left of an object to a specified location. * IAccessibleText::scrollSubstringTo() Makes a specific part of string visible on screen. * IAccessibleText::scrollSubstringToPoint() Moves the top left of a substring to a specified location. Information about object location and appearance: * IAccessible2::groupPosition() Returns grouping information. Used for tree items, list items, tab panel labels, radio buttons, etc. Also used for collections of non-text objects. * IAccessibleComponent::background() Returns the background color of this object. * IAccessibleComponent::foreground() Returns the foreground color of this object. * IAccessibleTableCell::<everything> (See also bug 639486.) Other: * IAccessibleApplication::appVersion() Returns the application version
It would be good to also review proposal for IA2 1.3: https://wiki.mozilla.org/Accessibility/IA2_1.3
[Mass-reassigning open atk bug reports for better trackability as requested in https://bugzilla.gnome.org/show_bug.cgi?id=653179 . PLEASE NOTE: If you have watched the previous assignee of this bug report as a workaround for actually getting notified of changes in atk bugs, you yourself will now have to add atk-maint@gnome.bugs to your watchlist at the bottom of https://bugzilla.gnome.org/userprefs.cgi?tab=email to keep watching atk bug reports in GNOME Bugzilla. Sorry for the noise: Feel free to filter for this comment in order to mass-delete the triggered bugmail.]
IAccessible2::scrollToPoint sounds to me like it does the same thing as atk_component_set_position, so I'd say that we already have it. Am I missing something?
(In reply to comment #4) > IAccessible2::scrollToPoint sounds to me like it does the same thing as > atk_component_set_position, so I'd say that we already have it. Am I missing > something? Hmmmm.... Looking at both I think you're right. I wasn't familiar with that method in AtkComponent.
Created attachment 191758 [details] [review] Patch. Adds the functions discussed in this bug.
Review of attachment 191758 [details] [review]: ::: atk/atkcomponent.h @@ +111,3 @@ AtkLayer (* get_layer) (AtkComponent *component); gint (* get_mdi_zorder) (AtkComponent *component); + gdouble (* get_alpha) (AtkComponent *component); Good catch, get_alpha is not a signal handler. ::: atk/atktext.h @@ -278,3 @@ - - - AtkFunction pad4; Somewhat offtopic, but definitively I think that it would be good to remove AtkFunction. I don't see that function adding anything valuable ::: atk/atkutil.h @@ +235,3 @@ + ATK_SCROLL_TYPE_ANYWHERE +} AtkScrollType; + Not sure if AtkUtil is the proper place to add this definition. Shouldn't be placed on AtkComponent.h ? I know that it is also used on AtkText, but I think that it is more natural having it on AtkComponent.
(In reply to comment #7) > > Not sure if AtkUtil is the proper place to add this definition. Shouldn't be > placed on AtkComponent.h ? > > I know that it is also used on AtkText, but I think that it is more natural > having it on AtkComponent. I put it in atkutil because I thought it belonged with AtkCoordType. Also, I guess this will need to go into atk-3, since we don't have enough padding to add these functions to the interfaces.
(In reply to comment #8) > (In reply to comment #7) > > > > Not sure if AtkUtil is the proper place to add this definition. Shouldn't be > > placed on AtkComponent.h ? > > > > I know that it is also used on AtkText, but I think that it is more natural > > having it on AtkComponent. > > I put it in atkutil because I thought it belonged with AtkCoordType. Ok, it is true. So no problem placing that there. > Also, I guess this will need to go into atk-3, since we don't have enough > padding to add these functions to the interfaces. Yes I agree. I will set the proper milestone. In general the patch seems ok. The final test will be done once any ATK implementor start to implement it. Please commit it on the atk-3 branch. I guess that meanwhile this is not added to the master, the bug requires to be open. But we can track that with the milestone.
Okay; I've pushed the patch to atk-3, along with some additions to atk-sections.txt that I'd neglected.
Mike, what is the status of this? Do these now need to be added to AT-SPI2?
Yes, they still need to be added to AT-SPI2. I'd kind of forgotten about that bug. The atk patch is currently only in the "atk-3" branch, not in any released version of atk. I wonder if it would be worth creating at-spi3 branches or similar.
GNOME is going to shut down bugzilla.gnome.org in favor of gitlab.gnome.org. As part of that, we are mass-closing older open tickets in bugzilla.gnome.org which have not seen updates for a longer time (resources are unfortunately quite limited so not every ticket can get handled). If you can still reproduce the situation described in this ticket in a recent and supported software version of atk, then please follow https://wiki.gnome.org/GettingInTouch/BugReportingGuidelines and create a ticket at https://gitlab.gnome.org/GNOME/atk/-/issues/ Thank you for your understanding and your help.